|
ETSI Standard
Methods for Testing and Specification (MTS);
The Testing and Test Control Notation version 3;
Part 1: TTCN-3 Core Language
---------------------- Page: 1 ----------------------
2 ETSI ES 201 873-1 V4.1.1 (2009-06)
Reference
RES/MTS-00107-1 T3 ed411 core
Keywords
ASN.1, methodology, MTS, testing, TTCN
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE
Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88
Important notice
Individual copies of the present document can be downloaded from:
http://www.etsi.org
The present document may be made available in more than one electronic version or in print. In any case of existing or
perceived difference in contents between such versions, the reference version is the Portable Document Format (PDF).
In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive
within ETSI Secretariat.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
http://portal.etsi.org/tb/status/status.asp
If you find errors in the present document, please send your comment to one of the following services:
http://portal.etsi.org/chaircor/ETSI_support.asp
Copyright Notification
No part may be reproduced except as authorized by written permission.
The copyright and the foregoing restriction extend to reproduction in all media.
© European Telecommunications Standards Institute 2009.
All rights reserved.
TM TM TM TM
DECT , PLUGTESTS , UMTS , TIPHON , the TIPHON logo and the ETSI logo are Trade Marks of ETSI registered
for the benefit of its Members.
TM
3GPP is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners.
LTE™ is a Trade Mark of ETSI currently being registered
for the benefit of its Members and of the 3GPP Organizational Partners.
GSM and the GSM logo are Trade Marks registered and owned by the GSM Association.
ETSI
---------------------- Page: 2 ----------------------
3 ETSI ES 201 873-1 V4.1.1 (2009-06)
Contents
Intellectual Property Rights.11
Foreword.11
1 Scope.12
2 References.12
2.1 Normative references.12
2.2 Informative references.13
3 Definitions and abbreviations.13
3.1 Definitions.13
3.2 Abbreviations.17
4 Introduction .17
4.1 The core language and presentation formats .18
4.2 Unanimity of the specification .19
4.3 Conformance .19
5 Basic language elements .19
5.1 Identifiers and keywords .20
5.2 Scope rules.20
5.2.1 Scope of formal parameters .22
5.2.2 Uniqueness of identifiers .23
5.3 Ordering of language elements.24
5.4 Parameterization.24
5.4.1 Formal parameters.24
5.4.1.1 Formal parameters of kind value.25
5.4.1.2 Formal parameters of kind template.26
5.4.1.3 Formal parameters of kind timer.28
5.4.1.4 Formal parameters of kind port.28
5.4.2 Actual parameters.29
5.5 Cyclic Definitions.31
6 Types and values .32
6.1 Basic types and values.33
6.1.0 Simple basic types and values.33
6.1.1 Basic string types and values .34
6.1.1.1 Accessing individual string elements.35
6.1.2 Sub-typing of basic types.36
6.1.2.1 Lists of values.36
6.1.2.2 Lists of types .36
6.1.2.3 Ranges.36
6.1.2.3.1 Infinite ranges.37
6.1.2.4 String length restrictions .37
6.1.2.5 Pattern sub-typing of character string types .37
6.1.2.6 Mixing sub-typing mechanisms .38
6.1.2.6.1 Mixing patterns, lists and ranges .38
6.1.2.6.2 Using length restriction with other constraints .38
6.2 Structured types and values.39
6.2.1 Record type and values .40
6.2.1.1 Referencing fields of a record type .41
6.2.1.2 Optional elements in a record.41
6.2.1.3 Nested type definitions for field types .41
6.2.2 Set type and values .42
6.2.2.1 Referencing fields of a set type.42
6.2.2.2 Optional elements in a set .42
6.2.2.3 Nested type definition for field types.42
6.2.3 Records and sets of single types .42
6.2.3.1 Nested type definitions.44
ETSI
---------------------- Page: 3 ----------------------
4 ETSI ES 201 873-1 V4.1.1 (2009-06)
6.2.3.2 Referencing elements of record of and set of types .44
6.2.4 Enumerated type and values .45
6.2.5 Unions.46
6.2.5.1 Referencing fields of a union type .46
6.2.5.2 Option and union.47
6.2.5.3 Nested type definition for field types.47
6.2.6 The anytype.47
6.2.7 Arrays.47
6.2.8 The default type .49
6.2.9 Communication port types.49
6.2.10 Component types.50
6.2.10.1 Component type definition.50
6.2.10.2 Reuse of component types .51
6.2.11 Component references.53
6.2.12 Addressing entities inside the SUT.55
6.3 Type compatibility .56
6.3.1 Type compatibility of non-structured types .56
6.3.2 Type compatibility of structured types .57
6.3.2.1 Type compatibility of enumerated types .57
6.3.2.2 Type compatibility of record and record of types .57
6.3.2.3 Type compatibility of set and set of types.59
6.3.2.4 Type compatibility of union types .59
6.3.2.5 Type compatibility of anytype types.59
6.3.2.6 Compatibility between sub-structures.60
6.3.3 Type compatibility of component types.60
6.3.4 Type compatibility of communication operations .61
6.3.5 Type conversion.61
6.4 Type synonym.61
7 Expressions.61
7.1 Operators.62
7.1.1 Arithmetic operators.63
7.1.2 List operator.64
7.1.3 Relational operators.64
7.1.4 Logical operators.66
7.1.5 Bitwise operators.66
7.1.6 Shift operators.67
7.1.7 Rotate operators.67
7.2 Field references and list elements.68
8 Modules.68
8.1 Definition of a module .68
8.2 Module definitions part .69
8.2.1 Module parameters.70
8.2.2 Groups of definitions .71
8.2.3 Importing from modules .72
8.2.3.1 General format of import .72
8.2.3.2 Importing single definitions.77
8.2.3.3 Importing groups.78
8.2.3.4 Importing definitions of the same kind .78
8.2.3.5 Importing all definitions of a module.79
8.2.3.6 Import definitions from other TTCN-3 editions and from non-TTCN-3 modules.80
8.2.4 Definition of friend modules.81
8.2.5 Visibility of definitions.82
8.3 Module control part.83
9 Port types, component types and test configurations .83
9.1 Communication ports.84
9.2 Test system interface .86
10 Declaring constants .88
10.1 Void.88
11 Declaring variables.88
ETSI
---------------------- Page: 4 ----------------------
5 ETSI ES 201 873-1 V4.1.1 (2009-06)
11.1 Value variables.89
11.2 Template variables.89
12 Declaring timers.90
13 Declaring messages.91
14 Declaring procedure signatures.92
15 Declaring templates.93
15.1 Declaring message templates.93
15.2 Declaring signature templates .94
15.3 Global and local templates .96
15.4 In-line Templates.97
15.5 Modified templates.98
15.6 Referencing elements of templates or template fields.100
15.6.1 Referencing individual string elements.100
15.6.2 Referencing record and set fields.100
15.6.3 Referencing record of and set of elements .101
15.7 Template matching mechanisms .103
15.7.1 Specific values.104
15.7.2 Special symbols that can be used instead of values .104
15.7.3 Special symbols that can be used inside values .105
15.7.4 Special symbols which describe attributes of values .105
15.8 Template Restrictions.106
15.9 Match Operation.108
15.10 Valueof Operation.109
16 Functions, altsteps and testcases .109
16.1 Functions.109
16.1.1 Invoking functions .111
16.1.2 Predefined functions.112
16.1.3 External functions.114
16.1.4 Invoking functions from specific places .114
16.2 Altsteps.115
16.2.1 Invoking altsteps.116
16.3 Test cases.118
17 Void.119
18 Overview of program statements and operations .119
19 Basic program statements.121
19.1 Assignments.122
19.2 The If-else statement .122
19.3 The Select case statement.123
19.4 The For statement.124
19.5 The While statement.124
19.6 The Do-while statement .125
19.7 The Label statement .125
19.8 The Goto statement .126
19.9 The Stop execution statement.127
19.10 The Return statement.127
19.11 The Log statement.128
19.12 The Break statement.130
19.13 The Continue statement.130
19.14 Statement block.131
20 Statement and operations for alternative behaviours.131
20.1 The snapshot mechanism.132
20.2 The Alt statement .132
20.3 The Repeat statement .136
20.4 The Interleave statement .137
20.5 Default Handling .138
20.5.1 The default mechanism.139
ETSI
---------------------- Page: 5 ----------------------
6 ETSI ES 201 873-1 V4.1.1 (2009-06)
20.5.2 The Activate operation.139
20.5.3 The Deactivate operation.140
21 Configuration Operations.141
21.1 Connection Operations.142
21.1.1 The Connect and Map operations .142
21.1.2 The
...