1、 ETSI ES 203 119-1 V1.2.1 (2015-06) 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.2.1 (2015-06)2 Reference RES/MTS-203119-1v1.2.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 (http:/ipr.etsi.org). Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has
3、 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 Technica
4、l 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: “Structur
5、ed 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 expr
6、ession 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.2.1 (2015-06)7 1 Scope The present document specifies the abstract syntax of the Test Description Language (TDL) in the form of a meta-model based on the O
7、MG Meta 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 generator
8、s, 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 provided.
9、 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 referenced document (incl
10、uding any amendments) applies. Referenced documents which are not found 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
11、 validity. The following referenced documents are necessary for the application of the present document. 1 “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 Unified Modeling LanguageTM(OMG UML) Superstructure,
12、Version 2.4.1“, formal/2011-08-06. NOTE: Available at http:/www.omg.org/spec/UML/2.4.1/. 3 ETSI ES 203 119-2 (V1.1.1): “Methods for Testing and Specification (MTS); The Test Description Language (TDL); Part 2: Graphical Syntax“. 4 ETSI ES 203 119-3 (V1.1.1): “Methods for Testing and Specification (M
13、TS); The Test Description Language (TDL); Part 3: Exchange Format“. 5 ETSI ES 203 119-4 (V1.1.1): “Methods for Testing and Specification (MTS); The Test Description Language (TDL); Part 4: Structured Test Objective Specification (Extension)“. 6 ISO/IEC 9646-1:1994: “Information technology - Open Sys
14、tems 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 app
15、lies. For non-specific 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. ETSI ETSI ES 203 119-1 V1.2.1 (2015-06)8 The
16、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-1 (V4.5.1): “Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; Part 1: TTCN-
17、3 Core Language“. i.2 ETSI TS 136 523-1 (V10.2.0): “LTE; Evolved 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:
18、“Core Network and Interoperability Testing (INT); IMS NNI Interoperability 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 app
19、ly: abstract syntax: graph structure representing a TDL specification 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
20、 directly with the components of that test configuration component: 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 f
21、or the users of this language interaction: any form of communication 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
22、is validated when executing a test description TDL model: instance 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 componen
23、t plus their interconnections via gates and connections test description: 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 descr
24、iption against the components in the role system under test tester-input event: event that occurs at a component in the role tester and determines the subsequent behaviour of this tester component : semantical concept denoting an undefined data value ETSI ETSI ES 203 119-1 V1.2.1 (2015-06)9 3.2 Abbr
25、eviations For the purposes of the present document, the following 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-O
26、bject Facility OMG Object Management 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 UTP UML Testing Profile XML eXtensible Markup Language 4 Basic
27、Principles 4.1 What is TDL? TDL is a language that supports the design and documentation of formal test descriptions that can 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 approa
28、ch to the test design phase include: Manual design of test 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
29、traces from test runs. TDL supports the design of black-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 separat
30、es the specification of tests from their implementation 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 ex
31、ecution framework. TDL is designed to support different abstraction levels of test specification. On one hand, the concrete syntax of the TDL meta-model can hide meta-model elements that are not needed for a declarative (more abstract) style of specifying test descriptions. For example, a declarativ
32、e test description could work with the time operations 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 mea
33、ns necessary to derive executable test descriptions from 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
34、 of a refined, imperative test description can be generated 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 p
35、rocess that way. ETSI ETSI ES 203 119-1 V1.2.1 (2015-06)10 4.2 Applicability of the present document The TDL language design is centred around the three separate concepts of abstract syntax, concrete syntax, and semantics (see figure 4.1). The present document covers the TDL abstract syntax given as
36、 the TDL meta-model and its associated semantics. Figure 4.1: The TDL standards and their relation The TDL concrete syntax is application or domain specific and is not specified in the present document. However, for information, see annex B for an example of a concrete textual syntax. A proposed con
37、crete graphical syntax can be found in 3. The semantics of the meta-model elements are captured in the individual clauses describing the meta-model elements defined in the present document. Figure 4.2: A scalable TDL tool architecture The TDL abstract syntax (TDL meta-model) and semantics defined in
38、 the present document serve as the basis for the development of TDL tools such as editors for TDL specifications in graphical, textual or other forms of concrete syntaxes, analyzers of TDL specifications that check the consistency of TDL specifications, test documentation generators, and test code g
39、enerators to derive executable tests. The TDL exchange format 4 serves as the connector to hold all TDL tools together (see figure 4.2). 4.3 Design Considerations TDL makes a clear distinction between concrete syntax that is adjustable to different application domains and a common abstract syntax, w
40、hich a concrete syntax is mapped to (an example concrete syntax can be found in annex B). The definition of the abstract syntax for a 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
41、a MOF meta-model. ETSI ETSI ES 203 119-1 V1.2.1 (2015-06)11 A TDL specification consists of the following major parts that are also reflected in the meta-model: A test configuration consisting of at least one tester and at least one SUT component and connections among them reflecting the test enviro
42、nment. 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 components or actors. The control flow of a test description is expressed in terms of sequential, alternative, parallel, iterative, e
43、tc. 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 operate on time. Using these major ingredients, a TDL specification is abstract in the following sense: Interactions between t
44、ester 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 function/procedure call, or a shared variable access. All behavioural elements within a test description are totally ordered,
45、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 test description represents the expected, foreseen behaviour of a test scenario assuming an implicit test verdict mechanism, i
46、f 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 considered to be a failure of the SUT, therefore the fail verdict is assumed. An explicit verdict assignment can be used if i
47、n 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 interactions and used in parameters of test descriptions are represented as values of an abstract data type without further det
48、ails of their underlying semantics, which is implementation-specific. There is no assumption about verdict arbitration, which is implementation-specific. If a deviation from the specified expected behaviour is detected, the subsequent behaviour becomes undefined. In this case an implementation might
49、 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 one 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) can be indicated in an informal way. Time in TDL is considered to be global and progresses in discrete quantities of arbitrary granularity.