SIST ES 201 873-1 V4.10.1:2019
(Main)Methods for Testing and Specification (MTS) - The Testing and Test Control Notation version 3 - Part 1: TTCN-3 Core Language
Methods for Testing and Specification (MTS) - The Testing and Test Control Notation version 3 - Part 1: TTCN-3 Core Language
RES/MTS-201873-1v4A1
Metode za preskušanje in specificiranje (MTS) - 3. različica zapisa preskušanja in krmiljenja preskusov - 1. del: Jedrni jezik TTCN-3
Ta del standarda IEC 60794 predstavlja podrobne zahteve za ta tip kablov za zagotovitev skladnosti z vrsto mednarodnih standardov ISO/IEC 11801, Informacijska tehnologija – Splošni kabli v prostorih strank (deli od 1 do 6).
Za kable, ki jih zajema ta dokument, se uporabljajo zahteve skupinske specifikacije IEC 60794-2-20.
Posebne zahteve, podrobno opredeljene v točki 4, določajo bodisi posebno možnost v zvezi z zahtevami iz standarda IEC 60794-2-20 bodisi dodatne zahteve.
General Information
Standards Content (Sample)
Final draft ETSI ES 201 873-1 V4.10.1 (2018-03)
ETSI STANDARD
Methods for Testing and Specification (MTS);
The Testing and Test Control Notation version 3;
Part 1: TTCN-3 Core Language
2 Final draft ETSI ES 201 873-1 V4.10.1 (2018-03)
Reference
RES/MTS-201873-1v4A1
Keywords
language, methodology, testing, TTCN-3
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
The present document can be downloaded from:
http://www.etsi.org/standards-search
The present document may be made available in electronic versions and/or in print. The content of any electronic and/or
print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any
existing or perceived difference in contents between such versions and/or in print, the only prevailing document is the
print of the Portable Document Format (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
https://portal.etsi.org/TB/ETSIDeliverableStatus.aspx
If you find errors in the present document, please send your comment to one of the following services:
https://portal.etsi.org/People/CommiteeSupportStaff.aspx
Copyright Notification
No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying
and microfilm except as authorized by written permission of ETSI.
The content of the PDF version shall not be modified without the written authorization of ETSI.
The copyright and the foregoing restriction extend to reproduction in all media.
© ETSI 2018.
All rights reserved.
TM TM TM
DECT , PLUGTESTS , UMTS and the ETSI logo are trademarks of ETSI registered for the benefit of its Members.
TM TM
3GPP and LTE are trademarks of ETSI registered for the benefit of its Members and
of the 3GPP Organizational Partners.
oneM2M logo is protected for the benefit of its Members. ®
GSM and the GSM logo are trademarks registered and owned by the GSM Association.
ETSI
3 Final draft ETSI ES 201 873-1 V4.10.1 (2018-03)
Contents
Intellectual Property Rights . 13
Foreword . 13
Modal verbs terminology . 13
1 Scope . 14
2 References . 14
2.1 Normative references . 14
2.2 Informative references . 15
3 Definitions and abbreviations . 16
3.1 Definitions . 16
3.2 Abbreviations . 21
4 Introduction . 22
4.0 General . 22
4.1 The core language and presentation formats . 23
4.2 Unanimity of the specification . 24
4.3 Conformance . 24
5 Basic language elements . 24
5.0 General . 24
5.1 Identifiers and keywords . 25
5.2 Scope rules . 26
5.2.0 General . 26
5.2.1 Scope of formal parameters . 28
5.2.2 Uniqueness of identifiers . 28
5.3 Ordering of language elements . 29
5.4 Parameterization . 29
5.4.0 General . 29
5.4.1 Formal parameters . 30
5.4.1.0 General . 30
5.4.1.1 Formal parameters of kind value . 30
5.4.1.2 Formal parameters of kind template . 33
5.4.2 Actual parameters . 35
5.5 Cyclic Definitions. 40
6 Types and values . 41
6.0 General . 41
6.1 Basic types and values . 42
6.1.0 Simple basic types and values. 42
6.1.1 Basic string types and values . 43
6.1.1.0 General . 43
6.1.1.1 Accessing individual string elements . 45
6.1.2 Subtyping of basic types . 46
6.1.2.0 General . 46
6.1.2.1 Lists of templates . 46
6.1.2.2 Lists of types . 46
6.1.2.3 Ranges . 47
6.1.2.4 String length restrictions . 47
6.1.2.5 Pattern subtyping of character string types . 48
6.1.2.6 Mixing subtyping mechanisms . 48
6.1.2.6.1 Mixing patterns, lists and ranges . 48
6.1.2.6.2 Using length restriction with other constraints . 49
6.2 Structured types and values . 49
6.2.0 General . 49
6.2.1 Record type and values . 51
6.2.1.0 General . 51
6.2.1.1 Referencing fields of a record type . 53
ETSI
4 Final draft ETSI ES 201 873-1 V4.10.1 (2018-03)
6.2.1.2 Optional elements in a record. 55
6.2.1.3 Nested type definitions for field types . 55
6.2.2 Set type and values . 55
6.2.2.0 General . 55
6.2.2.1 Referencing fields of a set type . 56
6.2.2.2 Optional elements in a set . 56
6.2.2.3 Nested type definition for field types . 56
6.2.3 Records and sets of single types . 56
6.2.3.0 General . 56
6.2.3.1 Nested type definitions . 59
6.2.3.2 Referencing elements of record of and set of types . 59
6.2.4 Enumerated type and values . 60
6.2.5 Unions . 61
6.2.5.0 General . 61
6.2.5.1 Referencing fields of a union type . 63
6.2.5.2 Option and union . 64
6.2.5.3 Nested type definition for field types . 64
6.2.6 The anytype . 64
6.2.7 Arrays . 65
6.2.8 The default type . 66
6.2.9 Communication port types . 67
6.2.10 Component types . 69
6.2.10.1 Component type definition . 69
6.2.10.2 Reuse of component types . 70
6.2.11 Component references . 72
6.2.12 Addressing entities inside the SUT . 74
6.2.13 Subtyping of structured types . 76
6.2.13.0 General . 76
6.2.13.1 Length subtyping of record ofs and set ofs . 76
6.2.13.2 List subtyping of structured types and anytype . 77
6.2.13.3 Subtyping of the iterated type of record ofs and set ofs . 79
6.2.13.4 Mixing subtyping mechanisms . 81
6.2.14 The timer type . 81
6.3 Type compatibility . 81
6.3.0 General . 81
6.3.1 Compatibility of non-structured types . 81
6.3.2 Compatibility of structured types . 83
6.3.2.0 General . 83
6.3.2.1 Compatibility of enumerated types . 83
6.3.2.2 Compatibility of record and record of types . 83
6.3.2.3 Compatibility of set and set of types . 85
6.3.2.4 Compatibility of union types . 85
6.3.2.5 Compatibility of anytype types . 86
6.3.2.6 Compatibility between sub-structures . 87
6.3.3 Compatibility of component types . 87
6.3.4 Type compatibility of communication and connection operations . 88
6.3.5 Type conversion . 88
6.3.6 Type compatibility of port types . 89
6.3.7 Type compatibility of timer types . 89
6.4 Type synonym . 89
7 Expressions . 89
7.0 General . 89
7.1 Operators . 90
7.1.0 General . 90
7.1.1 Arithmetic operators . 91
7.1.2 List operator . 92
7.1.3 Relational operators . 92
7.1.4 Logical operators . 95
7.1.5 Bitwise operators . 95
7.1.6 Shift operators . 96
7.1.7 Rotate operators . 97
ETSI
5 Final draft ETSI ES 201 873-1 V4.10.1 (2018-03)
7.2 Field references and list ele me nts . 98
7.3 Decoded field reference . 98
8 Modules . 99
8.0 General . 99
8.1 Definition of a module . 99
8.2 Module definitions part . 100
8.2.0 General . 100
8.2.1 Module parameters . 101
8.2.2 Groups of definitions . 102
8.2.3 Importing from modules . 103
8.2.3.0 General . 103
8.2.3.1 General format of import . 103
8.2.3.2 Importing single definitions . 110
8.2.3.3 Importing groups . 111
8.2.3.4 Importing definitions of the same kind . 112
8.2.3.5 Importing all definitions of a module . 113
8.2.3.6 Import definitions from other TTCN-3 editions and from non-TTCN-3 modules . 113
8.2.3.7 Importing of import statements from TTCN-3 modules . 115
8.2.3.8 Compatibility of language specifications in imports . 116
8.2.4 Definition of friend modules . 117
8.2.5 Visibility of definitions . 117
8.3 Module control part . 119
9 Port types, component types and test configurations . 119
9.0 General . 119
9.1 Communication ports . 120
9.2 Test system interface . 122
10 Declaring constants . 124
11 Declaring variables . 124
11.0 General . 124
11.1 Value variables . 125
11.2 Template variables . 126
12 Declaring timers . 127
13 Declaring messages . 128
14 Declaring procedure signatures . 129
15 Declaring templates . 130
15.0 General . 130
15.1 Declaring message templates . 131
15.2 Declaring signature templates . 132
15.3 Global and local templates . 134
15.4 In-line Templates . 135
15.5 Modified templates . 136
15.6 Referencing elements of templates or template fields . 139
15.6.0 General . 139
15.6.1 Referencing individual string elements. 139
15.6.2 Referencing record and set fields . 140
15.6.3 Referencing record of and set of elements . 141
15.6.4 Referencing signature parameters . 144
15.6.5 Referencing union alternatives . 145
15.7 Template matching mechanisms . 146
15.7.0 General . 146
15.7.1 Specific values . 147
15.7.2 Special symbols that can be used instead of values . 148
15.7.3 Special symbols that can be used inside values . 149
15.7.4 Special symbols which describe attributes of values . 149
15.8 Template Restrictions . 150
15.9 Match Operation . 152
ETSI
6 Final draft ETSI ES 201 873-1 V4.10.1 (2018-03)
15.10 Valueof Operation . 154
15.11 Concatenating templates of string and list types . 154
16 Functions, altsteps and testcases . 157
16.0 General . 157
16.1 Functions . 157
16.1.0 General . 157
16.1.1 Invoking functions . 160
16.1.2 Predefined functions . 161
16.1.3 External functions . 163
16.1.4 Invoking functions from specific places . 164
16.2 Altsteps . 165
16.2.0 General . 165
16.2.1 Invoking altsteps . 166
16.3 Test cases. 168
17 Void . 169
18 Overview of program statements and operations . 169
19 Basic program statements . 171
19.0 General . 171
19.1 Assignments . 172
19.2 The If-else statement . 174
19.3 The Select statements . 174
19.3.1 The Select case statement . 174
19.3.2 The Select union statement . 175
19.4 The For statement . 176
19.5 The While statement . 177
19.6 The Do-while statement . 177
19.7 The Label statement . 178
19.8 The Goto statement . 178
19.9 The Stop execution statement . 179
19.10 The Return statement . 180
19.11 The Log statement . 181
19.12 The Break statement . 182
19.13 The Continue statement . 183
19.14 Statement block . 184
20 Statement and operations for alternative behaviours . 184
20.0 General . 184
20.1 The snapshot mechanism . 185
20.2 The Alt statement . 185
20.3 The Repeat statement . 189
20.4 The Interleave statement . 190
20.5 Default Handling . 192
20.5.0 General . 192
20.5.1 The default mechanism . 193
20.5.2 The Activate operation . 193
20.5.3 The Deactivate operation . 194
21 Configuration Operations . 195
21.0 General . 195
21.1 Connection Operations . 196
21.1.0 General . 196
21.1.1 The Connect and Map operations . 197
21.1.2 The Disconnect and Unmap operations . 199
21.2 Test case operations. 201
21.2.0 General . 201
21.2.1 Test case stop operation . 201
21.3 Test Component Operations . 201
21.3.0 General . 201
21.3.1 The Create operation . 201
21.3.2 The Start test component operation . 203
ETSI
7 Final draft ETSI ES 201 873-1 V4.10.1 (2018-03)
21.3.3 The Stop test behaviour operation . 204
21.3.4 The Kill test component operation . 205
21.3.5 The Alive operation . 206
21.3.6 The Running operation . 207
21.3.7 The Done operation . 208
21.3.8 The Killed operation . 210
21.3.9 Summary of the use of any and all with components . 212
22 Communication operations. 212
22.0 General . 212
22.1 The communication mechanisms . 213
22.1.0 General . 213
22.1.1 Principles of message-based communication. 213
22.1.2 Principles of procedure-based communication . 214
22.1.3 Principles of unicast, multicast and broadcast communication . 214
22.1.4 General format of communication operations . 215
22.1.4.0 General . 215
22.1.4.1 General format of the sending operations . 215
22.1.4.2 General format of the receiving operations . 216
22.2 Message-based communication . 217
22.2.0 General . 217
22.2.1 The Send operation . 217
22.2.2 The Receive operation . 218
22.2.3 The Trigger operation . 222
22.3 Procedure-based communication . 225
22.3.0 General . 225
22.3.1 The Call operation . 225
22.3.2 The Getcall operation. 229
22.3.3 The Reply operation. 232
22.3.4 The Getreply operation . 233
22.3.5 The Raise operation . 236
22.3.6 The Catch operation . 237
22.4 The Check operation . 240
22.5 Controlling communication ports . 243
22.5.0 General . 243
22.5.1 The Clear port operation . 243
22.5.2 The Start port operation . 243
22.5.3 The Stop port operation . 244
22.5.4 The Halt port operation . 244
22.5.5 The Checkstate port operation . 245
22.6 Use of any and all with ports . 247
23 Timer operations . 247
23.0 General . 247
23.1 The timer mechanism . 247
23.2 The Start timer operation . 248
23.3 The Stop timer operation . 248
23.4 The Read timer operation . 249
23.5 The Running timer operation. 249
23.6 The Timeout operation . 250
23.7 Summary of use of any and all with timers .
...
ETSI STANDARD
Methods for Testing and Specification (MTS);
The Testing and Test Control Notation version 3;
Part 1: TTCN-3 Core Language
2 ETSI ES 201 873-1 V4.10.1 (2018-05)
Reference
RES/MTS-201873-1v4A1
Keywords
language, methodology, testing, TTCN-3
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
The present document can be downloaded from:
http://www.etsi.org/standards-search
The present document may be made available in electronic versions and/or in print. The content of any electronic and/or
print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any
existing or perceived difference in contents between such versions and/or in print, the only prevailing document is the
print of the Portable Document Format (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
https://portal.etsi.org/TB/ETSIDeliverableStatus.aspx
If you find errors in the present document, please send your comment to one of the following services:
https://portal.etsi.org/People/CommiteeSupportStaff.aspx
Copyright Notification
No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying
and microfilm except as authorized by written permission of ETSI.
The content of the PDF version shall not be modified without the written authorization of ETSI.
The copyright and the foregoing restriction extend to reproduction in all media.
© ETSI 2018.
All rights reserved.
TM TM TM
DECT , PLUGTESTS , UMTS and the ETSI logo are trademarks of ETSI registered for the benefit of its Members.
TM TM
3GPP and LTE are trademarks of ETSI registered for the benefit of its Members and
of the 3GPP Organizational Partners.
oneM2M logo is protected for the benefit of its Members. ®
GSM and the GSM logo are trademarks registered and owned by the GSM Association.
ETSI
3 ETSI ES 201 873-1 V4.10.1 (2018-05)
Contents
Intellectual Property Rights . 13
Foreword . 13
Modal verbs terminology . 13
1 Scope . 14
2 References . 14
2.1 Normative references . 14
2.2 Informative references . 15
3 Definitions and abbreviations . 16
3.1 Definitions . 16
3.2 Abbreviations . 21
4 Introduction . 22
4.0 General . 22
4.1 The core language and presentation formats . 23
4.2 Unanimity of the specification . 24
4.3 Conformance . 24
5 Basic language elements . 24
5.0 General . 24
5.1 Identifiers and keywords . 25
5.2 Scope rules . 26
5.2.0 General . 26
5.2.1 Scope of formal parameters . 28
5.2.2 Uniqueness of identifiers . 28
5.3 Ordering of language elements . 29
5.4 Parameterization . 29
5.4.0 General . 29
5.4.1 Formal parameters . 30
5.4.1.0 General . 30
5.4.1.1 Formal parameters of kind value . 30
5.4.1.2 Formal parameters of kind template . 33
5.4.2 Actual parameters . 35
5.5 Cyclic Definitions. 40
6 Types and values . 41
6.0 General . 41
6.1 Basic types and values . 42
6.1.0 Simple basic types and values. 42
6.1.1 Basic string types and values . 43
6.1.1.0 General . 43
6.1.1.1 Accessing individual string elements . 45
6.1.2 Subtyping of basic types . 46
6.1.2.0 General . 46
6.1.2.1 Lists of templates . 46
6.1.2.2 Lists of types . 46
6.1.2.3 Ranges . 47
6.1.2.4 String length restrictions . 47
6.1.2.5 Pattern subtyping of character string types . 48
6.1.2.6 Mixing subtyping mechanisms . 48
6.1.2.6.1 Mixing patterns, lists and ranges . 48
6.1.2.6.2 Using length restriction with other constraints . 49
6.2 Structured types and values . 49
6.2.0 General . 49
6.2.1 Record type and values . 51
6.2.1.0 General . 51
6.2.1.1 Referencing fields of a record type . 53
ETSI
4 ETSI ES 201 873-1 V4.10.1 (2018-05)
6.2.1.2 Optional elements in a record. 55
6.2.1.3 Nested type definitions for field types . 55
6.2.2 Set type and values . 55
6.2.2.0 General . 55
6.2.2.1 Referencing fields of a set type . 56
6.2.2.2 Optional elements in a set . 56
6.2.2.3 Nested type definition for field types . 56
6.2.3 Records and sets of single types . 56
6.2.3.0 General . 56
6.2.3.1 Nested type definitions . 59
6.2.3.2 Referencing elements of record of and set of types . 59
6.2.4 Enumerated type and values . 60
6.2.5 Unions . 61
6.2.5.0 General . 61
6.2.5.1 Referencing fields of a union type . 63
6.2.5.2 Option and union . 64
6.2.5.3 Nested type definition for field types . 64
6.2.6 The anytype . 64
6.2.7 Arrays . 65
6.2.8 The default type . 66
6.2.9 Communication port types . 67
6.2.10 Component types . 69
6.2.10.1 Component type definition . 69
6.2.10.2 Reuse of component types . 70
6.2.11 Component references . 72
6.2.12 Addressing entities inside the SUT . 74
6.2.13 Subtyping of structured types . 76
6.2.13.0 General . 76
6.2.13.1 Length subtyping of record ofs and set ofs . 76
6.2.13.2 List subtyping of structured types and anytype . 77
6.2.13.3 Subtyping of the iterated type of record ofs and set ofs . 79
6.2.13.4 Mixing subtyping mechanisms . 81
6.2.14 The timer type . 81
6.3 Type compatibility . 81
6.3.0 General . 81
6.3.1 Compatibility of non-structured types . 81
6.3.2 Compatibility of structured types . 83
6.3.2.0 General . 83
6.3.2.1 Compatibility of enumerated types . 83
6.3.2.2 Compatibility of record and record of types . 83
6.3.2.3 Compatibility of set and set of types . 85
6.3.2.4 Compatibility of union types . 85
6.3.2.5 Compatibility of anytype types . 86
6.3.2.6 Compatibility between sub-structures . 87
6.3.3 Compatibility of component types . 87
6.3.4 Type compatibility of communication and connection operations . 88
6.3.5 Type conversion . 88
6.3.6 Type compatibility of port types . 89
6.3.7 Type compatibility of timer types . 89
6.4 Type synonym . 89
7 Expressions . 89
7.0 General . 89
7.1 Operators . 90
7.1.0 General . 90
7.1.1 Arithmetic operators . 91
7.1.2 List operator . 92
7.1.3 Relational operators . 92
7.1.4 Logical operators . 95
7.1.5 Bitwise operators . 95
7.1.6 Shift operators . 96
7.1.7 Rotate operators . 97
ETSI
5 ETSI ES 201 873-1 V4.10.1 (2018-05)
7.2 Field references and list ele me nts . 98
7.3 Decoded field reference . 98
8 Modules . 99
8.0 General . 99
8.1 Definition of a module . 99
8.2 Module definitions part . 100
8.2.0 General . 100
8.2.1 Module parameters . 101
8.2.2 Groups of definitions . 102
8.2.3 Importing from modules . 103
8.2.3.0 General . 103
8.2.3.1 General format of import . 103
8.2.3.2 Importing single definitions . 110
8.2.3.3 Importing groups . 111
8.2.3.4 Importing definitions of the same kind . 112
8.2.3.5 Importing all definitions of a module . 113
8.2.3.6 Import definitions from other TTCN-3 editions and from non-TTCN-3 modules . 113
8.2.3.7 Importing of import statements from TTCN-3 modules . 115
8.2.3.8 Compatibility of language specifications in imports . 116
8.2.4 Definition of friend modules . 117
8.2.5 Visibility of definitions . 117
8.3 Module control part . 119
9 Port types, component types and test configurations . 119
9.0 General . 119
9.1 Communication ports . 120
9.2 Test system interface . 122
10 Declaring constants . 124
11 Declaring variables . 124
11.0 General . 124
11.1 Value variables . 125
11.2 Template variables . 126
12 Declaring timers . 127
13 Declaring messages . 128
14 Declaring procedure signatures . 129
15 Declaring templates . 130
15.0 General . 130
15.1 Declaring message templates . 131
15.2 Declaring signature templates . 132
15.3 Global and local templates . 134
15.4 In-line Templates . 135
15.5 Modified templates . 136
15.6 Referencing elements of templates or template fields . 139
15.6.0 General . 139
15.6.1 Referencing individual string elements. 139
15.6.2 Referencing record and set fields . 140
15.6.3 Referencing record of and set of elements . 141
15.6.4 Referencing signature parameters . 144
15.6.5 Referencing union alternatives . 145
15.7 Template matching mechanisms . 146
15.7.0 General . 146
15.7.1 Specific values . 147
15.7.2 Special symbols that can be used instead of values . 148
15.7.3 Special symbols that can be used inside values . 149
15.7.4 Special symbols which describe attributes of values . 149
15.8 Template Restrictions . 150
15.9 Match Operation . 152
ETSI
6 ETSI ES 201 873-1 V4.10.1 (2018-05)
15.10 Valueof Operation . 154
15.11 Concatenating templates of string and list types . 154
16 Functions, altsteps and testcases . 157
16.0 General . 157
16.1 Functions . 157
16.1.0 General . 157
16.1.1 Invoking functions . 160
16.1.2 Predefined functions . 161
16.1.3 External functions . 163
16.1.4 Invoking functions from specific places . 164
16.2 Altsteps . 165
16.2.0 General . 165
16.2.1 Invoking altsteps . 166
16.3 Test cases. 168
17 Void . 169
18 Overview of program statements and operations . 169
19 Basic program statements . 171
19.0 General . 171
19.1 Assignments . 172
19.2 The If-else statement . 174
19.3 The Select statements . 174
19.3.1 The Select case statement . 174
19.3.2 The Select union statement . 175
19.4 The For statement . 176
19.5 The While statement . 177
19.6 The Do-while statement . 177
19.7 The Label statement . 178
19.8 The Goto statement . 178
19.9 The Stop execution statement . 179
19.10 The Return statement . 180
19.11 The Log statement . 181
19.12 The Break statement . 182
19.13 The Continue statement . 183
19.14 Statement block . 184
20 Statement and operations for alternative behaviours . 184
20.0 General . 184
20.1 The snapshot mechanism . 185
20.2 The Alt statement . 185
20.3 The Repeat statement . 189
20.4 The Interleave statement . 190
20.5 Default Handling . 192
20.5.0 General . 192
20.5.1 The default mechanism . 193
20.5.2 The Activate operation . 193
20.5.3 The Deactivate operation . 194
21 Configuration Operations . 195
21.0 General . 195
21.1 Connection Operations . 196
21.1.0 General . 196
21.1.1 The Connect and Map operations . 197
21.1.2 The Disconnect and Unmap operations . 199
21.2 Test case operations. 201
21.2.0 General . 201
21.2.1 Test case stop operation . 201
21.3 Test Component Operations . 201
21.3.0 General . 201
21.3.1 The Create operation . 201
21.3.2 The Start test component operation . 203
ETSI
7 ETSI ES 201 873-1 V4.10.1 (2018-05)
21.3.3 The Stop test behaviour operation . 204
21.3.4 The Kill test component operation . 205
21.3.5 The Alive operation . 206
21.3.6 The Running operation . 207
21.3.7 The Done operation . 208
21.3.8 The Killed operation . 210
21.3.9 Summary of the use of any and all with components . 212
22 Communication operations. 212
22.0 General . 212
22.1 The communication mechanisms . 213
22.1.0 General . 213
22.1.1 Principles of message-based communication. 213
22.1.2 Principles of procedure-based communication . 214
22.1.3 Principles of unicast, multicast and broadcast communication . 214
22.1.4 General format of communication operations . 215
22.1.4.0 General . 215
22.1.4.1 General format of the sending operations . 215
22.1.4.2 General format of the receiving operations . 216
22.2 Message-based communication . 217
22.2.0 General . 217
22.2.1 The Send operation . 217
22.2.2 The Receive operation . 218
22.2.3 The Trigger operation . 222
22.3 Procedure-based communication . 225
22.3.0 General . 225
22.3.1 The Call operation . 225
22.3.2 The Getcall operation. 229
22.3.3 The Reply operation. 232
22.3.4 The Getreply operation . 233
22.3.5 The Raise operation . 236
22.3.6 The Catch operation . 237
22.4 The Check operation . 240
22.5 Controlling communication ports . 243
22.5.0 General . 243
22.5.1 The Clear port operation . 243
22.5.2 The Start port operation . 243
22.5.3 The Stop port operation . 244
22.5.4 The Halt port operation . 244
22.5.5 The Checkstate port operation . 245
22.6 Use of any and all with ports . 247
23 Timer operations . 247
23.0 General . 247
23.1 The timer mechanism . 247
23.2 The Start timer operation . 248
23.3 The Stop timer operation . 248
23.4 The Read timer operation . 249
23.5 The Running timer operation. 249
23.6 The Timeout operation . 250
23.7 Summary of use of any and all with timers . 251
24 Test verdict operations .
...
SLOVENSKI STANDARD
01-september-2019
Metode za preskušanje in specificiranje (MTS) - 3. različica zapisa preskušanja in
krmiljenja preskusov - 1. del: Jedrni jezik TTCN-3
Methods for Testing and Specification (MTS) - The Testing and Test Control Notation
version 3 - Part 1: TTCN-3 Core Language
Ta slovenski standard je istoveten z: ETSI ES 201 873-1 V4.10.1 (2018-05)
ICS:
33.040.01 Telekomunikacijski sistemi Telecommunication systems
na splošno in general
35.060 Jeziki, ki se uporabljajo v Languages used in
informacijski tehniki in information technology
tehnologiji
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.
ETSI STANDARD
Methods for Testing and Specification (MTS);
The Testing and Test Control Notation version 3;
Part 1: TTCN-3 Core Language
2 ETSI ES 201 873-1 V4.10.1 (2018-05)
Reference
RES/MTS-201873-1v4A1
Keywords
language, methodology, testing, TTCN-3
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
The present document can be downloaded from:
http://www.etsi.org/standards-search
The present document may be made available in electronic versions and/or in print. The content of any electronic and/or
print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any
existing or perceived difference in contents between such versions and/or in print, the only prevailing document is the
print of the Portable Document Format (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
https://portal.etsi.org/TB/ETSIDeliverableStatus.aspx
If you find errors in the present document, please send your comment to one of the following services:
https://portal.etsi.org/People/CommiteeSupportStaff.aspx
Copyright Notification
No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying
and microfilm except as authorized by written permission of ETSI.
The content of the PDF version shall not be modified without the written authorization of ETSI.
The copyright and the foregoing restriction extend to reproduction in all media.
© ETSI 2018.
All rights reserved.
TM TM TM
DECT , PLUGTESTS , UMTS and the ETSI logo are trademarks of ETSI registered for the benefit of its Members.
TM TM
3GPP and LTE are trademarks of ETSI registered for the benefit of its Members and
of the 3GPP Organizational Partners.
oneM2M logo is protected for the benefit of its Members. ®
GSM and the GSM logo are trademarks registered and owned by the GSM Association.
ETSI
3 ETSI ES 201 873-1 V4.10.1 (2018-05)
Contents
Intellectual Property Rights . 13
Foreword . 13
Modal verbs terminology . 13
1 Scope . 14
2 References . 14
2.1 Normative references . 14
2.2 Informative references . 15
3 Definitions and abbreviations . 16
3.1 Definitions . 16
3.2 Abbreviations . 21
4 Introduction . 22
4.0 General . 22
4.1 The core language and presentation formats . 23
4.2 Unanimity of the specification . 24
4.3 Conformance . 24
5 Basic language elements . 24
5.0 General . 24
5.1 Identifiers and keywords . 25
5.2 Scope rules . 26
5.2.0 General . 26
5.2.1 Scope of formal parameters . 28
5.2.2 Uniqueness of identifiers . 28
5.3 Ordering of language elements . 29
5.4 Parameterization . 29
5.4.0 General . 29
5.4.1 Formal parameters . 30
5.4.1.0 General . 30
5.4.1.1 Formal parameters of kind value . 30
5.4.1.2 Formal parameters of kind template . 33
5.4.2 Actual parameters . 35
5.5 Cyclic Definitions. 40
6 Types and values . 41
6.0 General . 41
6.1 Basic types and values . 42
6.1.0 Simple basic types and values. 42
6.1.1 Basic string types and values . 43
6.1.1.0 General . 43
6.1.1.1 Accessing individual string elements . 45
6.1.2 Subtyping of basic types . 46
6.1.2.0 General . 46
6.1.2.1 Lists of templates . 46
6.1.2.2 Lists of types . 46
6.1.2.3 Ranges . 47
6.1.2.4 String length restrictions . 47
6.1.2.5 Pattern subtyping of character string types . 48
6.1.2.6 Mixing subtyping mechanisms . 48
6.1.2.6.1 Mixing patterns, lists and ranges . 48
6.1.2.6.2 Using length restriction with other constraints . 49
6.2 Structured types and values . 49
6.2.0 General . 49
6.2.1 Record type and values . 51
6.2.1.0 General . 51
6.2.1.1 Referencing fields of a record type . 53
ETSI
4 ETSI ES 201 873-1 V4.10.1 (2018-05)
6.2.1.2 Optional elements in a record. 55
6.2.1.3 Nested type definitions for field types . 55
6.2.2 Set type and values . 55
6.2.2.0 General . 55
6.2.2.1 Referencing fields of a set type . 56
6.2.2.2 Optional elements in a set . 56
6.2.2.3 Nested type definition for field types . 56
6.2.3 Records and sets of single types . 56
6.2.3.0 General . 56
6.2.3.1 Nested type definitions . 59
6.2.3.2 Referencing elements of record of and set of types . 59
6.2.4 Enumerated type and values . 60
6.2.5 Unions . 61
6.2.5.0 General . 61
6.2.5.1 Referencing fields of a union type . 63
6.2.5.2 Option and union . 64
6.2.5.3 Nested type definition for field types . 64
6.2.6 The anytype . 64
6.2.7 Arrays . 65
6.2.8 The default type . 66
6.2.9 Communication port types . 67
6.2.10 Component types . 69
6.2.10.1 Component type definition . 69
6.2.10.2 Reuse of component types . 70
6.2.11 Component references . 72
6.2.12 Addressing entities inside the SUT . 74
6.2.13 Subtyping of structured types . 76
6.2.13.0 General . 76
6.2.13.1 Length subtyping of record ofs and set ofs . 76
6.2.13.2 List subtyping of structured types and anytype . 77
6.2.13.3 Subtyping of the iterated type of record ofs and set ofs . 79
6.2.13.4 Mixing subtyping mechanisms . 81
6.2.14 The timer type . 81
6.3 Type compatibility . 81
6.3.0 General . 81
6.3.1 Compatibility of non-structured types . 81
6.3.2 Compatibility of structured types . 83
6.3.2.0 General . 83
6.3.2.1 Compatibility of enumerated types . 83
6.3.2.2 Compatibility of record and record of types . 83
6.3.2.3 Compatibility of set and set of types . 85
6.3.2.4 Compatibility of union types . 85
6.3.2.5 Compatibility of anytype types . 86
6.3.2.6 Compatibility between sub-structures . 87
6.3.3 Compatibility of component types . 87
6.3.4 Type compatibility of communication and connection operations . 88
6.3.5 Type conversion . 88
6.3.6 Type compatibility of port types . 89
6.3.7 Type compatibility of timer types . 89
6.4 Type synonym . 89
7 Expressions . 89
7.0 General . 89
7.1 Operators . 90
7.1.0 General . 90
7.1.1 Arithmetic operators . 91
7.1.2 List operator . 92
7.1.3 Relational operators . 92
7.1.4 Logical operators . 95
7.1.5 Bitwise operators . 95
7.1.6 Shift operators . 96
7.1.7 Rotate operators . 97
ETSI
5 ETSI ES 201 873-1 V4.10.1 (2018-05)
7.2 Field references and list ele me nts . 98
7.3 Decoded field reference . 98
8 Modules . 99
8.0 General . 99
8.1 Definition of a module . 99
8.2 Module definitions part . 100
8.2.0 General . 100
8.2.1 Module parameters . 101
8.2.2 Groups of definitions . 102
8.2.3 Importing from modules . 103
8.2.3.0 General . 103
8.2.3.1 General format of import . 103
8.2.3.2 Importing single definitions . 110
8.2.3.3 Importing groups . 111
8.2.3.4 Importing definitions of the same kind . 112
8.2.3.5 Importing all definitions of a module . 113
8.2.3.6 Import definitions from other TTCN-3 editions and from non-TTCN-3 modules . 113
8.2.3.7 Importing of import statements from TTCN-3 modules . 115
8.2.3.8 Compatibility of language specifications in imports . 116
8.2.4 Definition of friend modules . 117
8.2.5 Visibility of definitions . 117
8.3 Module control part . 119
9 Port types, component types and test configurations . 119
9.0 General . 119
9.1 Communication ports . 120
9.2 Test system interface . 122
10 Declaring constants . 124
11 Declaring variables . 124
11.0 General . 124
11.1 Value variables . 125
11.2 Template variables . 126
12 Declaring timers . 127
13 Declaring messages . 128
14 Declaring procedure signatures . 129
15 Declaring templates . 130
15.0 General . 130
15.1 Declaring message templates . 131
15.2 Declaring signature templates . 132
15.3 Global and local templates . 134
15.4 In-line Templates . 135
15.5 Modified templates . 136
15.6 Referencing elements of templates or template fields . 139
15.6.0 General . 139
15.6.1 Referencing individual string elements. 139
15.6.2 Referencing record and set fields . 140
15.6.3 Referencing record of and set of elements . 141
15.6.4 Referencing signature parameters . 144
15.6.5 Referencing union alternatives . 145
15.7 Template matching mechanisms . 146
15.7.0 General . 146
15.7.1 Specific values . 147
15.7.2 Special symbols that can be used instead of values . 148
15.7.3 Special symbols that can be used inside values . 149
15.7.4 Special symbols which describe attributes of values . 149
15.8 Template Restrictions . 150
15.9 Match Operation . 152
ETSI
6 ETSI ES 201 873-1 V4.10.1 (2018-05)
15.10 Valueof Operation . 154
15.11 Concatenating templates of string and list types . 154
16 Functions, altsteps and testcases . 157
16.0 General . 157
16.1 Functions . 157
16.1.0 General . 157
16.1.1 Invoking functions . 160
16.1.2 Predefined functions . 161
16.1.3 External functions . 163
16.1.4 Invoking functions from specific places . 164
16.2 Altsteps . 165
16.2.0 General . 165
16.2.1 Invoking altsteps . 166
16.3 Test cases. 168
17 Void . 169
18 Overview of program statements and operations . 169
19 Basic program statements . 171
19.0 General . 171
19.1 Assignments . 172
19.2 The If-else statement . 174
19.3 The Select statements . 174
19.3.1 The Select case statement . 174
19.3.2 The Select union statement . 175
19.4 The For statement . 176
19.5 The While statement . 177
19.6 The Do-while statement . 177
19.7 The Label statement . 178
19.8 The Goto statement . 178
19.9 The Stop execution statement . 179
19.10 The Return statement . 180
19.11 The Log statement . 181
19.12 The Break statement . 182
19.13 The Continue statement . 183
19.14 Statement block . 184
20 Statement and operations for alternative behaviours . 184
20.0 General . 184
20.1 The snapshot mechanism . 185
20.2 The Alt statement . 185
20.3 The Repeat statement . 189
20.4 The Interleave statement . 190
20.5 Default Handling . 192
20.5.0 General . 192
20.5.1 The default mechanism . 193
20.5.2 The Activate operation . 193
20.5.3 The Deactivate operation . 194
21 Configuration Operations . 195
21.0 General . 195
21.1 Connection Operations . 196
21.1.0 General . 196
21.1.1 The Connect and Map operations . 197
21.1.2 The Disconnect and Unmap operations . 199
21.2 Test case operations. 201
21.2.0 General . 201
21.2.1 Test case stop operation . 201
21.3 Test Component Operations . 201
21.3.0 General . 201
21.3.1 The Create operation . 201
21.3.2 The Start test component operation . 203
ETSI
7 ETSI ES 201 873-1 V4.10.1 (2018-05)
21.3.3 The Stop test behaviour operation . 204
21.3.4 The Kill test component operation . 205
21.3.5 The Alive operation . 206
21.3.6 The Running operation . 207
21.3.7 The Done operation . 208
21.3.8 The Killed operation . 210
21.3.9 Summary of the use of any and all with components . 212
22 Communication operations. 212
22.0 General . 212
22.1 The communication mechanisms . 213
22.1.0 General . 213
22.1.1 Principles of message-based communication. 213
22.1.2 Principles of procedure-based communication . 214
22.1.3 Principles of unicast, multicast and broadcast communication . 214
22.1.4 General format of communication operations . 215
22.1.4.0 General . 215
22.1.4.1 General format of the sending operations . 215
22.1.4.2 General format of the receiving operations . 216
22.2 Message-based communication . 217
22.2.0 General . 217
22.2.1 The Send operation . 217
22.2.2 The Receive operation . 218
22.2.3 The Trigger operation . 222
22.3 Procedure-based communication . 225
22.3.0 General . 225
22.3.1 The Call operation . 225
22.3.2 The Getcall operation. 229
22.3.3 The Reply operation. 232
22.3.4 The Getreply operation . 233
22.3.5 The Raise operation . 236
22.3.6 The Catch operation . 237
22.4 The Check operation . 240
22.5 Controlling communication ports . 243
22.5.0 General . 243
22.5.1 The Clear port operation . 243
22.5.2 The Start port operation . 243
22.5.3 The Stop port operation . 244
22.5.4 The Halt port operation . 244
22.5.5 The Checkstate port operation . 245
22.6 Use of any and all with ports . 247
23 Timer operations . 247
23.0 General .
...












Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...