COSTOTest is an extension of COSTO to the problem of testing models. Testing becomes necessary as soon as verification hardly cares with some features like state explosion in model checking. This extension is a practical answer to the problem of building and running test harnesses for Service-based Component Models.
The tool assists the tester:
- to select the services and components from the application model according to a test intention (a test goal with some data definitions and an oracle expression);
- to check the test assembly correctness and completeness, satisfying assembly constraints;
- to bind required services to mocks provided in test component libraries;
- to check the test harness consistency and completeness with its (eventually revisited) test intention;
- to generate a test component including the initialization sequence;
- to launch the test harness with several test data sets and to collect the results and errors.
When testing a component service, such as the following computespeed service (see this example details here) :
COSTOTest assists the tester in building a test harness as a component assembly:
COSTOTest provides assistance to bind mocks satisfying required services and providing test data, and to bind test driver launching the tests and producing the test verdicts based on a test oracles.