Bloggo back to the blog
Update your Tests with the Next Generation-->
Automated test execution tools can be highly useful, but on the other hand, maintaining a huge set of intricate test automation scripts for each new version of the test object can easily turn into a nightmare. A popular approach to solve this problem is model-based test generation (MBT).
The basic idea of MBT is to create a model of the system under test from which a generator can produce test cases automatically. When the test object changes only a few parts of the model have to be adapted before all tests are updated automatically. Using this method, the test maintenance effort can be reduced significantly.
However, many testers that are considering to apply MBT are discouraged by a number of issues:
• Testers need to learn the usage of a complex modelling tool and language.
• Reusing a UML model created for code generation seems to make little sense – if the code and the tests are generated from the same model, no deviations will be found!
• Creating a separate test model requires considerable effort, especially when the necessary information is hard to come by.
• Most generators only produce abstract keywords, so it is still necessary to implement a test script for each keyword by hand.
After researching this topic for 15 years we came up with a solution that we consider to be the “next generation of MBT tools”. Our approach is called IDATG (Integrating Design and Automated Test case Generation) and has been implemented in the Atos tool TEMPPO Designer.
The tool features a built-in model editor that provides an independent way of creating test models. It uses a specific notation that only focuses on the necessities of testing and is simple to learn. Creating an IDATG model still requires some effort, but even during the model’s creation many inconsistencies and omissions in the design documents are detected at an early stage, thus avoiding problems later in the project.
• Test data can be imported from external sources or generated with systematic methods such as equivalence partitioning or an improved version of cause/effect analysis called CECIL.
• Test sequences are represented as task flow diagrams that consist of simple test steps (blue) and parametrizable building blocks (yellow) that represent reusable sub-sequences of steps. Each simple step may include a test instruction, a reference to the test data, semantic pre-conditions and the expected result. For GUI testing, steps can be assigned to GUI objects using the built-in GUI Spy.
A major drawback of many test generators is that they only produce abstract test cases that still require manual completion. A distinguishing feature of TEMPPO Designer is that its output are complete, executable scripts for a variety of popular test execution tools including HP QuickTest Professional® and Micro Focus TestPartner®. However, the tool can also be used for producing test cases that are executed manually or over a non-GUI interface.
This direct integration between test generation and execution has proven to be a considerable advantage in that it delivers a significant reduction in test maintenance costs; i.e., instead of having to update each single test script for every new version of the system under test, it usually suffices to change a few building blocks inside TEMPPO Designer and let it generate new test cases.
A case study from a project at the European Space Agency has shown that the additional effort for introducing model-based test automation with TEMPPO Designer paid off after only four test repetitions. (The full story can be found in Dorothy Graham’s exciting new book “Experiences of Test Automation”: http://www.dorothygraham.co.uk/).
To facilitate test management, TEMPPO Designer is closely integrated with TEMPPO Test Manager. The homepage of the TEMPPO tool suite is currently being converted to the new Atos design. Until completion, the old homepage is still at your service:
If you want to know more about MBT or are interested in a complimentary tool evaluation, feel free to contact me at [email protected]