1、 ETSI ES 203 119-1 V1.3.1 (2016-09) Methods for Testing and Specification (MTS); The Test Description Language (TDL); Part 1: Abstract Syntax and Associated Semantics floppy3ETSI STANDARD ETSI ETSI ES 203 119-1 V1.3.1 (2016-09)2 Reference RES/MTS-203119-1v1.3.1 Keywords language, MBT, methodology, t
2、esting, TSS 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 IPR Policy, no investigation, including IPR searches, h
3、as 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. Foreword This ETSI Standard (ES) has been produced by ETSI Techni
4、cal Committee Methods for Testing and Specification (MTS). The present document is part 1 of a multi-part deliverable covering the Test Description Language, as identified below: Part 1: “Abstract Syntax and Associated Semantics“; Part 2: “Graphical Syntax“; Part 3: “Exchange Format“; Part 4: “Struc
5、tured Test Objective Specification (Extension)“. 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 e
6、xpression of provisions). “must“ and “must not“ are NOT allowed in ETSI deliverables except when used in direct citation. ETSI ETSI ES 203 119-1 V1.3.1 (2016-09)9 1 Scope The present document specifies the abstract syntax of the Test Description Language (TDL) in the form of a meta-model based on th
7、e OMGMeta Object Facility (MOF) 1. It also specifies the semantics of the individual elements of the TDL meta-model. The intended use of the present document is to serve as the basis for the development of TDL concrete syntaxes aimed at TDL users and to enable TDL tools such as documentation generat
8、ors, specification analyzers and code generators. The specification of concrete syntaxes for TDL is outside the scope of the present document. However, for illustrative purposes, an example of a possible textual syntax together with its application on some existing ETSI test descriptions are provide
9、d. NOTE: OMG, UML, OCL and UTP are the trademarks of OMG (Object Management Group). This information is given for the convenience of users of the present document and does not constitute an endorsement by ETSI of the products named. 2 References 2.1 Normative references References are either specifi
10、c (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 referenced document (including any amendments) applies. Referenced documents which are not fo
11、und to be publicly available in the expected location might be found at http:/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
12、application of the present document. 1 OMG: “OMG Meta Object Facility (MOF) Core Specification V2.4.1“, formal/2013-06-01. NOTE: Available at http:/www.omg.org/spec/MOF/2.4.1/. 2 OMG: “OMG Unified Modeling Language (OMG UML) Superstructure, Version 2.4.1“, formal/2011-08-06. NOTE: Available at http:
13、/www.omg.org/spec/UML/2.4.1/. 3 OMG: “Object Constraint Language (OCL), Version 2.4“, formal/2014-02-03. NOTE: Available at http:/www.omg.org/spec/OCL/2.4/. 4 Void. 5 ETSI ES 203 119-3 (V1.2.1): “Methods for Testing and Specification (MTS); The Test Description Language (TDL); Part 3: Exchange Forma
14、t“. 6 ETSI ES 203 119-4 (V1.2.1): “Methods for Testing and Specification (MTS); The Test Description Language (TDL); Part 4: Structured Test Objective Specification (Extension)“. 7 ISO/IEC 9646-1:1994: “Information technology - Open Systems Interconnection - Conformance testing methodology and frame
15、work - Part 1: General concepts“. ETSI ETSI ES 203 119-1 V1.3.1 (2016-09)10 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
16、 references, the latest version of the referenced 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. The following referenced documents are not necessary for the applic
17、ation of the present document but they assist the user with regard to a particular subject area. i.1 ETSI ES 201 873-1 (V4.5.1): “Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; Part 1: TTCN-3 Core Language“. i.2 ETSI TS 136 523-1 (V10.2.0): “LTE; Evolve
18、d Universal Terrestrial Radio Access (E-UTRA) and Evolved Packet Core (EPC); User Equipment (UE) conformance specification; Part 1: Protocol conformance specification (3GPP TS 36.523-1 version 10.2.0 Release 10)“. i.3 ETSI TS 186 011-2: “Core Network and Interoperability Testing (INT); IMS NNI Inter
19、operability Test Specifications (3GPP Release 10); Part 2: Test descriptions for IMS NNI Interoperability“. 3 Definitions and abbreviations 3.1 Definitions For the purposes of the present document, the following terms and definitions apply: abstract syntax: graph structure representing a TDL specifi
20、cation in an independent form of any particular encoding action: any procedure carried out by a component of a test configuration or an actor during test execution actor: abstraction of entities outside a test configuration that interact directly with the components of that test configuration compon
21、ent: active element of a test configuration that is either in the role tester or system under test concrete syntax: particular representation of a TDL specification, encoded in a textual, graphical, tabular or any other format suitable for the users of this language interaction: any form of communic
22、ation between components that is accompanied with an exchange of data meta-model: modelling elements representing the abstract syntax of a language system under test (SUT): role of a component within a test configuration whose behaviour is validated when executing a test description TDL model: insta
23、nce of the TDL meta-model TDL specification: representation of a TDL model given in a concrete syntax test configuration: specification of a set of components that contains at least one tester component and one system under test component plus their interconnections via gates and connections test de
24、scription: specification of test behaviour that runs on a given test configuration test verdict: result from executing a test description tester: role of a component within a test configuration that controls the execution of a test description against the components in the role system under test tes
25、ter-input event: event that occurs at a component in the role tester and determines the subsequent behaviour of this tester component ETSI ETSI ES 203 119-1 V1.3.1 (2016-09)11 : semantical concept denoting an undefined data value 3.2 Abbreviations For the purposes of the present document, the follow
26、ing abbreviations apply: ADT Abstract Data Type EBNF Extended Backus-Naur Form IEC International Electrotechnical Commission IMS IP Multimedia Subsystem ISO International Organization for Standardization MBT Model-Based Testing MOF Meta-Object Facility OCL Object Constraint Language OMG Object Manag
27、ement Group SUT System Under Test TDD Test Driven Development TDL Test Description Language TTCN-3 Testing and Test Control Notation version 3 UML Unified Modelling Language URI Unified Resource Identifier XML eXtensible Markup Language 4 Basic Principles 4.1 What is TDL? TDL is a language that supp
28、orts the design and documentation of formal test descriptions that may be the basis for the implementation of executable tests in a given test framework, such as TTCN-3 i.1. Application areas of TDL that will benefit from this homogeneous approach to the test design phase include: Manual design of t
29、est descriptions from a test purpose specification, user stories in test driven development or other sources. Representation of test descriptions derived from other sources such as MBT test generation tools, system simulators, or test execution traces from test runs. TDL supports the design of black
30、-box tests for distributed, concurrent real-time systems. It is applicable to a wide range of tests including conformance tests, interoperability tests, tests of real-time properties and security tests based on attack traces. TDL clearly separates the specification of tests from their implementation
31、 by providing an abstraction level that lets users of TDL focus on the task of describing tests that cover the given test objectives rather than getting involved in implementing these tests to ensure their fault detection capabilities onto an execution framework. TDL is designed to support different
32、 abstraction levels of test specification. On one hand, the concrete syntax of the TDL meta-model may hide meta-model elements that are not needed for a declarative (more abstract) style of specifying test descriptions. For example, a declarative test description could work with the time operations
33、wait and quiescence instead of explicit timers and operations on timers (see clause 9). On the other hand, an imperative (less abstract or refined) style of a test description supported by a dedicated concrete syntax could provide additional means necessary to derive executable test descriptions fro
34、m declarative test descriptions. For example, an imperative test description could include timers and timer operations necessary to implement the reception of SUT output at a tester component and further details. It is expected that most details of a refined, imperative test description can be gener
35、ated automatically from a declarative test description. Supporting different levels of abstraction by a single TDL meta-model offers the possibility of working within a single language and using the same tools, simplifying the test development process that way. ETSI ETSI ES 203 119-1 V1.3.1 (2016-09
36、)12 4.2 Design Considerations TDL makes a clear distinction between concrete syntax that is adjustable to different application domains and a common abstract syntax, which a concrete syntax is mapped to (an example concrete syntax is provided in annex B). The definition of the abstract syntax for a
37、TDL specification plays the key role in offering interchangeability and unambiguous semantics of test descriptions. It is defined in the present document in terms of a MOF meta-model. A TDL specification consists of the following major parts that are also reflected in the meta-model: A test configur
38、ation consisting of at least one tester and at least one SUT component and connections among them reflecting the test environment. A set of test descriptions, each of them describing one test scenario based on interactions between the components of a given test configuration and actions of component
39、s or actors. The control flow of a test description is expressed in terms of sequential, alternative, parallel, iterative, etc. behaviour. A set of data definitions that are used in interactions and as parameters of test description invocations. Behavioural elements used in test descriptions that op
40、erate on time. Using these major ingredients, a TDL specification is abstract in the following sense: Interactions between tester and SUT components of a test configuration are considered to be atomic and not detailed further. For example, an interaction can represent a message exchange, a remote fu
41、nction/procedure call, or a shared variable access. All behavioural elements within a test description are totally ordered, unless it is specified otherwise. That is, there is an implicit synchronization mechanism assumed to exist between the components of a test configuration. The behaviour of a te
42、st description represents the expected, foreseen behaviour of a test scenario assuming an implicit test verdict mechanism, if it is not specified otherwise. If the specified behaviour of a test description is executed, the pass test verdict is assumed. Any deviation from this expected behaviour is c
43、onsidered to be a failure of the SUT, therefore the fail verdict is assumed. An explicit verdict assignment may be used if in a certain case there is a need to override the implicit verdict setting mechanism (e.g. to assign inconclusive or any user-defined verdict values). The data exchanged via int
44、eractions and used in parameters of test descriptions are represented as values of an abstract data type without further details of their underlying semantics, which is implementation-specific. There is no assumption about verdict arbitration, which is implementation-specific. If a deviation from th
45、e specified expected behaviour is detected, the subsequent behaviour becomes undefined. In this case an implementation might stop executing the TDL specification. A TDL specification represents a closed system of tester and SUT components. That is, each interaction of a test description refers to on
46、e source component and at least one target component that are part of the underlying test configuration a test description runs on. The actions of the actors (entities of the environment of the given test configuration) may be indicated in an informal way. Time in TDL is considered to be global and
47、progresses in discrete quantities of arbitrary granularity. Progress in time is expressed as a monotonically increasing function. Time starts with the execution of the first (base) test description being invoked. The elements in a TDL specification may be extended with tool, application, or framewor
48、k specific information by means of annotations. ETSI ETSI ES 203 119-1 V1.3.1 (2016-09)13 4.3 Principal Design Approach The language TDL is designed following the meta-modelling approach which separates the language design into abstract syntax and concrete syntax on the one hand, and static semantic
49、s and dynamic semantics on the other hand. The abstract syntax of a language describes the structure of an expression defined in the language by means of abstract concepts and relationships among them, where a concrete syntax describes concrete representation of an expression defined in this language by means of textual, graphical, or tabular constructs which are mapped to concepts from the abstract syntax. The semantics describes the meaning of the individual abstract syntax concepts. The realization of multiple re