Testing / TOSCA Engines
TOSCA Base Engine is used for executing automated TestCases.
In TOSCA Commander, the test cases are managed as business-based. The TOSCA Base Engine receives business-based test case information and activates the steering of the test target. The actual steering is performed by the corresponding engines.
Each TestCase execution requires 3 types of mandatory information.
- Business-based information regarding the content of the TestCase and the test data.
- Definition information about the logical control type used for steering a particular screen element.
- The current technical values of the screen element to be steered, such as table content, field positions, etc.
Keywords are the VB scripts that allows individual steering requirements to be conveniently integrated into an engine. Some of the keywords enable the steering of UI screens as well. These keyword VB script files are executed by the engine upon test execution.
Keywords are used in the Modules section in TOSCA Commander.
TOSCA Base Engine contains all the basic objects for processing automated test cases.
- Engine.dll is a COM.dll that encapsulates the required classes. The Engine.dll file uses a set of basic objects (e.g. Services.dll, etc.).
- Executor.exe is an executable file which is started for test execution and it uses Engine.dll.
- ToscaWizard.exe is an executable file, which starts TOSCA Wizard for scanning definition data.
TOSCA Commander facilitates any objects to be searched by using two different search functionalities.
- Simple Search.
- and TQL (TOSCA Query Language) Search.
TQL search queries enables searching all the objects, its relations and properties within a project. This enables searching for all TestCases that are not assigned to any ExecutionLists.
The TOSCA Query Language (TQL) is a formal language, the search queries have to be built with a formal convention so that the system can understand it and execute.
The TQL structure consists of non-terminals and terminals.
Non-terminals are expressions that can be replaced by other expressions (non-terminals or terminals). Non-terminals in TQL always begin with a lower case letter.
Terminals represent atomic elements and cannot be replaced by other expressions. Terminals are either a special character (e.g.: "]" , ")", ":" ) or begin with an upper case letter.
| | logical OR ( Example: b | c either b or c) |
[...] | Square brackets represent an option. |
(...) | Parentheses are used to group expressions. The content must be used exactly once. |
{...} | Curly brackets represent an iteration. |
'...' | Marks a text which must be taken word-by-word (terminals). |
The starting point of a TQL search has an effect on the search to be carried out. A search, which is performed on a project root element produces different results from one based on the topmost Module folder.
Each query starts with the arrowOperator => or ->. The double arrow => represents that the operation is recursive whereas single arrow -> indicates a simple operation.
The expression ->SUBPARTS returns the subelements as result, whereas =>SUBPARTS includes the subelements of the subelements as well as.
SUBPARTS searches for all child elements in TOSCA whereas SUPERPARTS searches for parent elements instead.
The TQL search has three components,
- arrowOperator (=> or ->)
- returnToken, (colon followed by object type. )
- and search expression.
query: = {arrowOperator [returnToken] searchExpression}
TOSCA uses special characters for certain functions. Special characters used as values require a backslash as an escape character (for example [Name == "Link\\2"] if the name is Link\2).
No. JavaFx is not supported.However JavaFX embedded in Swing component is supported.
The Tosca TBox framework is the basis for steering XEngines and enables all XEngines to be uniquely steered. This is applicable to both GUI and non-GUI.
XEngines are represented in Tosca Commander using XDefinitions which enables test objects to be hierarchically structured. Tree-like structured test objects can thus be mapped.
- Tosca XScan.
- Tosca XML Engine.
- Tosca XBrowser Engine.
- Tosca Webservice, JSON Engine.
- and Tosca Mobile+ Engine.
Test objects are steered in two steps.
- object access.
- object steering.