1 Scope
2 Normative references
2.1 Identical
Recommendations | International Standards
2.2 Paired
Recommendations | International Standards equivalent in technical
content
2.3 Additional references
3 Definitions
3.1 Basic terms from ITU-T Rec. X.290
3.2 Terms from ITU-T Rec. X.200
3.3 Terms from ITU-T Rec. X.210
3.4 Terms from ITU-T Rec. X.680
3.5 Terms from ITU-T Rec. X.690
3.6 TTCN
specific terms
4 Abbreviations
4.1 Abbreviations defined in ITU-T
Rec. X.290
4.2 Abbreviations defined in ITU-T
Rec. X.291
4.3 Other abbreviations
5 The syntax forms of TTCN
6 Compliance
7 Conventions
7.1 Introduction
7.2 Syntactic metanotation
7.3 TTCN.GR table proformas
7.3.1 Introduction
7.3.2 Single TTCN object tables
7.3.3 Multiple TTCN object tables
7.3.4 Alternative compact tables
7.3.5 Specification of proformas
7.4 Free Text and Bounded Free Text
8 Concurrency in TTCN
8.1 Test components
8.2 Test component configurations
9 TTCN test suite structure
9.1 Introduction
9.2 Test Group References
9.3 Test Step Group References
9.4 Default Group References
9.5 Parts of a TTCN test suite
10 Test Suite Overview
10.1 Introduction
10.2 Test Suite Index
10.3 Test Suite Structure
10.4 Test Case Index
10.5 Test Step Index
10.6 Default Index
10.7 Test Suite Exports
10.8 The Import Part
10.8.1 Introduction
10.8.2 Imports
11 Declarations part
11.1 Introduction
11.2 TTCN types
11.2.1 Introduction
11.2.2 Predefined TTCN types
11.2.3 Test Suite Type Definitions
11.3 TTCN operators and TTCN operations
11.3.1 Introduction
11.3.2 TTCN operators
11.3.3 Predefined operations
11.3.4 Test suite operation definitions and
descriptions
11.4 Test suite parameter declarations
11.5 Test case selection expression
definitions
11.6 Test Suite
Constant Declarations
11.7 Test Suite Constant Declarations
by Reference
11.8 TTCN variables
11.8.1 Test Suite Variable Declarations
11.8.2 Binding of Test Suite Variables
11.8.3 Test Case Variable Declarations
11.8.4 Binding of Test Case Variables
11.9 PCO Type Declaration
11.10 PCO declarations
11.11 CP declarations
11.12 Timer declarations
11.13 Test components and configuration
declarations
11.13.1 Test components
11.13.2 Test component configuration declarations
11.14 ASP type definitions
11.14.1 Introduction
11.14.2 ASP type definitions using tables
11.14.3 Use of structured types within ASP type
definitions
11.14.4 ASP type definitions using ASN.1
11.14.5 ASN.1 ASP type definitions by reference
11.15 PDU type definitions
11.15.1 Introduction
11.15.2 PDU type definitions using tables
11.15.3 Use of Structured Types within PDU
definitions
11.15.4 PDU type definitions using ASN.1
11.15.5 ASN.1 PDU type definitions by reference
11.16 Test Suite Encoding Information
11.16.1 Encoding Definitions
11.16.2 Encoding variations
11.16.3 Invalid field encoding definitions
11.16.4 Application of encoding rules
11.17 CM type definitions
11.17.1 Introduction
11.17.2 CM type definitions using tables
11.17.3 CM type definitions using ASN.1
11.18 String length specifications
11.19 ASP, PDU and CM definitions for
SEND events
11.20 ASP, PDU and CM definitions for
RECEIVE events
11.21 Alias definitions
11.21.1 Introduction
11.21.2 Expansion of aliases
12 Constraints part
12.1 Introduction
12.2 General principles
12.3 Parameterization of constraints
12.4 Chaining of constraints
12.5 Constraints for SEND events
12.6 Constraints for RECEIVE events
12.6.1 Matching values
12.6.2 Matching mechanisms
12.6.3 Specific value
12.6.4 Instead of Value
12.6.5 Inside Values
12.6.6 Attributes of values
13 Specification of constraints using tables
13.1 Introduction
13.2 Structured type constraint
Declarations
13.3 ASP constraint declarations
13.4 PDU Constraint Declarations
13.5 Parameterization of constraints
13.6 Base constraints and modified
constraints
13.7 Formal parameter lists in modified
constraints
13.8 CM constraint declarations
14 Specification of constraints using ASN.1
14.1 Introduction
14.2 ASN.1 type constraint declarations
14.3 ASN.1 ASP constraint declarations
14.4 ASN.1 PDU
constraint declarations
14.5 Parameterized
ASN.1 constraints
14.6 Modified ASN.1 constraints
14.7 Formal parameter lists in modified
ASN.1 constraints
14.8 ASP Parameter and PDU field names
within ASN.1 constraints
14.9 ASN.1 CM constraint declarations
15 The dynamic part
15.1 Introduction
15.2 Test Case dynamic behaviour
15.2.1 Specification of the Test Case Dynamic
Behaviour table
15.2.2 The Test Case Dynamic Behaviour proforma
15.2.3 Structure of the Test Case behaviour
15.2.4 Concurrent Test Case Behaviour description
15.2.5 Line numbering and continuation
15.3 Test Step dynamic behaviour
15.3.1 Specification of the Test Step Dynamic
Behaviour table
15.3.2 The Test Step Dynamic Behaviour proforma
15.4 Default dynamic behaviour
15.4.1 Default behaviour
15.4.2 Specification of the Default Dynamic Behaviour table
15.4.3 The Default Dynamic Behaviour proforma
15.5 The behaviour description
15.6 The tree notation
15.7 Tree names and parameter lists
15.7.1 Introduction
15.7.2 Trees with parameters
15.8 TTCN statements
15.9 TTCN test events
15.9.1 Sending and receiving events
15.9.2 Receiving events
15.9.3 Sending events
15.9.4 Lifetime of events
15.9.5 Execution of the behaviour tree
15.9.6 The IMPLICIT SEND event
15.9.7 The OTHERWISE event
15.9.8 OTHERWISE and concurrent TTCN
15.9.9 The TIMEOUT event
15.9.10 Concurrent TTCN events and constructs
15.10 TTCN expressions
15.10.1 Introduction
15.10.2 References for ASN.1 defined data objects
15.10.3 References for data objects defined using
tables
15.10.4 Assignments
15.10.5 Qualifiers
15.10.6 Event lines with assignments and qualifiers
15.11 Pseudo-events
15.12 Timer management
15.12.1 Introduction
15.12.2 The START operation
15.12.3 The CANCEL operation
15.12.4 The READTIMER operation
15.13 The ATTACH construct
15.13.1 Introduction
15.13.2 Scope of tree attachment
15.13.3 Tree attachment basics
15.13.4 The meaning of tree attachment
15.13.5 Passing parameterized constraints
15.13.6 Recursive tree attachment
15.13.7 Tree attachment and Defaults
15.14 Labels and the GOTO construct
15.15 The REPEAT construct
15.16 The Constraints Reference
15.16.1 Purpose of the Constraints Reference column
15.16.2 Passing parameters in Constraint References
15.16.3 Constraints and qualifiers and assignments
15.17 Verdicts
15.17.1 Introduction
15.17.2 Preliminary results
15.17.3 Final verdict
15.17.4 Verdicts and OTHERWISE
15.17.5 Verdict assignment in concurrent TTCN
15.18 The meaning of Defaults
15.18.1 Introduction
15.18.2 Default References
15.18.3 The RETURN statement
15.18.4 The ACTIVATE statement
15.18.5 Defaults and tree attachment
15.18.6 Tree Attachment, Defaults, Activate and
Return
15.18.7 Defaults and CREATE
15.18.8 Defaults and CMs
Annex A – Syntax and static semantics of TTCN
A.1 Introduction
A.2 Conventions for the syntax
description
A.2.1 Syntactic metanotation
A.2.2 TTCN.MP syntax definitions
A.3 The TTCN.MP syntax productions in
BNF
A.3.1 TTCN Specification
A.3.2 TTCN Module
A.3.3 Test suite
A.4 General static semantics
requirements
A.4.1 Introduction
A.4.2 Uniqueness of identifiers
A.5 Differences between TTCN.GR and
TTCN.MP
A.5.1 Differences in syntax
A.5.2 Additional static semantics in the TTCN.MP
A.6 List of BNF production number
Annex B – Operational semantics of TTCN
B.1 Introduction
B.2 Precedence
B.3 Processing of test case errors
B.4 Converting a modularized test
suite to an equivalent expanded test suite
B.5 TTCN operational semantics
B.5.1 Introduction
B.5.2 The pseudo-code notation
B.5.3 Execution of a Test Suite
B.5.4 Execution of a Test Case
B.5.5 Expanding a set of alternatives
B.5.6 Evaluation of an Event Line
B.5.7 Functions for TTCN events
B.5.8 Execution of the SEND event
B.5.9 ]Execution of the RECEIVE event
B.5.10 Execution of the OTHERWISE event
B.5.11 Execution of the TIMEOUT event
B.5.12 Execution of the DONE event
B.5.13 Execution of the IMPLICIT SEND event
B.5.14 Execution of a pseudo-event
B.5.15 Execution of BOOLEAN expressions
B.5.16 Execution of assignments
B.5.17 Execution of TIMER operations
B.5.18 Functions for TTCN constructs
B.5.19 Execution of the ACTIVATE construct
B.5.20 Execution of the CREATE construct
B.5.21 Execution of the GOTO construct
B.5.22 Execution of the RETURN construct
B.5.23 The verdict
B.5.24 The Conformance Log
B.5.25 Tree handling functions and procedures
B.5.26 Miscellaneous functions used by the
pseudo-code
Annex C – TTCN modules
C.1 Introduction
C.2 TTCN Module Overview Part
C.2.1 Introduction
C.2.2 TTCN Module Exports
C.2.3 TTCN Module Structure
C.2.4 Test Case Index
C.2.5 Test Step Index
C.2.6 Default Index
C.3 Import Part
C.3.1 Introduction
C.3.2 External
C.3.3 Import
Annex D – Test Suite Index
Annex E – Compact proformas
E.1 Introduction
E.2 Compact proformas for constraints
E.2.1 Requirements
E.2.2 Compact proformas for ASP constraints
E.2.3 Compact proformas for PDU constraints
E.2.4 Compact proformas for Structured Type
constraints
E.2.5 Compact proformas for ASN.1 constraints
E.3 Compact proforma for Test Cases
E.3.1 Requirements
E.3.2 Compact proforma for Test Case dynamic
behaviours
Annex F – Examples
F.1 Examples of tabular constraints
F.1.1 ASP and PDU definitions
F.1.2 ASP/PDU constraints
F.2 Examples of ASN.1 constraints
F.2.1 ASP and PDU definitions
F.2.2 ASN.1 ASP/PDU constraints
F.2.3 Further examples of ASN.1 constraints
F.3 Base and
modified constraints
F.4 Type definition using macros
F.5 Use of REPEAT
F.6 Test suite operations
F.7 Example of a Test Suite Overview
F.8 Example of a Test Case in TTCN.MP
Form
F.9 Use of
component reference for field value assignment in constraints
F.10 Multi-party testing
F.11 Multiplexing/Demultiplexing
F.12 Splitting and recombining
F.13 Multi-protocol test cases
F.14 Example
of modular TTCN
Annex G – Style guide
G.1 Introduction
G.2 Test case structure
G.3 Use of TTCN with different
abstract test methods
G.3.1 Introduction
G.3.2 TTCN and the LS test method
G.3.3 TTCN and the DS test method
G.3.4 TTCN and the CS test method
G.3.5 TTCN and the RS test method
G.4 Use of defaults
G.5 Limiting the execution time of a
Test Case
G.6 Structured types
G.7 Abbreviations
G.8 Test descriptions
G.9 Assignments on SEND events
G.10 Multi-service PCOs
Annex H – Index
H.1 Introduction
H.2 The index