Our products are based on test generator which supports UniTESK concept of specification-based testing. Testing consists in modeling the system behavior conforming to its requirements. Automated built test are then used to compare the functionality of system implementation against the requirements specifications.

 Requirements specifications are developed using the specification extension of programming language of the implementation under test. The extension is used to describe the model, its relationship with the implementation, and test scenarios. Components, needed to check the functionality of the implementation against the requirements and to build test action sequence, are generated automatically from the description. Mathematical algorithms of building test sequences, implemented in the test engine, ensure that generated test sequences check system behavior in various reachable states and provide the required test coverage.

 Specification extension of any language is developed to be maximally comprehensible by developers who use the corresponding programming language.

 We have developed specifications extensions of C and Java programming languages. CTesK - support tool for C language. JavaTESK - support tool for Java language. Also we have tools OTK - for automated testing of software systems with complex data structures, and SynTESK - for testing parsers of formal languages.

The main features of UniTESK products are:

  • automated test generation;
  • improvement of test suites quality;
  • automated derivation of functional requirements coverage criteria;
  • automated regression testing;
  • reusable components of test suites;
  • automated test execution and test and coverage reporting.
Copyright © 2014 Institute for System Programming of the Russian Academy of Sciences