Ivannikov Institute for System Programming of the RAS


OTK (Optimizer Testing Kit) is an automated test development tool for software using complex data structures. Its primary domain is testing of compilers and other formal test processing systems. The main advantage of OTK is an ability to construct various input data for testing.

OTK implements UniTESK technology of automated specification based testing. In the context of UniTESK, OTK tool supports the specialized technology of structurally complex data generation.

OTK helps to develop custom test data generators, which further produce tests automatically. Such a generator consists of manually developed parts and auxiliary components from libraries, coming with the tool.

Manually developed components are the following:
• Description of data model for input data of the system under test;
• Mappers performing transformation of model representation of tests into the specific input data;
• Iterators providing sequences of model test data constructed from model blocks in different combinations.

The tool is supplied with the following library components:
• Support of the modeling language;
• Standard iterators and compositional iterators;
• Base mapping libraries.

OTK may be used for testing both new software and legacy systems. The components of the test system could be developed independently, thus allowing distribution of test development. The tool forces extensive reuse of test components, thus making testing of product line software much less expensive.


Software Engineering

Back to the list of technologies of ISP RAS