TyphoonTest IDE Structure

This section describes Structure available in the TyphoonTest IDE

The Structure is panel available in TyphoonTest IDE which provides list of pytest functions and fixtures from the file currently open in the editor. Structure groups test functions and fixtures into separate tree elements, and shows theirs names and descriptions. Structure also provides CRUD (Create, update, delete) operations, user can create new, update or delete displayed test/fixture.
Note: In order to display tests and fixtures in Structure Panel, an open file in the editor must respect pytest convention and it must be formatted according to these rules.
The Structure panel is divided in 3 main parts:
  1. Search section: Here user can filter the currently listed tests cases and fixtures.
  2. CRUD operations: This part is used to create edit or delete test or fixture. When adding a new test, the test will be added to the current cursor position in the editor, and when editing and deleting user must select the test he wants to edit or delete.
    1. Add test button - clicking this button opens a dialog to populate the test data.
    2. Add fixture button - clicking this button opens a dialog to populate the fixture data.
    3. Edit button - when you click on this button, the dialog opens and is filled with the data of the previously selected test/fixture.
    4. Delete button - when you click on this button, the previously selected test will be deleted.
  3. Test/Fixture list: Contains 2 groups (Test cases, Fixtures) that list all Test cases and fixtures from the file currently open in the editor.
Figure 1. Structure Panel
Test dialog contains 5 sections:
  1. Name - Test name.
  2. Fixtures - fixtures this test function depends on
  3. Parametrization - in this section you can manipulate parametrization (add new, edit or delete current). By clicking on New python param button new dialog will be open in which parameters can be entered as a python expression, and by clicking on New table param button a dialog will also be opened where parameters can be entered but shown in the table.
  4. Marks - marks of the test.
  5. Description - description of test case (will be added to docstring).
Figure 2. Test dialog
Fixture dialog contains 5 section:
  1. Name - Fixture name.
  2. Scope - scope of the fixture (function, module, package, session)
  3. Fixtures - fixtures this fuxture function depends on
  4. Parametrization - in this section you can manipulate parametrization (add new, edit or delete current). By clicking on New python param button new dialog will be open in which parameters can be entered as a python expression, and by clicking on New table param button a dialog will also be opened where parameters can be entered but shown in the table.
  5. Description - description of fixture (will be added to docstring).
Figure 3. Fixture dialog
Python param dialog contains 2 section:
  1. Parameters - Name of parameters use comma for multiple entries.
  2. Python expression - Value of parameters (enter like python expression).
Figure 4. Python param dialog
Table param dialog contains 2 section:
  1. Add or Delete row or column - by clicking on those buttons you can add or remove previously selected.
  2. Table of parameters - parameter values displayed in table, you can edit values by clicking on cell.
    Note: User can change parameter name by double clicking on table header.

Figure 5. Table params dialog