Skip to content

System Object Browser

itaiag edited this page Aug 9, 2016 · 1 revision

System Object Browser

The purpose of the System Object browser feature is to allow the JRunner user (not a Java programmer) to implement scenarios without having to write JSystem tests.

Using Java introspection the System Object browser generates tests that expose System Object functionality, once the tests are generated, the user can select these tests and compose a scenario from these tests.

When working with the System Object browser it is assumed that system objects that define the model of the SUT are written correctly and work well.

  1. Press on the "System Object Browser" button.

  1. The system object browser dialog will open with a list of all the system objects which are defined in the current SUT.

  1. Select the system object for the JRunner test generation from the drop down menu.

Once the system object is selected, the JRunner starts the introspection process.

During the process a progress dialog appears.

  1. Once the process is complete, a new "autogen" package appears, under it, are sub packages with system object name.

The system object browser generates a test method for each public method the system object exposes.

  1. Now select the tests and build the scenario.

System Object Browser Generated Code

In many cases once the code has been generated, manual changes need to be made to the code, in addition the system object might change and the auto-generation might be re-activated. In order to avoid conflicts between auto generated code and manually written code, the System Object Browser module generated two classes for each system object:

  1. Abstract base class that includes all the tests and class members.

Note: The documentation from the system object is imported to the test class. This class should not be altered by the user manually.

  1. Concrete class that extends the base class. By default the concrete class is empty. Manual changes that need to be made should be directly made on this class.

  2. When the system object is changed by the developer and the classes are regenerated, only the base class is overridden, by the JRunner, the extending class is not altered.

Clone this wiki locally