![]() |
![]() |
![]() |
![]() |
![]() |
TTCN
TTCN (Tree and Tabular Combined Notation) is a special purpose notation to describe test suites [34]. TTCN is a language standardized by ISO for the specification of tests for communicating systems. TTCN has been developed within the framework of standardized conformance testing (ISO/IEC 9646).
With TTCN a test suite is specified. This is a collection of various test cases together with all the declarations and components it needs.
Each test case is described as an event tree. The tree is represented as an indented list in a table. The indentation represents progression with respect to time. See Example 644.
Example 644 : A TTCN test case
Behavior Description Constraint Verdict 1 DuToEnv? Display Enter_Card 2 EnvToDu! Card Card1 3 DuToEnv? Display Enter_Code 4 EnvToDu! Digit digit1 5 EnvToDu! Digit digit3 6 EnvToDu! Digit digit5 7 EnvToDu! Digit digit7 8 DuToEnv? Unlock nopar 9 EnvToDu! Open nopar 10 DuToEnv? Display Please_Enter 11 EnvToDu! Close nopar 12 DuToEnv? Lock nopar 13 DuToEnv? Display Enter_Card PASS 14 EnvToDu! Digit digit1 15 DuToEnv? Display WrongCode 16 DuToEnv? Display Enter_Card PASS
Each line consists of a line number, a statement, a constraint reference and a mandatory verdict. A statement can be:
The event statements are statements that can be successful dependent on the occurrence of a certain event, either:
The action statements will always execute and will therefore always be successful:
A qualifier is simply an expression that must be true if an event should match or an action should be performed.
In TTCN, the communication is asynchronous. The implementation under test, IUT, communicates with the environment via points of control and observation, PCOs. The interaction occurs at PCOs and are described by protocol data units, PDUs, embedded in abstract service primitives, ASPs.
At line 1 in s above, the ASP Display occurs at the PCO DuToEnv. The constraint Enter_Card determines exactly which ASP value is to be received.
http://www.ibm.com/rational |
![]() |
![]() |
![]() |
![]() |