1、 ETSI ES 201 873-1 V4.9.1 (2017-05) Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; Part 1: TTCN-3 Core Language ETSI STANDARD ETSI ETSI ES 201 873-1 V4.9.1 (2017-05)2 Reference RES/MTS-201873 -1 T3ed491 Keywords language, methodology, testing, TTCN-3 ET
2、SI 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 enregistre la Sous-Prfecture de Grasse (06) N 7803/88 Important notice The present document can be downloaded from: http
3、:/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 d
4、ifference 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
5、 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/CommiteeSupp
6、ortStaff.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 authoriz
7、ation of ETSI. The copyright and the foregoing restriction extend to reproduction in all media. European Telecommunications Standards Institute 2017. All rights reserved. DECTTM, PLUGTESTSTM, UMTSTMand the ETSI logo are Trade Marks of ETSI registered for the benefit of its Members. 3GPPTM and LTE ar
8、e Trade Marks 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 Trade Marks registered and owned by the GSM Association. ETSI ETSI ES 201 873-1 V4.9.1 (2017-05)3 Contents Intelle
9、ctual Property Rights 13g3Foreword . 13g3Modal verbs terminology 13g31 Scope 14g32 References 14g32.1 Normative references 14g32.2 Informative references . 15g33 Definitions and abbreviations . 16g33.1 Definitions . 16g33.2 Abbreviations 21g34 Introduction 22g34.0 General 22g34.1 The core language a
10、nd presentation formats . 22g34.2 Unanimity of the specification 24g34.3 Conformance . 24g35 Basic language elements 24g35.0 General 24g35.1 Identifiers and keywords . 25g35.2 Scope rules 25g35.2.0 General. 25g35.2.1 Scope of formal parameters . 28g35.2.2 Uniqueness of identifiers . 28g35.3 Ordering
11、 of language elements 29g35.4 Parameterization 29g35.4.0 General . 29g35.4.1 Formal parameters . 30g35.4.1.0 General . 30g35.4.1.1 Formal parameters of kind value 30g35.4.1.2 Formal parameters of kind template . 33g35.4.1.3 Formal parameters of kind timer 35g35.4.1.4 Formal parameters of kind port 3
12、5g35.4.2 Actual parameters 36g35.5 Cyclic Definitions 41g36 Types and values 42g36.0 General 42g36.1 Basic types and values . 43g36.1.0 Simple basic types and values 43g36.1.1 Basic string types and values . 43g36.1.1.0 General . 43g36.1.1.1 Accessing individual string elements . 46g36.1.2 Subtyping
13、 of basic types 46g36.1.2.0 General . 46g36.1.2.1 Lists of templates . 47g36.1.2.2 Lists of types 47g36.1.2.3 Ranges 47g36.1.2.4 String length restrictions 48g36.1.2.5 Pattern subtyping of character string types 48g36.1.2.6 Mixing subtyping mechanisms . 49g36.1.2.6.1 Mixing patterns, lists and range
14、s 49g36.1.2.6.2 Using length restriction with other constraints . 49g36.2 Structured types and values . 50g36.2.0 General . 50g36.2.1 Record type and values 51g3ETSI ETSI ES 201 873-1 V4.9.1 (2017-05)4 6.2.1.0 General . 51g36.2.1.1 Referencing fields of a record type 54g36.2.1.2 Optional elements in
15、 a record. 55g36.2.1.3 Nested type definitions for field types . 56g36.2.2 Set type and values 56g36.2.2.0 General . 56g36.2.2.1 Referencing fields of a set type 56g36.2.2.2 Optional elements in a set 56g36.2.2.3 Nested type definition for field types . 57g36.2.3 Records and sets of single types 57g
16、36.2.3.0 General . 57g36.2.3.1 Nested type definitions . 59g36.2.3.2 Referencing elements of record of and set of types . 60g36.2.4 Enumerated type and values 61g36.2.5 Unions 62g36.2.5.0 General . 62g36.2.5.1 Referencing fields of a union type . 63g36.2.5.2 Option and union 64g36.2.5.3 Nested type
17、definition for field types . 65g36.2.6 The anytype . 65g36.2.7 Arrays 65g36.2.8 The default type . 67g36.2.9 Communication port types . 67g36.2.10 Component types . 69g36.2.10.1 Component type definition . 69g36.2.10.2 Reuse of component types . 70g36.2.11 Component references . 72g36.2.12 Addressin
18、g entities inside the SUT 74g36.2.13 Subtyping of structured types 76g36.2.13.0 General . 76g36.2.13.1 Length subtyping of record ofs and set ofs 76g36.2.13.2 List subtyping of structured types and anytype 77g36.2.13.3 Subtyping of the iterated type of record ofs and set ofs . 80g36.2.13.4 Mixing su
19、btyping mechanisms . 81g36.3 Type compatibility 81g36.3.0 General . 81g36.3.1 Compatibility of non-structured types . 81g36.3.2 Compatibility of structured types . 83g36.3.2.0 General . 83g36.3.2.1 Compatibility of enumerated types 83g36.3.2.2 Compatibility of record and record of types 83g36.3.2.3
20、Compatibility of set and set of types 84g36.3.2.4 Compatibility of union types 85g36.3.2.5 Compatibility of anytype types 86g36.3.2.6 Compatibility between sub-structures 87g36.3.3 Compatibility of component types . 87g36.3.4 Type compatibility of communication and connection operations 88g36.3.5 Ty
21、pe conversion . 88g36.4 Type synonym . 88g37 Expressions . 89g37.0 General 89g37.1 Operators . 89g37.1.0 General. 89g37.1.1 Arithmetic operators 91g37.1.2 List operator . 92g37.1.3 Relational operators . 92g37.1.4 Logical operators . 94g37.1.5 Bitwise operators . 95g37.1.6 Shift operators 96g37.1.7
22、Rotate operators . 96g37.2 Field references and list elements 97g3ETSI ETSI ES 201 873-1 V4.9.1 (2017-05)5 7.3 Decoded field reference . 97g38 Modules 98g38.0 General 98g38.1 Definition of a module 98g38.2 Module definitions part . 99g38.2.0 General . 99g38.2.1 Module parameters 100g38.2.2 Groups of
23、 definitions . 102g38.2.3 Importing from modules 103g38.2.3.0 General . 103g38.2.3.1 General format of import . 103g38.2.3.2 Importing single definitions . 109g38.2.3.3 Importing groups 110g38.2.3.4 Importing definitions of the same kind 111g38.2.3.5 Importing all definitions of a module . 112g38.2.
24、3.6 Import definitions from other TTCN-3 editions and from non-TTCN-3 modules . 112g38.2.3.7 Importing of import statements from TTCN-3 modules 114g38.2.3.8 Compatibility of language specifications in imports 115g38.2.4 Definition of friend modules 116g38.2.5 Visibility of definitions 116g38.3 Modul
25、e control part . 118g39 Port types, component types and test configurations . 118g39.0 General 118g39.1 Communication ports 119g39.2 Test system interface . 121g310 Declaring constants 123g311 Declaring variables . 123g311.0 General 123g311.1 Value variables 124g311.2 Template variables 125g312 Decl
26、aring timers . 126g313 Declaring messages 127g314 Declaring procedure signatures 128g315 Declaring templates 129g315.0 General 129g315.1 Declaring message templates 130g315.2 Declaring signature templates . 131g315.3 Global and local templates 133g315.4 In-line Templates . 134g315.5 Modified templat
27、es 135g315.6 Referencing elements of templates or template fields . 138g315.6.0 General . 138g315.6.1 Referencing individual string elements 138g315.6.2 Referencing record and set fields 138g315.6.3 Referencing record of and set of elements . 139g315.6.4 Referencing signature parameters 143g315.6.5
28、Referencing union alternatives 143g315.7 Template matching mechanisms . 144g315.7.0 General . 144g315.7.1 Specific values . 145g315.7.2 Special symbols that can be used instead of values . 146g315.7.3 Special symbols that can be used inside values . 147g315.7.4 Special symbols which describe attribu
29、tes of values . 147g315.8 Template Restrictions 148g315.9 Match Operation 150g315.10 Valueof Operation . 152g3ETSI ETSI ES 201 873-1 V4.9.1 (2017-05)6 15.11 Concatenating templates of string and list types . 152g316 Functions, altsteps and testcases 154g316.0 General 154g316.1 Functions . 154g316.1.
30、0 General . 154g316.1.1 Invoking functions . 156g316.1.2 Predefined functions 157g316.1.3 External functions 159g316.1.4 Invoking functions from specific places 160g316.2 Altsteps 161g316.2.0 General . 161g316.2.1 Invoking altsteps 163g316.3 Test cases. 164g317 Void 165g318 Overview of program state
31、ments and operations . 165g319 Basic program statements . 167g319.0 General 167g319.1 Assignments 168g319.2 The If-else statement . 170g319.3 The Select statements 170g319.3.1 The Select case statement 170g319.3.2 The Select union statement 171g319.4 The For statement 172g319.5 The While statement 1
32、73g319.6 The Do-while statement 173g319.7 The Label statement 174g319.8 The Goto statement . 174g319.9 The Stop execution statement 175g319.10 The Return statement . 176g319.11 The Log statement . 177g319.12 The Break statement 178g319.13 The Continue statement . 179g319.14 Statement block . 180g320
33、 Statement and operations for alternative behaviours 180g320.0 General 180g320.1 The snapshot mechanism . 181g320.2 The Alt statement 181g320.3 The Repeat statement 185g320.4 The Interleave statement . 186g320.5 Default Handling . 188g320.5.0 General . 188g320.5.1 The default mechanism 189g320.5.2 T
34、he Activate operation . 189g320.5.3 The Deactivate operation . 190g321 Configuration Operations . 191g321.0 General 191g321.1 Connection Operations 192g321.1.0 General . 192g321.1.1 The Connect and Map operations 193g321.1.2 The Disconnect and Unmap operations . 195g321.2 Test case operations. 196g3
35、21.2.0 General . 196g321.2.1 Test case stop operation . 197g321.3 Test Component Operations 197g321.3.0 General . 197g321.3.1 The Create operation 197g321.3.2 The Start test component operation . 198g321.3.3 The Stop test behaviour operation . 200g3ETSI ETSI ES 201 873-1 V4.9.1 (2017-05)7 21.3.4 The
36、 Kill test component operation . 201g321.3.5 The Alive operation . 202g321.3.6 The Running operation 203g321.3.7 The Done operation . 204g321.3.8 The Killed operation 206g321.3.9 Summary of the use of any and all with components 208g322 Communication operations. 208g322.0 General 208g322.1 The commu
37、nication mechanisms 209g322.1.0 General . 209g322.1.1 Principles of message-based communication. 209g322.1.2 Principles of procedure-based communication 210g322.1.3 Principles of unicast, multicast and broadcast communication 210g322.1.4 General format of communication operations . 211g322.1.4.0 Gen
38、eral . 211g322.1.4.1 General format of the sending operations 211g322.1.4.2 General format of the receiving operations 212g322.2 Message-based communication . 213g322.2.0 General . 213g322.2.1 The Send operation 213g322.2.2 The Receive operation . 214g322.2.3 The Trigger operation 218g322.3 Procedur
39、e-based communication . 221g322.3.0 General . 221g322.3.1 The Call operation . 221g322.3.2 The Getcall operation. 225g322.3.3 The Reply operation. 228g322.3.4 The Getreply operation 229g322.3.5 The Raise operation . 232g322.3.6 The Catch operation . 233g322.4 The Check operation . 236g322.5 Controll
40、ing communication ports 239g322.5.0 General . 239g322.5.1 The Clear port operation 239g322.5.2 The Start port operation . 239g322.5.3 The Stop port operation . 240g322.5.4 The Halt port operation 240g322.5.5 The Checkstate port operation . 241g322.6 Use of any and all with ports . 242g323 Timer oper
41、ations 243g323.0 General 243g323.1 The timer mechanism 243g323.2 The Start timer operation . 243g323.3 The Stop timer operation . 244g323.4 The Read timer operation 245g323.5 The Running timer operation. 245g323.6 The Timeout operation 246g323.7 Summary of use of any and all with timers . 247g324 Te
42、st verdict operations . 247g324.0 General 247g324.1 The Verdict mechanism . 248g324.2 The Setverdict operation . 249g324.3 The Getverdict operation . 250g325 External actions 250g326 Module control . 250g326.0 General 250g326.1 The Execute statement . 251g326.2 The Control part 253g3ETSI ETSI ES 201
43、 873-1 V4.9.1 (2017-05)8 27 Specifying attributes . 255g327.0 General 255g327.1 The Attribute mechanism 255g327.1.0 General . 255g327.1.1 Scope of attributes . 255g327.1.2 Overwriting rules for attributes 256g327.1.2.0 General . 256g327.1.2.1 Additional default overwriting rules for variant attribut
44、es . 259g327.1.2.2 Overwriting rules for multiple encoding 260g327.1.3 Changing attributes of imported language elements 260g327.2 The With statement . 261g327.3 Display attributes . 262g327.4 Encoding attributes 262g327.5 Variant attributes . 263g327.6 Extension attributes . 266g327.7 Optional attr
45、ibutes . 266g327.8 Retrieving attribute values . 268g327.9 Dynamic configuration of encoding used by ports 269g3Annex A (normative): BNF and static semantics 271g3A.1 TTCN-3 BNF . 271g3A.1.0 General 271g3A.1.1 Conventions for the syntax description . 271g3A.1.2 Statement terminator symbols . 271g3A.
46、1.3 Identifiers 271g3A.1.4 Comments 272g3A.1.5 TTCN-3 terminals . 272g3A.1.5.0 General . 272g3A.1.5.1 Use of whitespaces and newlines . 274g3A.1.6 TTCN-3 syntax BNF productions . 274g3A.1.6.0 TTCN-3 module . 274g3A.1.6.1 Module definitions part 274g3A.1.6.1.0 General . 274g3A.1.6.1.1 Typedef definit
47、ions 275g3A.1.6.1.2 Constant definitions . 277g3A.1.6.1.3 Template definitions. 277g3A.1.6.1.4 Function definitions . 279g3A.1.6.1.5 Signature definitions 280g3A.1.6.1.6 Testcase definitions 280g3A.1.6.1.7 Altstep definitions 280g3A.1.6.1.8 Import definitions . 280g3A.1.6.1.9 Group definitions . 281
48、g3A.1.6.1.10 External function definitions 281g3A.1.6.1.11 External constant definitions 281g3A.1.6.1.12 Module parameter definitions 281g3A.1.6.1.13 Friend module definitions 281g3A.1.6.2 Control part 281g3A.1.6.3 Local definitions 282g3A.1.6.3.1 Variable instantiation . 282g3A.1.6.3.2 Timer instan
49、tiation . 282g3A.1.6.4 Operations 282g3A.1.6.4.1 Component operations . 282g3A.1.6.4.2 Port operations . 283g3A.1.6.4.3 Timer operations 285g3A.1.6.4.4 Testcase operation 285g3A.1.6.5 Type . 285g3A.1.6.6 Value 286g3A.1.6.7 Parameterization 287g3A.1.6.8 Statements 287g3A.1.6.8.1 With statement . 287g3A.1.6.8.2 Behaviour statements . 288g3ETSI ETSI ES 201 873-1 V4.9.1 (2017-05)9 A.1.6.8.3 Basic statements . 288g3A.1.6.9 Miscellaneous productions 291g3Annex B (normative): Matching values . 292g3B.1 Template matching mechanisms 292g3B.1.0 General 292g3B.1.1 Matching specific values
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1