recent developments on ttcn 3
play

Recent Developments on TTCN-3 Ina Schieferdecker, Axel Rennoch , - PowerPoint PPT Presentation

Competence Center MOTION Fraunhofer FOKUS Recent Developments on TTCN-3 Ina Schieferdecker, Axel Rennoch , TAROT Summer School, Schlo Laubegg, 25 th June 2010 TAROT2010, Slide 1 Competence Center MOTION Fraunhofer FOKUS Contents Contents


  1. Competence Center MOTION Fraunhofer FOKUS Recent Developments on TTCN-3 Ina Schieferdecker, Axel Rennoch , TAROT Summer School, Schloß Laubegg, 25 th June 2010 TAROT2010, Slide 1

  2. Competence Center MOTION Fraunhofer FOKUS Contents Contents  TTCN  Introduction  History History  Status  Concepts and tools Concepts and tools  Applications:  Industrial domains, MBT  Future  Latest releases, extension packages  Outlook: Embedded TTCN-3  Conclusion TAROT2010, Slide 2

  3. Competence Center MOTION Fraunhofer FOKUS Contents Contents  TTCN  Introduction  History  Status  Concepts and tools  Applications:  Industrial domains, MBT  Future  Latest releases, extension packages  Outlook: Embedded TTCN-3  Conclusion TAROT2010, Slide 3

  4. Competence Center MOTION Fraunhofer FOKUS Th The Testing and Test Control Notation T ti d T t C t l N t ti Idea and design Principles of TTCN-3  One test technology for different tests – Distributed, platform-independent testing Distributed platform independent testing – Integrated graphical test development, -documentation and –analysis – Adaptable, open test environment Ad t bl t t i t  Areas of Testing – Regression Testing – Conformance and Functionality Testing – Interoperability and Integration Testing Interoperability and Integration Testing – Load/ Stress Testing

  5. Competence Center MOTION Fraunhofer FOKUS History (1) History (1) 1984  TTCN (1992) – Published as an ISO standard – Tree and Tabular Combined Notation Tree and Tabular Combined Notation – Used for protocol testing only  GSM, N-ISDN, B-ISDN 1992 TTCN  TTCN-2/2++ (1997) 1994 – Concurrent tests – Modularization TTCN-2 – Manipulate external data 1997 – Rather for conformance testing Rather for conformance testing – Developed by ETSI MTS TTCN-2++ TAROT2010, Slide 5

  6. Competence Center MOTION Fraunhofer FOKUS History (2) History (2)  TTCN-3 (2000) – Testing and Test Control Notation – Developed by ETSI MTS Developed by ETSI MTS – Proper language 1998  Well defined syntax and semantics 2000 2000 – Enhanced communication, configuration and control – Standard test specification   SIP/IMS, SCTP, HiperLan, HiperAccess, IPv6 ... 2010 TAROT2010, Slide 6

  7. Competence Center MOTION Fraunhofer FOKUS TTCN 3 Multipart Standard TTCN-3 Multipart-Standard  ETSI ES 201 873-1 TTCN-3 Core Language (CL)  ETSI ES 201 873-2 TTCN-3 Tabular Presentation Format (TFT)  ETSI ES 201 873-3 TTCN-3 Graphical Presentation Format (GFT)  ETSI ES 201 873-4 TTCN-3 Operational Semantics  ETSI ES 201 873-5 TTCN-3 Runtime Interface (TRI)  ETSI ES 201 873-6 TTCN-3 Control Interfaces (TCI)  ETSI ES 201 873-7 Integration of ASN.1  ETSI ES 201 873-8 Integration of IDL  ETSI ES 201 873-9 Integration of XML  ETSI ES 201 873-10T3Doc  Standard available for download at http://www.ttcn-3.org  Also standardized by the ITU-T as ITU-T Z.140  NEW: TTCN-3 Extension packages ETSI ES 202 78x! TAROT2010, Slide 7

  8. Competence Center MOTION Fraunhofer FOKUS Contents Contents  TTCN  Introduction  History History  Status  Concepts and tools Concepts and tools  Applications:  Industrial domains, MBT  Future  latest releases, extension packages   Outlook: Embedded TTCN-3 Outlook: Embedded TTCN-3  Conclusion TAROT2010, Slide 8

  9. Competence Center MOTION Fraunhofer FOKUS TTCN 3: Testing and Test Control Notation TTCN-3: Testing and Test Control Notation  A standardized alternative to proprietary test systems – Developed by a large group of testing experts TTCN-3 Test System CN Sy – Used by a growing community U d b i it Test Management (TM) + Logging (TLI)  Enabling a testing middleware, – unifying methods, unifying methods, tools, test infrastructure, Component TTCN-3 TTCN-3 Coding Handling Executable Executable Decoding documentation and training (CH) (TE) (TE) (CD) – domain-specific extensions  TTCN-3 is more than a notation: TTCN-3 test system System Adapter (SA) Platform Adapter (PA)  The only international standard for The only international standard for – Test specification and implementation System under Test TAROT2010, Slide 9

  10. Competence Center MOTION Fraunhofer FOKUS TTCN-3 is designed for Black-Box Testing TTCN-3 Test Case Port.send(Stimulus) P t d(Sti l ) P Port.receive(Response) t i (R ) • Assignment of a Test Verdict Port Port System Under Test TAROT2010, Slide 10

  11. Competence Center MOTION Fraunhofer FOKUS TTCN 3 Test Configuration may change dynamically TTCN-3 Test Configuration may change dynamically SUT TTCN-3 Test Case create start TC TC TC MTC TCs TCs TCs start start create create create start TC TC TC TAROT2010, Slide 11

  12. Competence Center MOTION Fraunhofer FOKUS TTCN 3 Module TTCN-3 Module • The top level entity of TTCN-3 is module . Module • A module can import definitions from other modules. • A module contains a definition part Module and a control part. Definitions Definitions module MyModule { // definition part control { Module Control // test execution logic } } TAROT2010, Slide 12

  13. Competence Center MOTION Fraunhofer FOKUS Major language elements of TTCN 3 notation Major language elements of TTCN-3 notation module definitions module definitions Importing definitions from other modules Imports defined in TTCN-3 or other languages User defined data types (messages, PDUs, Data Types information elements, …) Test data transmitted/expected during test Test Data execution (templates, values) Definition of the test components and Test Configuration Test Configuration communication ports Specification of the dynamic test behavior Test Behavior TAROT2010, Slide 13

  14. Competence Center MOTION Fraunhofer FOKUS Message-Based Ports • For sending and receiving messages of given type send send receive receive P1 (out) ( ) P2 (in) ( ) PTC 1 PTC 1 PTC 2 PTC 2 P1.send(Msg) P2.receive(Msg) TAROT2010, Slide 14

  15. Competence Center MOTION Fraunhofer FOKUS Procedure-Based Ports • For invoking operations, receiving operation calls, replying, raising exceptions as well as for receiving replies and catching exceptions getcall call PTC 2 PTC 1 1 or or or or getreply getreply reply reply catch exception raise exception TAROT2010, Slide 15

  16. Competence Center MOTION Fraunhofer FOKUS Test Verdicts Test Verdicts  Test verdicts: none < pass < inconc < fail < error  Each test component has its own local verdict, which can be set (setverdict) and read (getverdict) (setverdict) and read (getverdict).  A test case returns a global verdict Verdict returned by the test case when it terminates P F P F I I MTC MTC F F PTC 1 PTC P P PTC N PTC I I setverdict(fail) setverdict(pass) setverdict(inconc) TAROT2010, Slide 16

  17. Competence Center MOTION Fraunhofer FOKUS Test Verdicts Test Verdicts  Test verdicts: none < pass < inconc < fail < error  Each test component has its own local verdict, which can be set (setverdict) and read (getverdict) (setverdict) and read (getverdict).  A test case returns a global verdict Verdict returned by the test case when it terminates P F P F I I MTC MTC F F PTC 1 PTC P P PTC N PTC I I setverdict(fail) setverdict(pass) setverdict(inconc) TAROT2010, Slide 17

  18. Competence Center MOTION Fraunhofer FOKUS Sample: Test Configuration Test Component (MTC) UA LA System Under Test (SUT) Medium Service TAROT2010, Slide 18

  19. Competence Center MOTION Fraunhofer FOKUS Time Sequence Diagram for a Simple Behavour Example Time Sequence Diagram for a Simple Behavour Example msc Example SUT UA LA loop<100> loop<100> DATreq(" data ") DATind( DT,nr ," data ") DATind( RE nr “ resp ") DATind( RE,nr , resp ) DATind() TAROT2010, Slide 19

  20. Competence Center MOTION Fraunhofer FOKUS Same Example in TTCN 3 Core Language Same Example in TTCN-3 Core Language testcase Example( ) runs on MTC Type { testcase Example( ) runs on MTC_Type { var default mydefault := activate (DefaultDef()); T1. start ; for ( integer i:=1; i<=100; i:=i+1) { UA.send (DATreq:{"data"}); LA.receive (DATind:{DT, nr, "data"}); LA.receive (DATind:{DT, nr, data }); LA.send (DATind:{RE,nr, “ resp ” }); UA.receive (DATind :{}); } setverdict ( pass ); T1. stop ; T1. stop ; } TAROT2010, Slide 20

  21. Competence Center MOTION Fraunhofer FOKUS Typical language elements: Typical language elements: type definitions:  b boolean, integer, float, bitstring, charstring, octectstring, hexstring l i t fl t bit t i h t i t t t i h t i  record, set, enumeration, union programming constucts:  message: send/receive   procedure: call/getcall reply/getreply raise/catch procedure: call/getcall, reply/getreply, raise/catch  if-then-else, loops: for, while, do-while  functions, alternatives  component/port/timer control Predefined functions: Predefined functions:  type conversion, lengthof (string), sizeof (records), … O Overview: e.g. TTCN-3 Quick Reference Card i TTCN 3 Q i k R f C d TAROT2010, Slide 21

Recommend


More recommend