1. Scripting concept. Starting from version 2.5, StresStimulus UI is designed to closely reflect the internal Test Object Model (TOM). Nodes on the Test Case Tree and their properties correspond to the TOM's objects and their respective properties. For example, the Extractor node and its Text Before property on the property grid correspond to the Extractor object and Extractor.TextBefore property respectively.
v2.8 introduced scripting by exposing TOM as an XML script representation. The TOM's objects and their properties are mapped to the corresponding XML element and their respective attributes. The benefit of such design, besides consistency, is that test configuration settings in the UI closely reflect the test script. It makes it easier to learn StresStimulus scripting, because the UI actually becomes a “tutorial” to the “scripting language”. For example, the screenshots below shows how extractor properties in the UI are closely reflected in the script editor.
2. The Script Editor provides the following capabilities:
a) Launches from the navigation tree.
b) Expand / collapse XML nodes, line numbers.
c) Basic XML editing capabilities: Cut, Copy, Paste, Undo, Redo.
d) Find & Replace, Find Next, Find Previous.
e) Bookmark, Bookmark Next, Bookmark Previous.
Because the UI and script reflect the same TOM, the following rules are applied to maintain integrity:
- During the script editing, changes in the UI are not permitted to avoid conflicts.
- After saving and exiting the script editor, the changes are saved in the .ssconfig file and the modified TOM is reloaded to the UI.
Script Editor provides an alternative way of modifying tests. If you need to create, clone, move or edit test objects in bulk, then using “find and replace” in the script editor instead of the UI will save you time. You also can store test scripts in a version control system, so making and tracing test modifications is now much easier.
If you need a more feature-rich script editor, use any external XML editor to modify .ssconfig file (e.g XMLPad is a free XML editor, available here http://sourceforge.net/projects/xml-pad/ )
In the subsequent updates the following scripting enhancements will be added
- The script XSD schema
- Error diagnostics based on the script XSD schema
- Support for meaningful values in enumerator types, in addition to numeric values.
A quick reference to StresStimulus Script is provided in the Script Quick Reference post.
To navigate to other parts of the v2.8 release notes, click the links below: