What is the main objective of TESSY?
TESSY automates the unit/module/integration and component testing of embedded software. TESSY provides the input parameters, executes the tests and evaluates the results. In addition, TESSY manages the test data and documents the test results. Furthermore, TESSY measures the code coverage.
What is a unit for TESSY?
TESSY considers functions in the sense of the C programming language or methods in C++ as units to be tested.
What is a module for TESSY?
When it comes to terms for test objects, TESSY uses the term "module" and "unit" synonymously.
What is unit testing?
During unit testing, the unit under test is tested intensively in isolation from the rest of the application. Unit testing is also called module testing, and sometimes also component testing.
What is integration testing?
During integration testing, the test object consists of several (cooperating) units that are to be tested integrated. This is especially challenging if the units do not call each other, but communicate by common data. However, TESSY provides a comfortable solution for integration testing.
What is component testing?
TESSY uses the term "component" for test objects consisting of several cooperating units that are not in a calling hierarchy. Component testing means integration testing for the units inside the component.
Can TESSY be used for module testing according to IEC 61508 / DIN EN 50128 / ISO 13849?
Yes. If the programming language is C, a function in the sense of C can be considered as a module according to IEC 61508 / DIN EN 50128 / ISO 13849 and related standards. A certificate from TÜV SÜD is available that covers IEC 61508 and DIN EN 50128.
Can TESSY be used for unit testing according to ISO 26262?
Yes. If the programming language is C, a function in the sense of C can be considered as a unit according to ISO 26262, part 6, section 9. TESSY supports also integration testing according to ISO 26262, part 6, section 10. A certificate from TÜV SÜD is available that covers ISO 26262.
Can TESSY be used for unit testing according to IEC 62304?
Yes. TESSY can be used for software unit verification according to section 5.5 of IEC 62304. A certificate from TÜV SÜD is available that covers IEC 62304.
Can TESSY be used for testing according to DO-178?
Yes. TESSY is already used successfully in aerospace applications. A TESSY Tool Qualification Package (TQP) is available separately and includes a test suite and documents.
Can I have the complete testing done as a service?
Yes. Hitex provides testing by TESSY as a service. You can find details on this here.
What about code coverage by TESSY?
TESSY provides the following coverage measures for unit testing: Entry Point Coverage, Statement Coverage, Branch Coverage, Decision Coverage, Modified Condition/Decision Coverage (MC/DC) and Multiple Condition Coverage (MCC). A detailed description on code coverage can be found here. TESSY instruments the test application to get the coverage information.
In addition, TESSY provides Function Coverage and Call Pair Coverage for integration testing.
Can TESSY test state machines and filter functions?
Yes. State machines and filter functions are examples for functions maintaining an internal state. TESSY is well-suited to test such functions.
Can TESSY test RTOS applications?
Yes. TESSY can replace calls to the real-time operating system (RTOS) by stub functions.
Where does TESSY execute the tests?
TESSY can execute the tests on the host or on the actual target hardware. Normally, a debugger acts as interface to the execution environment.
Can TESSY be used without execution environment for a microcontroller?
Yes. TESSY can also run the tests completely on the host (Windows or Linux). In this case, the test application is compiled using the GNU tool set instead of a cross compiler.
Can TESSY be used with instruction-set simulators?
Yes. However, TESSY must be adapted to the debugger the simulator is integrated with.
What happens if a test case cannot be completed e.g. due to an infinite loop or due to a crash of the target system?
By default, TESSY will wait infinitely for the end of the test case. In this case, the test execution has to be stopped manually by the user. However, it is possible to set up a timeout. If the timeout expired and the test is not finished, TESSY stops the test execution.
Can TESSY export / import test data from other tools?
Yes. TESSY can import and export test data using various text file formats or from/to Microsoft Excel. This allows for using user supplied test data.
Can TESSY import requirements?
Yes. TESSY can import requirements in ReqIF format. TESSY can also export (annotated) requirements in ReqIF format. The annotations state e.g. the number of test cases for a requirement and if they are passed/failed.
Can test data be put under version control?
Yes.
TESSY can export (and import) the test data in a human-readable textual scripting language. Such a file can be put under version control and can be easily compared with other files representing the state of the test at other times.
TESSY can export (and import) the test data also in a binary file. Such a file is well-suited to transfer test data between different geographic locations.
Can TESSY be used for regression testing?
Yes, the so-called batch test feature can re-test either a selection of or all test cases of any test object fully automated. It is also possible to run automated tests from the operating system's command line, i.e. without interactive usage of TESSY. This is useful for running regression tests overnight and for integrating TESSY in Continuous Integration (CI) systems.
Which test report formats are available?
Since TESSY V3.2, the (human-readable) test report formats PDF, HTML and Word are available, as is the (machine-readable) report format XML.
What operating systems are supported?
TESSY runs on Windows and Linux