Methods for Testing and Specification (MTS) - The Testing and Test Control Notation version 3 - TTCN-3 Language Extensions: Performance and Real Time Testing

Revision according to CR Process

Metode za preskušanje in specificiranje (MTS) - 3. različica preskušanja in zapisa krmilnih preskusov - Razširitev nabora jezikov TTCN-3: zmogljivost in realnočasovno preskušanje

General Information

Status
Published
Publication Date
30-Jun-2022
Current Stage
6060 - National Implementation/Publication (Adopted Project)
Start Date
23-Jun-2022
Due Date
28-Aug-2022
Completion Date
01-Jul-2022

Buy Standard

Standard
ETSI ES 202 782 V1.4.1 (2022-06) - Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; TTCN-3 Language Extensions: Performance and Real Time Testing
English language
37 pages
sale 15% off
Preview
sale 15% off
Preview
Standard
ETSI ES 202 782 V1.4.1 (2022-04) - Methods for Testing and Specification (MTS) The Testing and Test Control Notation version 3 TTCN-3 Language Extensions: Performance and Real Time Testing
English language
37 pages
sale 15% off
Preview
sale 15% off
Preview
Standardization document
SIST ES 202 782 V1.4.1:2022
English language
37 pages
sale 10% off
Preview
sale 10% off
Preview
e-Library read for
1 day

Standards Content (sample)

ETSI ES 202 782 V1.4.1 (2022-06)
ETSI STANDARD
Methods for Testing and Specification (MTS);
The Testing and Test Control Notation version 3;
TTCN-3 Language Extensions:
Performance and Real Time Testing
---------------------- Page: 1 ----------------------
2 ETSI ES 202 782 V1.4.1 (2022-06)
Reference
RES/MTS-202782 ed141RealtPer
Keywords
performance, real time, 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 - APE 7112B
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° w061004871
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 prevailing version of an ETSI

deliverable is the one made publicly available in PDF format at www.etsi.org/deliver.

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

If you find a security vulnerability in the present document, please report it through our

Coordinated Vulnerability Disclosure Program:
https://www.etsi.org/standards/coordinated-vulnerability-disclosure
Notice of disclaimer & limitation of liability

The information provided in the present deliverable is directed solely to professionals who have the appropriate degree of

experience to understand and interpret its content in accordance with generally accepted engineering or

other professional standard and applicable regulations.

No recommendation as to products and services or vendors is made or should be implied.

No representation or warranty is made that this deliverable is technically accurate or sufficient or conforms to any law

rule and/or regulation and further, no representation or warranty is made of merchantability or fitness

and/or governmental

for any particular purpose or against infringement of intellectual property rights.

In no event shall ETSI be held liable for loss of profits or any other incidental or consequential damages.

Any software contained in this deliverable is provided "AS IS" with no warranties, express or implied, including but not

limited to, the warranties of merchantability, fitness for a particular purpose and non-infringement of intellectual property

rights and ETSI shall not be held liable in any event for any damages whatsoever (including, without limitation, damages

for loss of profits, business interruption, loss of information, or any other pecuniary loss) arising out of or related to the use

of or inability to use the software.
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 2022.
All rights reserved.
ETSI
---------------------- Page: 2 ----------------------
3 ETSI ES 202 782 V1.4.1 (2022-06)
Contents

Intellectual Property Rights ................................................................................................................................ 5

Foreword ............................................................................................................................................................. 5

Modal verbs terminology .................................................................................................................................... 5

1 Scope ........................................................................................................................................................ 6

2 References ................................................................................................................................................ 6

2.1 Normative references ......................................................................................................................................... 6

2.2 Informative references ........................................................................................................................................ 6

3 Definition of terms, symbols and abbreviations ....................................................................................... 7

3.1 Terms .................................................................................................................................................................. 7

3.2 Symbols .............................................................................................................................................................. 7

3.3 Abbreviations ..................................................................................................................................................... 7

4 Package conformance and compatibility .................................................................................................. 7

5 Package concepts for the core language ................................................................................................... 8

5.0 General ............................................................................................................................................................... 8

5.1 The test system clock ......................................................................................................................................... 8

5.1.0 General .......................................................................................................................................................... 8

5.1.1 Accessing the current test system time ......................................................................................................... 8

5.1.2 The precision of the system time .................................................................................................................. 9

5.2 Communication port types for real-time measurements ..................................................................................... 9

5.3 Measuring timing information for dedicated incoming communication events ............................................... 10

5.3.0 General ........................................................................................................................................................ 10

5.3.1 Obtain the reception time for messages with the receive statement ............................................................ 10

5.3.2 Obtain the reception time for messages with the trigger statement ............................................................ 11

5.3.3 Obtain the reception time for procedure calls with getcall statement ......................................................... 11

5.3.4 Obtain the reception time for procedure replies with the getreply statement .............................................. 12

5.3.5 Obtain the reception time for exceptions with the catch statement ............................................................. 12

5.4 The wait statement............................................................................................................................................ 13

5.5 Measuring timing information for outgoing communication operations .......................................................... 13

5.5.0 General ........................................................................................................................................................ 13

5.5.1 Obtain the sending time for messages with the send statement .................................................................. 14

5.5.2 Obtain the sending time for procedure calls with call statement ................................................................ 14

5.5.3 Obtain the sending time for procedure replies with the reply statement ..................................................... 14

5.5.4 Obtain the sending time for exceptions with the raise statement ................................................................ 14

6 TRI extensions for the package .............................................................................................................. 15

6.1 triStartClock (TE → PA) .................................................................................................................................. 15

6.2 triReadClock (TE → PA) ................................................................................................................................. 15

6.3 triBeginWait (TE → PA) ................................................................................................................................. 15

6.4 triEndWait (PA → TE) ..................................................................................................................................... 16

6.5 triWaitUntil (SA → PA) ................................................................................................................................... 16

6.6 Communication Operations .............................................................................................................................. 16

6.6.0 General ........................................................................................................................................................ 16

6.6.1 triSendRT (TE → SA) ................................................................................................................................ 17

6.6.2 triSendBCRT (TE → SA) ........................................................................................................................... 17

6.6.3 triSendMCRT (TE → SA) .......................................................................................................................... 18

6.6.4 triEnqueueMsgRT (SA → TE) ................................................................................................................... 18

6.6.5 triCallRT (TE → SA) ................................................................................................................................. 19

6.6.6 triCallBCRT (TE → SA) ............................................................................................................................ 20

6.6.7 triCallMCRT (TE → SA) ........................................................................................................................... 21

6.6.8 triReplyRT (TE → SA) ............................................................................................................................... 22

6.6.9 triReplyBCRT (TE → SA) ......................................................................................................................... 23

6.6.10 triReplyMCRT (TE → SA) ........................................................................................................................ 24

6.6.11 triRaiseRT (TE → SA) ............................................................................................................................... 25

ETSI
---------------------- Page: 3 ----------------------
4 ETSI ES 202 782 V1.4.1 (2022-06)

6.6.12 triRaiseBCRT (TE → SA) .......................................................................................................................... 25

6.6.13 triRaiseMCRT (TE → SA) ......................................................................................................................... 26

6.6.14 triEnqueueCallRT (SA → TE) .................................................................................................................... 26

6.6.15 triEnqueueReplyRT (SA → TE) ................................................................................................................. 27

6.6.16 triEnqueueExceptionRT (SA → TE) .......................................................................................................... 27

6.7 Definition of Interfaces .................................................................................................................................... 28

6.8 Changes for Java Language Mapping........................................................................................................... 28

6.8.0 General ........................................................................................................................................................ 28

6.8.1 Mapping of interface triCommunicationSART .......................................................................................... 28

6.8.2 Mapping of interface triCommunicationTERT ........................................................................................... 29

6.8.3 Mapping of interface triPlatformPART ...................................................................................................... 29

6.8.4 Mapping of interface triPlatformTE ........................................................................................................... 30

6.9 Changes for ANSI C Language Mapping ......................................................................................................... 30

6.10 Changes for C++ Language Mapping .............................................................................................................. 32

6.10.1 Mapping of interface triCommunicationSART .......................................................................................... 32

6.10.2 Mapping of interface triCommunicationTERT ........................................................................................... 33

6.10.3 Mapping of interface triPlatformPART ...................................................................................................... 33

6.10.4 Mapping of interface triPlatformTERT ...................................................................................................... 33

7 TCI extensions for the package .............................................................................................................. 34

Annex A (normative): BNF and static semantics .............................................................................. 35

A.1 Changed BNF Rules ............................................................................................................................... 35

A.2 New BNF Rules ..................................................................................................................................... 35

Annex B (informative): Bibliography ................................................................................................... 36

History .............................................................................................................................................................. 37

ETSI
---------------------- Page: 4 ----------------------
5 ETSI ES 202 782 V1.4.1 (2022-06)
Intellectual Property Rights
Essential patents

IPRs essential or potentially essential to normative deliverables may have been declared to ETSI. The declarations

pertaining to these essential IPRs, if any, are publicly available for ETSI members and non-members, and can be

found in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to

ETSI in respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the

ETSI Web server (https://ipr.etsi.org/).

Pursuant to the ETSI Directives including the ETSI IPR Policy, no investigation regarding the essentiality of IPRs,

including IPR searches, has been carried out by ETSI. No guarantee can be given as to the existence of other IPRs not

referenced in ETSI SR 000 314 (or the updates on the ETSI Web server) which are, or may be, or may become,

essential to the present document.
Trademarks

The present document may include trademarks and/or tradenames which are asserted and/or registered by their owners.

ETSI claims no ownership of these except for any which are indicated as being the property of ETSI, and conveys no

right to use or reproduce any trademark and/or tradename. Mention of those trademarks in the present document does

not constitute an endorsement by ETSI of products, services or organizations associated with those trademarks.

DECT™, PLUGTESTS™, UMTS™ and the ETSI logo are trademarks of ETSI registered for the benefit of its

Members. 3GPP™ and LTE™ are trademarks of ETSI registered for the benefit of its Members and of the 3GPP

Organizational Partners. oneM2M™ logo is a trademark of ETSI registered for the benefit of its Members and of the

oneM2M Partners. GSM and the GSM logo are trademarks registered and owned by the GSM Association.

Foreword

This ETSI Standard (ES) has been produced by ETSI Technical Committee Methods for Testing and Specification

(MTS).

The present document relates to the multi-part standard ETSI ES 201 873 covering the Testing and Test Control

Notation version 3, as identified in ETSI ES 201 873-1 [1].
Modal verbs terminology

In the present document "shall", "shall not", "should", "should not", "may", "need not", "will", "will not", "can" and

"cannot" are to be interpreted as described in clause 3.2 of the ETSI Drafting Rules (Verbal forms for the expression of

provisions).

"must" and "must not" are NOT allowed in ETSI deliverables except when used in direct citation.

ETSI
---------------------- Page: 5 ----------------------
6 ETSI ES 202 782 V1.4.1 (2022-06)
1 Scope

The present document defines the real time and performance testing support package of TTCN-3. TTCN-3 can be used

for the specification of all types of reactive system tests over a variety of communication ports. Typical areas of

application are protocol testing (including mobile and Internet protocols), service testing (including supplementary

services), module testing, testing of OMG CORBA based platforms, APIs, etc. TTCN-3 is not restricted to conformance

testing and can be used for many other kinds of testing including interoperability, robustness, regression, system and

integration testing. The specification of test suites for physical layer protocols is outside the scope of the present

document.

TTCN-3 packages are intended to define additional TTCN-3 concepts, which are not mandatory as concepts in the

TTCN-3 core language, but which are optional as part of a package which is suited for dedicated applications and/or

usages of TTCN-3.

While the design of TTCN-3 package has taken into account the consistency of a combined usage of the core language

with a number of packages, the concrete usages of and guidelines for this package in combination with other packages

is outside the scope of the present document.
2 References
2.1 Normative references

References are either specific (identified by date of publication and/or edition number or version number) or

non-specific. For specific references, only the cited version applies. For non-specific references, the latest version of the

reference document (including any amendments) applies.

Referenced documents which are not found to be publicly available in the expected location might be found at

https://docbox.etsi.org/Reference.

NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee

their long term validity.

The following referenced documents are necessary for the application of the present document.

[1] ETSI ES 201 873-1 (V4.6.1): "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-4 (V4.4.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 4: TTCN-3 Operational Semantics".

[3] ETSI ES 201 873-5 (V4.6.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 5: TTCN-3 Runtime Interface (TRI)".

[4] ETSI ES 201 873-6 (V4.6.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 6: TTCN-3 Control Interface (TCI)".

[5] ISO/IEC 9646-1: "Information technology - Open Systems Interconnection - Conformance testing

methodology and framework; Part 1: General concepts".
2.2 Informative references

References are either specific (identified by date of publication and/or edition number or version number) or

non-specific. For specific references, only the cited version applies. For non-specific references, the latest version of the

reference document (including any amendments) applies.

NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee

their long term validity.
ETSI
---------------------- Page: 6 ----------------------
7 ETSI ES 202 782 V1.4.1 (2022-06)

The following referenced documents are not necessary for the application of the present document but they assist the

user with regard to a particular subject area.

[i.1] ETSI ES 201 873-7 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 7: Using ASN.1 with TTCN-3".

[i.2] ETSI ES 201 873-8 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 8: The IDL to TTCN-3 Mapping".

[i.3] ETSI ES 201 873-9 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 9: Using XML schema with TTCN-3".

[i.4] ETSI ES 201 873-10 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 10: TTCN-3 Documentation Comment Specification".

3 Definition of terms, symbols and abbreviations
3.1 Terms

For the purposes of the present document, the terms given in ETSI ES 201 873-1 [1], ETSI ES 201 873-4 [2], ETSI

ES 201 873-5 [3], ETSI ES 201 873-6 [4] and ISO/IEC 9646-1 [5] apply.
3.2 Symbols
Void.
3.3 Abbreviations

For the purposes of the present document, the abbreviations given in ETSI ES 201 873-1 [1], ETSI ES 201 873-4 [2],

ETSI ES 201 873-5 [3], ETSI ES 201 873-6 [4] and ISO/IEC 9646-1 [5] apply.
4 Package conformance and compatibility
The package presented in the present document is identified by the package tag:

"TTCN-3:2014 Real Time and Performance Testing" - to be used with modules complying with the

present document.

For an implementation claiming to conform to this package version, all features specified in the present document shall

be implemented consistently with the requirements given in the present document and in ETSI ES 201 873-1 [1], ETSI

ES 201 873-4 [2], ETSI ES 201 873-5 [3] and ETSI ES 201 873-6 [4].
The package presented in the present document is compatible with:
• ETSI ES 201 873-1 (V4.6.1) [1]
• ETSI ES 201 873-4 (V4.4.1) [2]
• ETSI ES 201 873-5 (V4.6.1) [3]
• ETSI ES 201 873-6 (V4.6.1) [4]
• ETSI ES 201 873-7 (V4.5.1) [i.1]
• ETSI ES 201 873-8 (V4.5.1) [i.2]
• ETSI ES 201 873-9 (V4.5.1) [i.3]
ETSI
---------------------- Page: 7 ----------------------
8 ETSI ES 202 782 V1.4.1 (2022-06)
• ETSI ES 201 873-10 (V4.5.1) [i.4]

If later versions of those parts are available and should be used instead, the compatibility to the package presented in the

present document has to be checked individually. The present document is also compatible with the versions V4.2.1,

V4.3.1, V4.4.1 and V4.5.1 of the above documents.
5 Package concepts for the core language
5.0 General

Real-time systems have to respect special requirements for timing. Often functional requirements are directly connected

to the timing of the messages and procedure calls. Thus, checking the message values and the message order is not

sufficient here. A test component shall be able to check whether a message has been received in time and shall be able

to control the timing for the stimulation.

Thus, a test language has to provide means to measure time, to specify time points and time spans, to control the timing

of the stimulation, and to calculate and compare time values. Moreover the test execution engine has to ensure that the

specified actions (time measurement, timed stimulation) are executed correctly with respect to the required precision.

To fulfil the requirements for testing real time system the following TTCN-3 core language extensions have been

defined:

• A test system wide available test system clock, that allows the measurement of time during test case execution.

• Means to directly and precisely access the time points of the relevant interaction events between the test

system and the system under test.

Real-time measurements at ports require additional resources (e.g. functionality that monitor ports and collect

timestamps that describe the reception time of messages, calls, replies or exceptions) that may slow down the test

execution. In order to avoid unnecessary delays at ports, such resources may only be provided when needed. An

additional real-time clause for ports shall indicate the need for real-time measurement at a port.

5.1 The test system clock
5.1.0 General

In RT TTCN-3 time progress is measured with a test system clock. The clock is initialized (set to 0.0) at the beginning

of each test case execution and is available during the complete test run in each component. The clock values are

represented as float values. The system clock and the already available TTCN-3 timer mechanisms are synchronized

with respect to time progress.
5.1.1 Accessing the current test system time

The current value of the test system clock by means of the symbol now. The now symbol is used as a TTCN-3

expression that yields the current test system clock value in seconds. The test system clock value is represented by

means of a float number. The symbol now can be applied in each expression inside of testcase definitions and

function definitions. It is not allowed for the TTCN-3 control part and in guard conditions of alt branches.

EXAMPLE 1:
// Use of now to retrieve the actual time
var float myTimePoint := now;
EXAMPLE 2:
// Use of now to retrieve the send time of a message
var float sendTimePoint;
// ...
p.send(m);
sendTimePoint:= now;
ETSI
---------------------- Page: 8 ----------------------
9 ETSI ES 202 782 V1.4.1 (2022-06)
EXAMPLE 3:
// Measuring time progress
var float startTime;
startTime:= now;
p.send(m1);
// ...
p.receive(m2);
if(now-startTime >= 10.0){...};
Syntactical Structure
OpCall ::= ConfigurationOps | VerdictOps | TimerOps | TestcaseInstance |

FunctionInstance | TemplateOps | ActivateOp | NowOperation

NowOperation ::= NowKeyword
NowKeyword ::= "now"
5.1.2 The precision of the system time

The requirements on the overall precision of the test system clock can be specified by means of the stepsize annotation.

The stepsize annotation is allowed for modules only and can be used to state the minimal necessary precision for time

measurement provided by the test system clock. The precision is defined by means of a charstring value that represents

a decimal number which states the smallest necessary time distance in seconds that is measurable by the test system

clock. A concrete test system has to fulfil the requirements given by the stepsize annotation to be adequate for the

execution of the respective test case definitions. When a test system is not adequate for the test case execution the user

shall be informed, at least test run shall end with an error verdict.
EXAMPLE:
// specifies the requirement on a necessary precision of a millisecond
module myModule{
} with {stepsize “0.001”};

In case of module imports with different stepsize annotation the test system has to respect the stepsize annotation with

the highest precision.
5.2 Communication port types for real-time measurements

This package extends the port type definition of message-based and procedure-based ports with a realtime clause.

Ports facilitate communication between test components and between test components and the test system interface.

Only instances of ports with a realtime clause shall be used for real-time measurements. This means, the redirection

operator -> timestamp shall only be used by receiving operations (i.e. the operations receive, trigger,

getcall, getreply and catch) applied to ports with a realtime clause.
Syntactical Structure
Message-based port:
type port PortTypeIdentifier message [realtime] "{"
{ ( in | out | inout ) { MessageType [ "," ] }+ ";" }
"}"
Procedure-based port:
type port PortTypeIdentifier procedure [realtime] "{"
{ ( in | out | inout ) { Signature [ "," ] }+ ";" }
"}"
ETSI
---------------------- Page: 9 ----------------------
10 ETSI ES 202 782 V1.4.1 (2022-06)
5.3 Measuring timing information for dedicated incoming
communication events
5.3.0 General

Testing real time systems requires exact timing information that relates directly to the communication (reception and

distribution of messages and procedure calls) between the test system and the system under test. The timin

...

Final draft ETSI ES 202 782 V1.4.1 (2022-04)
ETSI STANDARD
Methods for Testing and Specification (MTS);
The Testing and Test Control Notation version 3;
TTCN-3 Language Extensions:
Performance and Real Time Testing
---------------------- Page: 1 ----------------------
2 Final draft ETSI ES 202 782 V1.4.1 (2022-04)
Reference
RES/MTS-202782 ed141RealtPer
Keywords
performance, real time, 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 - APE 7112B
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° w061004871
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 prevailing version of an ETSI

deliverable is the one made publicly available in PDF format at www.etsi.org/deliver.

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

If you find a security vulnerability in the present document, please report it through our

Coordinated Vulnerability Disclosure Program:
https://www.etsi.org/standards/coordinated-vulnerability-disclosure
Notice of disclaimer & limitation of liability

The information provided in the present deliverable is directed solely to professionals who have the appropriate degree of

experience to understand and interpret its content in accordance with generally accepted engineering or

other professional standard and applicable regulations.

No recommendation as to products and services or vendors is made or should be implied.

No representation or warranty is made that this deliverable is technically accurate or sufficient or conforms to any law

rule and/or regulation and further, no representation or warranty is made of merchantability or fitness

and/or governmental

for any particular purpose or against infringement of intellectual property rights.

In no event shall ETSI be held liable for loss of profits or any other incidental or consequential damages.

Any software contained in this deliverable is provided "AS IS" with no warranties, express or implied, including but not

limited to, the warranties of merchantability, fitness for a particular purpose and non-infringement of intellectual property

rights and ETSI shall not be held liable in any event for any damages whatsoever (including, without limitation, damages

for loss of profits, business interruption, loss of information, or any other pecuniary loss) arising out of or related to the use

of or inability to use the software.
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 2022.
All rights reserved.
ETSI
---------------------- Page: 2 ----------------------
3 Final draft ETSI ES 202 782 V1.4.1 (2022-04)
Contents

Intellectual Property Rights ................................................................................................................................ 5

Foreword ............................................................................................................................................................. 5

Modal verbs terminology .................................................................................................................................... 5

1 Scope ........................................................................................................................................................ 6

2 References ................................................................................................................................................ 6

2.1 Normative references ......................................................................................................................................... 6

2.2 Informative references ........................................................................................................................................ 6

3 Definition of terms, symbols and abbreviations ....................................................................................... 7

3.1 Terms .................................................................................................................................................................. 7

3.2 Symbols .............................................................................................................................................................. 7

3.3 Abbreviations ..................................................................................................................................................... 7

4 Package conformance and compatibility .................................................................................................. 7

5 Package concepts for the core language ................................................................................................... 8

5.0 General ............................................................................................................................................................... 8

5.1 The test system clock ......................................................................................................................................... 8

5.1.0 General .......................................................................................................................................................... 8

5.1.1 Accessing the current test system time ......................................................................................................... 8

5.1.2 The precision of the system time .................................................................................................................. 9

5.2 Communication port types for real-time measurements ..................................................................................... 9

5.3 Measuring timing information for dedicated incoming communication events ............................................... 10

5.3.0 General ........................................................................................................................................................ 10

5.3.1 Obtain the reception time for messages with the receive statement ............................................................ 10

5.3.2 Obtain the reception time for messages with the trigger statement ............................................................ 11

5.3.3 Obtain the reception time for procedure calls with getcall statement ......................................................... 11

5.3.4 Obtain the reception time for procedure replies with the getreply statement .............................................. 12

5.3.5 Obtain the reception time for exceptions with the catch statement ............................................................. 12

5.4 The wait statement............................................................................................................................................ 13

5.5 Measuring timing information for outgoing communication operations .......................................................... 13

5.5.0 General ........................................................................................................................................................ 13

5.5.1 Obtain the sending time for messages with the send statement .................................................................. 14

5.5.2 Obtain the sending time for procedure calls with call statement ................................................................ 14

5.5.3 Obtain the sending time for procedure replies with the reply statement ..................................................... 14

5.5.4 Obtain the sending time for exceptions with the raise statement ................................................................ 14

6 TRI extensions for the package .............................................................................................................. 15

6.1 triStartClock (TE → PA) .................................................................................................................................. 15

6.2 triReadClock (TE → PA) ................................................................................................................................. 15

6.3 triBeginWait (TE → PA) ................................................................................................................................. 15

6.4 triEndWait (PA → TE) ..................................................................................................................................... 16

6.5 triWaitUntil (SA → PA) ................................................................................................................................... 16

6.6 Communication Operations .............................................................................................................................. 16

6.6.0 General ........................................................................................................................................................ 16

6.6.1 triSendRT (TE → SA) ................................................................................................................................ 17

6.6.2 triSendBCRT (TE → SA) ........................................................................................................................... 17

6.6.3 triSendMCRT (TE → SA) .......................................................................................................................... 18

6.6.4 triEnqueueMsgRT (SA → TE) ................................................................................................................... 18

6.6.5 triCallRT (TE → SA) ................................................................................................................................. 19

6.6.6 triCallBCRT (TE → SA) ............................................................................................................................ 20

6.6.7 triCallMCRT (TE → SA) ........................................................................................................................... 21

6.6.8 triReplyRT (TE → SA) ............................................................................................................................... 22

6.6.9 triReplyBCRT (TE → SA) ......................................................................................................................... 23

6.6.10 triReplyMCRT (TE → SA) ........................................................................................................................ 24

6.6.11 triRaiseRT (TE → SA) ............................................................................................................................... 25

ETSI
---------------------- Page: 3 ----------------------
4 Final draft ETSI ES 202 782 V1.4.1 (2022-04)

6.6.12 triRaiseBCRT (TE → SA) .......................................................................................................................... 25

6.6.13 triRaiseMCRT (TE → SA) ......................................................................................................................... 26

6.6.14 triEnqueueCallRT (SA → TE) .................................................................................................................... 26

6.6.15 triEnqueueReplyRT (SA → TE) ................................................................................................................. 27

6.6.16 triEnqueueExceptionRT (SA → TE) .......................................................................................................... 27

6.7 Definition of Interfaces .................................................................................................................................... 28

6.8 Changes for Java Language Mapping........................................................................................................... 28

6.8.0 General ........................................................................................................................................................ 28

6.8.1 Mapping of interface triCommunicationSART .......................................................................................... 28

6.8.2 Mapping of interface triCommunicationTERT ........................................................................................... 29

6.8.3 Mapping of interface triPlatformPART ...................................................................................................... 29

6.8.4 Mapping of interface triPlatformTE ........................................................................................................... 30

6.9 Changes for ANSI C Language Mapping ......................................................................................................... 30

6.10 Changes for C++ Language Mapping .............................................................................................................. 32

6.10.1 Mapping of interface triCommunicationSART .......................................................................................... 32

6.10.2 Mapping of interface triCommunicationTERT ........................................................................................... 33

6.10.3 Mapping of interface triPlatformPART ...................................................................................................... 33

6.10.4 Mapping of interface triPlatformTERT ...................................................................................................... 33

7 TCI extensions for the package .............................................................................................................. 34

Annex A (normative): BNF and static semantics .............................................................................. 35

A.1 Changed BNF Rules ............................................................................................................................... 35

A.2 New BNF Rules ..................................................................................................................................... 35

Annex B (informative): Bibliography ................................................................................................... 36

History .............................................................................................................................................................. 37

ETSI
---------------------- Page: 4 ----------------------
5 Final draft ETSI ES 202 782 V1.4.1 (2022-04)
Intellectual Property Rights
Essential patents

IPRs essential or potentially essential to normative deliverables may have been declared to ETSI. The declarations

pertaining to these essential IPRs, if any, are publicly available for ETSI members and non-members, and can be

found in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to

ETSI in respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the

ETSI Web server (https://ipr.etsi.org/).

Pursuant to the ETSI Directives including the ETSI IPR Policy, no investigation regarding the essentiality of IPRs,

including IPR searches, has been carried out by ETSI. No guarantee can be given as to the existence of other IPRs not

referenced in ETSI SR 000 314 (or the updates on the ETSI Web server) which are, or may be, or may become,

essential to the present document.
Trademarks

The present document may include trademarks and/or tradenames which are asserted and/or registered by their owners.

ETSI claims no ownership of these except for any which are indicated as being the property of ETSI, and conveys no

right to use or reproduce any trademark and/or tradename. Mention of those trademarks in the present document does

not constitute an endorsement by ETSI of products, services or organizations associated with those trademarks.

DECT™, PLUGTESTS™, UMTS™ and the ETSI logo are trademarks of ETSI registered for the benefit of its

Members. 3GPP™ and LTE™ are trademarks of ETSI registered for the benefit of its Members and of the 3GPP

Organizational Partners. oneM2M™ logo is a trademark of ETSI registered for the benefit of its Members and of the

oneM2M Partners. GSM and the GSM logo are trademarks registered and owned by the GSM Association.

Foreword

This final draft ETSI Standard (ES) has been produced by ETSI Technical Committee Methods for Testing and

Specification (MTS), and is now submitted for the ETSI standards Membership Approval Procedure.

The present document relates to the multi-part standard ETSI ES 201 873 covering the Testing and Test Control

Notation version 3, as identified in ETSI ES 201 873-1 [1].
Modal verbs terminology

In the present document "shall", "shall not", "should", "should not", "may", "need not", "will", "will not", "can" and

"cannot" are to be interpreted as described in clause 3.2 of the ETSI Drafting Rules (Verbal forms for the expression of

provisions).

"must" and "must not" are NOT allowed in ETSI deliverables except when used in direct citation.

ETSI
---------------------- Page: 5 ----------------------
6 Final draft ETSI ES 202 782 V1.4.1 (2022-04)
1 Scope

The present document defines the real time and performance testing support package of TTCN-3. TTCN-3 can be used

for the specification of all types of reactive system tests over a variety of communication ports. Typical areas of

application are protocol testing (including mobile and Internet protocols), service testing (including supplementary

services), module testing, testing of OMG CORBA based platforms, APIs, etc. TTCN-3 is not restricted to conformance

testing and can be used for many other kinds of testing including interoperability, robustness, regression, system and

integration testing. The specification of test suites for physical layer protocols is outside the scope of the present

document.

TTCN-3 packages are intended to define additional TTCN-3 concepts, which are not mandatory as concepts in the

TTCN-3 core language, but which are optional as part of a package which is suited for dedicated applications and/or

usages of TTCN-3.

While the design of TTCN-3 package has taken into account the consistency of a combined usage of the core language

with a number of packages, the concrete usages of and guidelines for this package in combination with other packages

is outside the scope of the present document.
2 References
2.1 Normative references

References are either specific (identified by date of publication and/or edition number or version number) or

non-specific. For specific references, only the cited version applies. For non-specific references, the latest version of the

reference document (including any amendments) applies.

Referenced documents which are not found to be publicly available in the expected location might be found at

https://docbox.etsi.org/Reference.

NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee

their long term validity.

The following referenced documents are necessary for the application of the present document.

[1] ETSI ES 201 873-1 (V4.6.1): "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-4 (V4.4.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 4: TTCN-3 Operational Semantics".

[3] ETSI ES 201 873-5 (V4.6.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 5: TTCN-3 Runtime Interface (TRI)".

[4] ETSI ES 201 873-6 (V4.6.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 6: TTCN-3 Control Interface (TCI)".

[5] ISO/IEC 9646-1: "Information technology - Open Systems Interconnection - Conformance testing

methodology and framework; Part 1: General concepts".
2.2 Informative references

References are either specific (identified by date of publication and/or edition number or version number) or

non-specific. For specific references, only the cited version applies. For non-specific references, the latest version of the

reference document (including any amendments) applies.

NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee

their long term validity.
ETSI
---------------------- Page: 6 ----------------------
7 Final draft ETSI ES 202 782 V1.4.1 (2022-04)

The following referenced documents are not necessary for the application of the present document but they assist the

user with regard to a particular subject area.

[i.1] ETSI ES 201 873-7 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 7: Using ASN.1 with TTCN-3".

[i.2] ETSI ES 201 873-8 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 8: The IDL to TTCN-3 Mapping".

[i.3] ETSI ES 201 873-9 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 9: Using XML schema with TTCN-3".

[i.4] ETSI ES 201 873-10 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 10: TTCN-3 Documentation Comment Specification".

3 Definition of terms, symbols and abbreviations
3.1 Terms

For the purposes of the present document, the terms given in ETSI ES 201 873-1 [1], ETSI ES 201 873-4 [2], ETSI

ES 201 873-5 [3], ETSI ES 201 873-6 [4] and ISO/IEC 9646-1 [5] apply.
3.2 Symbols
Void.
3.3 Abbreviations

For the purposes of the present document, the abbreviations given in ETSI ES 201 873-1 [1], ETSI ES 201 873-4 [2],

ETSI ES 201 873-5 [3], ETSI ES 201 873-6 [4] and ISO/IEC 9646-1 [5] apply.
4 Package conformance and compatibility
The package presented in the present document is identified by the package tag:

"TTCN-3:2014 Real Time and Performance Testing" - to be used with modules complying with the

present document.

For an implementation claiming to conform to this package version, all features specified in the present document shall

be implemented consistently with the requirements given in the present document and in ETSI ES 201 873-1 [1], ETSI

ES 201 873-4 [2], ETSI ES 201 873-5 [3] and ETSI ES 201 873-6 [4].
The package presented in the present document is compatible with:
• ETSI ES 201 873-1 (V4.6.1) [1]
• ETSI ES 201 873-4 (V4.4.1) [2]
• ETSI ES 201 873-5 (V4.6.1) [3]
• ETSI ES 201 873-6 (V4.6.1) [4]
• ETSI ES 201 873-7 (V4.5.1) [i.1]
• ETSI ES 201 873-8 (V4.5.1) [i.2]
• ETSI ES 201 873-9 (V4.5.1) [i.3]
ETSI
---------------------- Page: 7 ----------------------
8 Final draft ETSI ES 202 782 V1.4.1 (2022-04)
• ETSI ES 201 873-10 (V4.5.1) [i.4]

If later versions of those parts are available and should be used instead, the compatibility to the package presented in the

present document has to be checked individually. The present document is also compatible with the versions V4.2.1,

V4.3.1, V4.4.1 and V4.5.1 of the above documents.
5 Package concepts for the core language
5.0 General

Real-time systems have to respect special requirements for timing. Often functional requirements are directly connected

to the timing of the messages and procedure calls. Thus, checking the message values and the message order is not

sufficient here. A test component shall be able to check whether a message has been received in time and shall be able

to control the timing for the stimulation.

Thus, a test language has to provide means to measure time, to specify time points and time spans, to control the timing

of the stimulation, and to calculate and compare time values. Moreover the test execution engine has to ensure that the

specified actions (time measurement, timed stimulation) are executed correctly with respect to the required precision.

To fulfil the requirements for testing real time system the following TTCN-3 core language extensions have been

defined:

• A test system wide available test system clock, that allows the measurement of time during test case execution.

• Means to directly and precisely access the time points of the relevant interaction events between the test

system and the system under test.

Real-time measurements at ports require additional resources (e.g. functionality that monitor ports and collect

timestamps that describe the reception time of messages, calls, replies or exceptions) that may slow down the test

execution. In order to avoid unnecessary delays at ports, such resources may only be provided when needed. An

additional real-time clause for ports shall indicate the need for real-time measurement at a port.

5.1 The test system clock
5.1.0 General

In RT TTCN-3 time progress is measured with a test system clock. The clock is initialized (set to 0.0) at the beginning

of each test case execution and is available during the complete test run in each component. The clock values are

represented as float values. The system clock and the already available TTCN-3 timer mechanisms are synchronized

with respect to time progress.
5.1.1 Accessing the current test system time

The current value of the test system clock by means of the symbol now. The now symbol is used as a TTCN-3

expression that yields the current test system clock value in seconds. The test system clock value is represented by

means of a float number. The symbol now can be applied in each expression inside of testcase definitions and

function definitions. It is not allowed for the TTCN-3 control part and in guard conditions of alt branches.

EXAMPLE 1:
// Use of now to retrieve the actual time
var float myTimePoint := now;
EXAMPLE 2:
// Use of now to retrieve the send time of a message
var float sendTimePoint;
// ...
p.send(m);
sendTimePoint:= now;
ETSI
---------------------- Page: 8 ----------------------
9 Final draft ETSI ES 202 782 V1.4.1 (2022-04)
EXAMPLE 3:
// Measuring time progress
var float startTime;
startTime:= now;
p.send(m1);
// ...
p.receive(m2);
if(now-startTime >= 10.0){...};
Syntactical Structure
OpCall ::= ConfigurationOps | VerdictOps | TimerOps | TestcaseInstance |

FunctionInstance | TemplateOps | ActivateOp | NowOperation

NowOperation ::= NowKeyword
NowKeyword ::= "now"
5.1.2 The precision of the system time

The requirements on the overall precision of the test system clock can be specified by means of the stepsize annotation.

The stepsize annotation is allowed for modules only and can be used to state the minimal necessary precision for time

measurement provided by the test system clock. The precision is defined by means of a charstring value that represents

a decimal number which states the smallest necessary time distance in seconds that is measurable by the test system

clock. A concrete test system has to fulfil the requirements given by the stepsize annotation to be adequate for the

execution of the respective test case definitions. When a test system is not adequate for the test case execution the user

shall be informed, at least test run shall end with an error verdict.
EXAMPLE:
// specifies the requirement on a necessary precision of a millisecond
module myModule{
} with {stepsize “0.001”};

In case of module imports with different stepsize annotation the test system has to respect the stepsize annotation with

the highest precision.
5.2 Communication port types for real-time measurements

This package extends the port type definition of message-based and procedure-based ports with a realtime clause.

Ports facilitate communication between test components and between test components and the test system interface.

Only instances of ports with a realtime clause shall be used for real-time measurements. This means, the redirection

operator -> timestamp shall only be used by receiving operations (i.e. the operations receive, trigger,

getcall, getreply and catch) applied to ports with a realtime clause.
Syntactical Structure
Message-based port:
type port PortTypeIdentifier message [realtime] "{"
{ ( in | out | inout ) { MessageType [ "," ] }+ ";" }
"}"
Procedure-based port:
type port PortTypeIdentifier procedure [realtime] "{"
{ ( in | out | inout ) { Signature [ "," ] }+ ";" }
"}"
ETSI
---------------------- Page: 9 ----------------------
10 Final draft ETSI ES 202 782 V1.4.1 (2022-04)
5.3 Measuring timing information for dedicated incoming
communication events
5.3.0 General
Testing real time systems
...

SLOVENSKI STANDARD
SIST ES 202 782 V1.4.1:2022
01-september-2022

Metode za preskušanje in specificiranje (MTS) - 3. različica preskušanja in zapisa

krmilnih preskusov - Razširitev nabora jezikov TTCN-3: zmogljivost in
realnočasovno preskušanje

Methods for Testing and Specification (MTS) - The Testing and Test Control Notation

version 3 - TTCN-3 Language Extensions: Performance and Real Time Testing
Ta slovenski standard je istoveten z: ETSI ES 202 782 V1.4.1 (2022-06)
ICS:
35.060 Jeziki, ki se uporabljajo v Languages used in
informacijski tehniki in information technology
tehnologiji
SIST ES 202 782 V1.4.1:2022 en

2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

---------------------- Page: 1 ----------------------
SIST ES 202 782 V1.4.1:2022
---------------------- Page: 2 ----------------------
SIST ES 202 782 V1.4.1:2022
ETSI ES 202 782 V1.4.1 (2022-06)
ETSI STANDARD
Methods for Testing and Specification (MTS);
The Testing and Test Control Notation version 3;
TTCN-3 Language Extensions:
Performance and Real Time Testing
---------------------- Page: 3 ----------------------
SIST ES 202 782 V1.4.1:2022
2 ETSI ES 202 782 V1.4.1 (2022-06)
Reference
RES/MTS-202782 ed141RealtPer
Keywords
performance, real time, 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 - APE 7112B
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° w061004871
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 prevailing version of an ETSI

deliverable is the one made publicly available in PDF format at www.etsi.org/deliver.

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

If you find a security vulnerability in the present document, please report it through our

Coordinated Vulnerability Disclosure Program:
https://www.etsi.org/standards/coordinated-vulnerability-disclosure
Notice of disclaimer & limitation of liability

The information provided in the present deliverable is directed solely to professionals who have the appropriate degree of

experience to understand and interpret its content in accordance with generally accepted engineering or

other professional standard and applicable regulations.

No recommendation as to products and services or vendors is made or should be implied.

No representation or warranty is made that this deliverable is technically accurate or sufficient or conforms to any law

rule and/or regulation and further, no representation or warranty is made of merchantability or fitness

and/or governmental

for any particular purpose or against infringement of intellectual property rights.

In no event shall ETSI be held liable for loss of profits or any other incidental or consequential damages.

Any software contained in this deliverable is provided "AS IS" with no warranties, express or implied, including but not

limited to, the warranties of merchantability, fitness for a particular purpose and non-infringement of intellectual property

rights and ETSI shall not be held liable in any event for any damages whatsoever (including, without limitation, damages

for loss of profits, business interruption, loss of information, or any other pecuniary loss) arising out of or related to the use

of or inability to use the software.
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 2022.
All rights reserved.
ETSI
---------------------- Page: 4 ----------------------
SIST ES 202 782 V1.4.1:2022
3 ETSI ES 202 782 V1.4.1 (2022-06)
Contents

Intellectual Property Rights ................................................................................................................................ 5

Foreword ............................................................................................................................................................. 5

Modal verbs terminology .................................................................................................................................... 5

1 Scope ........................................................................................................................................................ 6

2 References ................................................................................................................................................ 6

2.1 Normative references ......................................................................................................................................... 6

2.2 Informative references ........................................................................................................................................ 6

3 Definition of terms, symbols and abbreviations ....................................................................................... 7

3.1 Terms .................................................................................................................................................................. 7

3.2 Symbols .............................................................................................................................................................. 7

3.3 Abbreviations ..................................................................................................................................................... 7

4 Package conformance and compatibility .................................................................................................. 7

5 Package concepts for the core language ................................................................................................... 8

5.0 General ............................................................................................................................................................... 8

5.1 The test system clock ......................................................................................................................................... 8

5.1.0 General .......................................................................................................................................................... 8

5.1.1 Accessing the current test system time ......................................................................................................... 8

5.1.2 The precision of the system time .................................................................................................................. 9

5.2 Communication port types for real-time measurements ..................................................................................... 9

5.3 Measuring timing information for dedicated incoming communication events ............................................... 10

5.3.0 General ........................................................................................................................................................ 10

5.3.1 Obtain the reception time for messages with the receive statement ............................................................ 10

5.3.2 Obtain the reception time for messages with the trigger statement ............................................................ 11

5.3.3 Obtain the reception time for procedure calls with getcall statement ......................................................... 11

5.3.4 Obtain the reception time for procedure replies with the getreply statement .............................................. 12

5.3.5 Obtain the reception time for exceptions with the catch statement ............................................................. 12

5.4 The wait statement............................................................................................................................................ 13

5.5 Measuring timing information for outgoing communication operations .......................................................... 13

5.5.0 General ........................................................................................................................................................ 13

5.5.1 Obtain the sending time for messages with the send statement .................................................................. 14

5.5.2 Obtain the sending time for procedure calls with call statement ................................................................ 14

5.5.3 Obtain the sending time for procedure replies with the reply statement ..................................................... 14

5.5.4 Obtain the sending time for exceptions with the raise statement ................................................................ 14

6 TRI extensions for the package .............................................................................................................. 15

6.1 triStartClock (TE → PA) .................................................................................................................................. 15

6.2 triReadClock (TE → PA) ................................................................................................................................. 15

6.3 triBeginWait (TE → PA) ................................................................................................................................. 15

6.4 triEndWait (PA → TE) ..................................................................................................................................... 16

6.5 triWaitUntil (SA → PA) ................................................................................................................................... 16

6.6 Communication Operations .............................................................................................................................. 16

6.6.0 General ........................................................................................................................................................ 16

6.6.1 triSendRT (TE → SA) ................................................................................................................................ 17

6.6.2 triSendBCRT (TE → SA) ........................................................................................................................... 17

6.6.3 triSendMCRT (TE → SA) .......................................................................................................................... 18

6.6.4 triEnqueueMsgRT (SA → TE) ................................................................................................................... 18

6.6.5 triCallRT (TE → SA) ................................................................................................................................. 19

6.6.6 triCallBCRT (TE → SA) ............................................................................................................................ 20

6.6.7 triCallMCRT (TE → SA) ........................................................................................................................... 21

6.6.8 triReplyRT (TE → SA) ............................................................................................................................... 22

6.6.9 triReplyBCRT (TE → SA) ......................................................................................................................... 23

6.6.10 triReplyMCRT (TE → SA) ........................................................................................................................ 24

6.6.11 triRaiseRT (TE → SA) ............................................................................................................................... 25

ETSI
---------------------- Page: 5 ----------------------
SIST ES 202 782 V1.4.1:2022
4 ETSI ES 202 782 V1.4.1 (2022-06)

6.6.12 triRaiseBCRT (TE → SA) .......................................................................................................................... 25

6.6.13 triRaiseMCRT (TE → SA) ......................................................................................................................... 26

6.6.14 triEnqueueCallRT (SA → TE) .................................................................................................................... 26

6.6.15 triEnqueueReplyRT (SA → TE) ................................................................................................................. 27

6.6.16 triEnqueueExceptionRT (SA → TE) .......................................................................................................... 27

6.7 Definition of Interfaces .................................................................................................................................... 28

6.8 Changes for Java Language Mapping........................................................................................................... 28

6.8.0 General ........................................................................................................................................................ 28

6.8.1 Mapping of interface triCommunicationSART .......................................................................................... 28

6.8.2 Mapping of interface triCommunicationTERT ........................................................................................... 29

6.8.3 Mapping of interface triPlatformPART ...................................................................................................... 29

6.8.4 Mapping of interface triPlatformTE ........................................................................................................... 30

6.9 Changes for ANSI C Language Mapping ......................................................................................................... 30

6.10 Changes for C++ Language Mapping .............................................................................................................. 32

6.10.1 Mapping of interface triCommunicationSART .......................................................................................... 32

6.10.2 Mapping of interface triCommunicationTERT ........................................................................................... 33

6.10.3 Mapping of interface triPlatformPART ...................................................................................................... 33

6.10.4 Mapping of interface triPlatformTERT ...................................................................................................... 33

7 TCI extensions for the package .............................................................................................................. 34

Annex A (normative): BNF and static semantics .............................................................................. 35

A.1 Changed BNF Rules ............................................................................................................................... 35

A.2 New BNF Rules ..................................................................................................................................... 35

Annex B (informative): Bibliography ................................................................................................... 36

History .............................................................................................................................................................. 37

ETSI
---------------------- Page: 6 ----------------------
SIST ES 202 782 V1.4.1:2022
5 ETSI ES 202 782 V1.4.1 (2022-06)
Intellectual Property Rights
Essential patents

IPRs essential or potentially essential to normative deliverables may have been declared to ETSI. The declarations

pertaining to these essential IPRs, if any, are publicly available for ETSI members and non-members, and can be

found in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to

ETSI in respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the

ETSI Web server (https://ipr.etsi.org/).

Pursuant to the ETSI Directives including the ETSI IPR Policy, no investigation regarding the essentiality of IPRs,

including IPR searches, has been carried out by ETSI. No guarantee can be given as to the existence of other IPRs not

referenced in ETSI SR 000 314 (or the updates on the ETSI Web server) which are, or may be, or may become,

essential to the present document.
Trademarks

The present document may include trademarks and/or tradenames which are asserted and/or registered by their owners.

ETSI claims no ownership of these except for any which are indicated as being the property of ETSI, and conveys no

right to use or reproduce any trademark and/or tradename. Mention of those trademarks in the present document does

not constitute an endorsement by ETSI of products, services or organizations associated with those trademarks.

DECT™, PLUGTESTS™, UMTS™ and the ETSI logo are trademarks of ETSI registered for the benefit of its

Members. 3GPP™ and LTE™ are trademarks of ETSI registered for the benefit of its Members and of the 3GPP

Organizational Partners. oneM2M™ logo is a trademark of ETSI registered for the benefit of its Members and of the

oneM2M Partners. GSM and the GSM logo are trademarks registered and owned by the GSM Association.

Foreword

This ETSI Standard (ES) has been produced by ETSI Technical Committee Methods for Testing and Specification

(MTS).

The present document relates to the multi-part standard ETSI ES 201 873 covering the Testing and Test Control

Notation version 3, as identified in ETSI ES 201 873-1 [1].
Modal verbs terminology

In the present document "shall", "shall not", "should", "should not", "may", "need not", "will", "will not", "can" and

"cannot" are to be interpreted as described in clause 3.2 of the ETSI Drafting Rules (Verbal forms for the expression of

provisions).

"must" and "must not" are NOT allowed in ETSI deliverables except when used in direct citation.

ETSI
---------------------- Page: 7 ----------------------
SIST ES 202 782 V1.4.1:2022
6 ETSI ES 202 782 V1.4.1 (2022-06)
1 Scope

The present document defines the real time and performance testing support package of TTCN-3. TTCN-3 can be used

for the specification of all types of reactive system tests over a variety of communication ports. Typical areas of

application are protocol testing (including mobile and Internet protocols), service testing (including supplementary

services), module testing, testing of OMG CORBA based platforms, APIs, etc. TTCN-3 is not restricted to conformance

testing and can be used for many other kinds of testing including interoperability, robustness, regression, system and

integration testing. The specification of test suites for physical layer protocols is outside the scope of the present

document.

TTCN-3 packages are intended to define additional TTCN-3 concepts, which are not mandatory as concepts in the

TTCN-3 core language, but which are optional as part of a package which is suited for dedicated applications and/or

usages of TTCN-3.

While the design of TTCN-3 package has taken into account the consistency of a combined usage of the core language

with a number of packages, the concrete usages of and guidelines for this package in combination with other packages

is outside the scope of the present document.
2 References
2.1 Normative references

References are either specific (identified by date of publication and/or edition number or version number) or

non-specific. For specific references, only the cited version applies. For non-specific references, the latest version of the

reference document (including any amendments) applies.

Referenced documents which are not found to be publicly available in the expected location might be found at

https://docbox.etsi.org/Reference.

NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee

their long term validity.

The following referenced documents are necessary for the application of the present document.

[1] ETSI ES 201 873-1 (V4.6.1): "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-4 (V4.4.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 4: TTCN-3 Operational Semantics".

[3] ETSI ES 201 873-5 (V4.6.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 5: TTCN-3 Runtime Interface (TRI)".

[4] ETSI ES 201 873-6 (V4.6.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 6: TTCN-3 Control Interface (TCI)".

[5] ISO/IEC 9646-1: "Information technology - Open Systems Interconnection - Conformance testing

methodology and framework; Part 1: General concepts".
2.2 Informative references

References are either specific (identified by date of publication and/or edition number or version number) or

non-specific. For specific references, only the cited version applies. For non-specific references, the latest version of the

reference document (including any amendments) applies.

NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee

their long term validity.
ETSI
---------------------- Page: 8 ----------------------
SIST ES 202 782 V1.4.1:2022
7 ETSI ES 202 782 V1.4.1 (2022-06)

The following referenced documents are not necessary for the application of the present document but they assist the

user with regard to a particular subject area.

[i.1] ETSI ES 201 873-7 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 7: Using ASN.1 with TTCN-3".

[i.2] ETSI ES 201 873-8 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 8: The IDL to TTCN-3 Mapping".

[i.3] ETSI ES 201 873-9 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 9: Using XML schema with TTCN-3".

[i.4] ETSI ES 201 873-10 (V4.5.1): "Methods for Testing and Specification (MTS); The Testing and

Test Control Notation version 3; Part 10: TTCN-3 Documentation Comment Specification".

3 Definition of terms, symbols and abbreviations
3.1 Terms

For the purposes of the present document, the terms given in ETSI ES 201 873-1 [1], ETSI ES 201 873-4 [2], ETSI

ES 201 873-5 [3], ETSI ES 201 873-6 [4] and ISO/IEC 9646-1 [5] apply.
3.2 Symbols
Void.
3.3 Abbreviations

For the purposes of the present document, the abbreviations given in ETSI ES 201 873-1 [1], ETSI ES 201 873-4 [2],

ETSI ES 201 873-5 [3], ETSI ES 201 873-6 [4] and ISO/IEC 9646-1 [5] apply.
4 Package conformance and compatibility
The package presented in the present document is identified by the package tag:

"TTCN-3:2014 Real Time and Performance Testing" - to be used with modules complying with the

present document.

For an implementation claiming to conform to this package version, all features specified in the present document shall

be implemented consistently with the requirements given in the present document and in ETSI ES 201 873-1 [1], ETSI

ES 201 873-4 [2], ETSI ES 201 873-5 [3] and ETSI ES 201 873-6 [4].
The package presented in the present document is compatible with:
• ETSI ES 201 873-1 (V4.6.1) [1]
• ETSI ES 201 873-4 (V4.4.1) [2]
• ETSI ES 201 873-5 (V4.6.1) [3]
• ETSI ES 201 873-6 (V4.6.1) [4]
• ETSI ES 201 873-7 (V4.5.1) [i.1]
• ETSI ES 201 873-8 (V4.5.1) [i.2]
• ETSI ES 201 873-9 (V4.5.1) [i.3]
ETSI
---------------------- Page: 9 ----------------------
SIST ES 202 782 V1.4.1:2022
8 ETSI ES 202 782 V1.4.1 (2022-06)
• ETSI ES 201 873-10 (V4.5.1) [i.4]

If later versions of those parts are available and should be used instead, the compatibility to the package presented in the

present document has to be checked individually. The present document is also compatible with the versions V4.2.1,

V4.3.1, V4.4.1 and V4.5.1 of the above documents.
5 Package concepts for the core language
5.0 General

Real-time systems have to respect special requirements for timing. Often functional requirements are directly connected

to the timing of the messages and procedure calls. Thus, checking the message values and the message order is not

sufficient here. A test component shall be able to check whether a message has been received in time and shall be able

to control the timing for the stimulation.

Thus, a test language has to provide means to measure time, to specify time points and time spans, to control the timing

of the stimulation, and to calculate and compare time values. Moreover the test execution engine has to ensure that the

specified actions (time measurement, timed stimulation) are executed correctly with respect to the required precision.

To fulfil the requirements for testing real time system the following TTCN-3 core language extensions have been

defined:

• A test system wide available test system clock, that allows the measurement of time during test case execution.

• Means to directly and precisely access the time points of the relevant interaction events between the test

system and the system under test.

Real-time measurements at ports require additional resources (e.g. functionality that monitor ports and collect

timestamps that describe the reception time of messages, calls, replies or exceptions) that may slow down the test

execution. In order to avoid unnecessary delays at ports, such resources may only be provided when needed. An

additional real-time clause for ports shall indicate the need for real-time measurement at a port.

5.1 The test system clock
5.1.0 General

In RT TTCN-3 time progress is measured with a test system clock. The clock is initialized (set to 0.0) at the beginning

of each test case execution and is available during the complete test run in each component. The clock values are

represented as float values. The system clock and the already available TTCN-3 timer mechanisms are synchronized

with respect to time progress.
5.1.1 Accessing the current test system time

The current value of the test system clock by means of the symbol now. The now symbol is used as a TTCN-3

expression that yields the current test system clock value in seconds. The test system clock value is represented by

means of a float number. The symbol now can be applied in each expression inside of testcase definitions and

function definitions. It is not allowed for the TTCN-3 control part and in guard conditions of alt branches.

EXAMPLE 1:
// Use of now to retrieve the actual time
var float myTimePoint := now;
EXAMPLE 2:
// Use of now to retrieve the send time of a message
var float sendTimePoint;
// ...
p.send(m);
sendTimePoint:= now;
ETSI
---------------------- Page: 10 ----------------------
SIST ES 202 782 V1.4.1:2022
9 ETSI ES 202 782 V1.4.1 (2022-06)
EXAMPLE 3:
// Measuring time progress
var float startTime;
startTime:= now;
p.send(m1);
// ...
p.receive(m2);
if(now-startTime >= 10.0){...};
Syntactical Structure
OpCall ::= ConfigurationOps | VerdictOps | TimerOps | TestcaseInstance |

FunctionInstance | TemplateOps | ActivateOp | NowOperation

NowOperation ::= NowKeyword
NowKeyword ::= "now"
5.1.2 The precision of the system time

The requirements on the overall precision of the test system clock can be specified by means of the stepsize annotation.

The stepsize annotation is allowed for modules only and can be used to state the minimal necessary precision for time

measurement provided by the test system clock. The precision is defined by means of a charstring value that represents

a decimal number which states the smallest necessary time distance in seconds that is measurable by the test system

clock. A concrete test system has to fulfil the requirements given by the stepsize annotation to be adequate for the

execution of the respective test case definitions. When a test system is not adequate for the test case execution the user

shall be informed, at least test run shall end with an error verdict.
EXAMPLE:
// specifies the requirement on a necessary precision of a millisecond
module myModule{
} with {stepsize “0.001”};

In case of module imports with different stepsize annotation the test system has to respect the stepsize annotation with

the highest precision.
5.2 Communication port types for real-time measurements

This package extends the port type definition of message-based and procedure-based ports

...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.