Functionality Overview
The TTCN Exerciser provides several features that may come in handy for test development, execution and also adaptor production. The main features of the TTCN Exerciser are as follows:
- Simulated PCO communication
- Allows for a PCO not to be connected to an IUT. A message can be input in a PCO input queue at any time.
- Discrete time simulation
- Test the tester with user-defined timing. An explicit "timeout" command is available to allow for the next pending timer to expire at will. This mechanism has a timer resolution down to individual nanoseconds.
- Realtime simulation
- This mode uses real time as provided by the system clock of the host where the tester is executed. Practical limitations to the time resolution yields an accuracy of approximately 1 millisecond. The theoretical limit of the kernel is 1 nanosecond.
- TTCN test case validation
- Runs "random walks" of test cases in order to detect paths where no verdict is assigned, or where some input causes a deadlock, as well as several other dynamic error conditions. This can be very useful for getting a degree confidence in the correctness and completeness of the test suites.
- Custom PCO definition
- Provides the ability to define custom PCOs for connection to real IUTs while still having access to all the TTCN Exerciser features.
- Source-level debugging of TTCN
- This includes setting breakpoints, highlighting lines in the TTCN Table Editor as it is running, and more.
- Concurrent TTCN implementation
- The kernel internally implements concurrent TTCN, meaning that there is no extra effort in running concurrent test cases.
- Dynamic MSC generation with the MSC generator
- For more information, see The TTCN to C Compiler (in Windows) and The TTCN to C Compiler (on UNIX).
- Command scripting and logging
- Providing repeatability of simulated scenarios, as well as shortcuts for doing common operations.
- Dynamic error detection
- The TTCN Exerciser helps detect a number of dynamic error conditions that a static syntax and semantics analyzer will not detect.