TTCN Overview Ishwar.

Slides:



Advertisements
Similar presentations
TTCN-3 Users Conference
Advertisements

TTCN-3 & Conformance Testing Anitha Krishnamoorthy.
SDL+ The Simplest, Useful Enhanced SDL-Subset The documentation is the design, the design is the system! Copyright © SDL Task Force Consortium.
Construction process lasts until coding and testing is completed consists of design and implementation reasons for this phase –analysis model is not sufficiently.
Comparing TTCN-3 and TTCN-2 TTCN-3 User Conference May 3 rd -May 5 th,2004 Sophia Antipolis.
1 © NOKIA Test Implementation using TTCN-3 Libraries.ppt/ /S. Schulz and S. Müller Test Implementation using TTCN-3 Libraries TTCN-3 User Conference,
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
The Use of TTCN-3 for Software Testing Ina Schieferdecker FOKUS, Berlin
ISBN Chapter 3 Describing Syntax and Semantics.
Agere Systems - Optimay GmbHMay, UMTS terminal testing: A practical perspective Olaf Bergengruen May, 2003.
A conformance test suite for TTCN-3 tools Benjamin Zeiss, T-Systems Andras Kovacs, Broadbit Bogdan Stanca-Kaposta, Testing Technologies.
IHA præsentation1 Protocol Testing Lesson 5. IHA præsentation2 Outline for today Guidelines for testing protocols TTCN – A Standard Language For Testing.
SSP Re-hosting System Development: CLBM Overview and Module Recognition SSP Team Department of ECE Stevens Institute of Technology Presented by Hongbing.
Introduction To System Analysis and Design
Describing Syntax and Semantics
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
Sharif University of Technology Session # 7.  Contents  Systems Analysis and Design  Planning the approach  Asking questions and collecting data 
Software Testing and QA Theory and Practice (Chapter 10: Test Generation from FSM Models) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory.
Doc.: IEEE /063r0 Submission March 2000 Matthew Graney, TelelogicSlide 1 Project: IEEE P Working Group for Wireless Personal Area Networks.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Introduction To System Analysis and design
Object Oriented Software Development
Verification & Validation Verification –from Latin veritas meaning truth. –Building the product right. Validation –from Latin Valere meaning to be worth.
1. Validating Wireless Protocol Conformance Test Cases Amresh Nandan Paresh Jain June 2004.
International Telecommunication Union Geneva, 9(pm)-10 February 2009 Providing testability for ITU Recommendations Ostap Monkewich, OMCI ITU-T Workshop.
TTCN Protocol Testing on Steroids! IEEE P WPAN Meeting March 6-10, 2000 Albuquerque, NM USA 802 Plenary Meeting Matthew Graney Telelogic North America.
Institute for Telematics University of Lübeck, Germany M. Ebner, M. Schmitt, J. Grabowski Test Generation with Autolink and TestComposer.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Copyright SOLINET GmbH SDL & Requirements of Signalling Systems William H. Skelton SOLINET, Stuttgart.
Chapter 3 Part II Describing Syntax and Semantics.
TTCN-3 and ASN.1 interworking Analysis of backward compatibility in ASN.1 Géza Horváth TTCN-3 User Conference – 9 June 2011.
G.v. Bochmann, revised Jan Comm Systems Arch 1 Different system architectures Object-oriented architecture (only objects, no particular structure)
Winter 2007SEG2101 Chapter 121 Chapter 12 Verification and Validation.
TTCN-3 Testing and Test Control Notation Version 3.
Chapter 27 Network Management Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 TTCN CONFORMANCE TEST SUITE TTCN-3 Part 1 & Part 9 STF 487 Bogdan Stanca-Kaposta/ Testing Technologies Tomas Urban / Elvior Andras Kovacs / Broadbit.
Use Cases Discuss the what and how of use cases: Basics Examples Benefits Parts Stages Guidelines.
IS 350 Course Introduction. Slide 2 Objectives Identify the steps performed in the software development life cycle Describe selected tools used to design.
STF 454 “DESIGN OF TDL” Proposed TDL features © ETSI All rights reserved.
Testing Tutorial 7.
Software Testing.
Use Cases Discuss the what and how of use cases: Basics Benefits
TTCN Case Study - InterWatch
Methodological Issues in Model-Based Testing (MBT)
Object-Oriented Analysis and Design
SysML v2 Formalism: Requirements & Benefits
Automated Interoperability Testing
Unified Modeling Language
TTCN CONFORMANCE TEST SUITE TTCN-3 Part 1 & Part 9 STF 487 MILESTONE 2
STF 454 TDL – Overview Last change:
CS101 Introduction to Computing Lecture 19 Programming Languages
Structural style Modular design and hierarchy Part 1
Automated Interoperability Testing
SIMPL-T: SDL Intended for Management and Planning of Tests By
Course Name: QTP Trainer: Laxmi Duration: 25 Hrs Session: Daily 1 Hr.
Applied Software Implementation & Testing
Protocols and the TCP/IP Suite
Structural style Modular design and hierarchy Part 1
TDL: The ETSI Test Description Language
TTCN-3 Status Report.
Prof. Andreas Prinz Høgskolen i Agder
TDL: The ETSI Test Description Language
Typical Workflow - today
Overview of the ETSI Test Description Language
Overview of the ETSI Test Description Language
Protocols and the TCP/IP Suite
TDL: The ETSI Test Description Language
STF 454 TDL – Overview Last change:
Exceptions and networking
Introduction to TDL and TOP
Presentation transcript:

TTCN Overview Ishwar

Overview of the Presentation General wireless test systems Why TTCN ?? Introduction to TTCN Deeper into TTCN How TTCN fits in our system Versions of TTCN Advantages and Disadvantages of TTCN Questions ??

Expect to Learn What is TTCN and Why it is needed .. Brief about TTCN Protocol system simulated using TTCN How our test bench looks for DP and CP Typical TTCN test case Adv n disadv of TTCN

General Wireless system CHAPTER I General Wireless system

Typical Test system system System Under Test (SUT) Test System (TS) Implementation Under Test (IUT) tester

Typical wireless system Layer S Layer S SP Service provided SAP SP Layer T PDU Layer T Service used Layer N Layer N SP : Service Primitive SAP : Service Access Point PDU : Protocol Data Unit

Some Acronyms Used often Upper Tester ASP: Abstract Service Primitive PCO: Point of Control and Observation IUT: Implementation Under Test PDU: Protocol Data Unit Tester: Test script written in TTCN TTCN: Tree and Tabular Combined Notation (TTCN-2) ASP ASP PDU IUT ASP ASP Lower Tester

Typical Test system System Under Test (SUT) Test System (TS) Test Co-ordination Procedures (TCP) Upper Tester Lower Tester ASPs PCO IUT PDU ASPs PCO Lower level service provider

Testing Process … Standard protocol specification test generation Abstract test suite TTCN Test selection and test implementation Protocol implementation Executable test suite System Under Test IUT Tester

CHAPTER II Why TTCN ??

Ideal Test Language Features Implementation Independent: Test case writer should not bother about implementation details. Assuming black box system tester should able to write the test cases. Off-the-shelf test suites: Because of above property so many ready made test suites will be available which could be readily usable (Anite) Test case reusability: Test case should be reusable. By this we can build complex test cases and from simples cases. Dynamic configuration : Tester should be able to decide test cases to be run and configurations dynamically.

Cont SDL and ASN.1: should supports SDL and ASN.1 representations as most of wireless systems use this representation. Formalized description: Formalized notation for description of test cases. AND TTCN has all these qualities …

CHAPTER III Introduction to TTCN

TTCN History TTCN: Tree and Tabular Combined Notation Versions 1 and 2 developed by ISO SC21 WG3 (1984-97) as part 3 of the ISO/IEC 9646 (ITU-T X.292) conformance testing methodology and framework Latest update by ETSI in TR 101 666 (TTCN-2++) Version 3 (TTCN-3) developed by ETSI TC MTS (1998 - 2001) Specialist Task Forces STF 133, 156 and 187

TTCN Language Syntax The TTCN language syntax is very much similar to C++/Java. - Provides all normal programming language constructs like functions, if-else statements, for statement, while statement, dowhile statement, goto statement. TTCN has constructs specifically for test case specification and evaluating the result of the execution of test cases on the SUT. alt: allows alternates for the execution of test case. template: allows defining of template to verify the contents of the data of the messages receive ports: to specify the communication points between components as well as the SUT. send and receive: send and receive operations on ports to send and receive messages on the port setverdict: setverdict sets the verdict for the scope in which it is

Priority of alternative Tree notation .. A Priority of alternative or A B E B C or or D C D F E or F G H G Time H

Test Case Dynamic Behaviour Tabular Notation Test Case Dynamic Behaviour Test Case Name: Basic_Connect Group: Basic Telephone Calls Purpose: Check that a normal Basic Call Connection can be established Configuration: Default: Comments: Simple case Nr 1 Line ! OffHook 2 Line ? DialTone 3 Line ! Digits Call Subscr2 4 Line ? CallTone 5 Line ? LineConnect ConnSubscr2 6 Line ! OnHook Pass 7 Line ? BusyTone Busy B 8 Line ! DropHook Inconclusive 9 Line ? NoTone Fail Label Dynamic Behaviour Constraints ref Verdict Comments

Forms of TTCN Suitable for Human Readability. For electronic exchange Graphical Form (.GR) Suitable for Human Readability. Easily Understandable Machine Process able form (.MP) For electronic exchange Suitable for automatic processing Useful for export and imports

CHAPTER IV Deeper into TTCN

On TTCN Statements: A sequence of one or more statements, together with the indentation information, in a single behavior line is called a statement line. And they can be split into 3 types: EVENTS ACTIONS QUALIFIERS

Cont … Actions: Always happens successfully .. (!) SEND ASSIGNMENT_LIST TIMER_OPERATION GO TO Events: Waiting for response (Success/Fail/Inc).. (?) RECIEVE OTHERWISE TIMEOUT Qualifiers: No event can match, nor can any action be executed unless the qualifier included in the statement line evaluates to TRUE BOOLEAN_EXPRESSION

TTCN Terminology Following are the words that are frequently used. PCO, CP, CM, ASP, PDU, Constraints, Test Step, Test Case, Test Suite,Default,Otherwise etc.. Test Suite can be divided into Static Part: Valued are filled Statically. Consists of Test case overview, Declaration and Constraint Parts. Dynamic Part: Value and order is decided at the run time. It consists of Test step, test case and default library. - Test Suite Overview - Declaration Part - Constraint Part - Dynamic Part

How TTCN fits in our system CHAPTER V How TTCN fits in our system

Test bench Module in UMTS AS (like PDCP,RLC,RRCDC) implemented with SDL and C. Routines implemented in C Decision making and Signal handling implemented in SDL. All C routines are called from SDL TTCN interacts with SDL Test System. User interacts with TTCN

Broad view of Test bench System Under Test (SUT) SDL TS SDL+C TTCN IUT (SDL+C) tester

Typical Example … RABM/PDCP Test Cases (TTCN) SM RABMPDCP (SDL+C) GMM TESTER RRC IPR RLC (SDL+C)

RABM/PDCP SDL Process

RABM/PDCP TTCN SDL Stub processes

High level view – PDCP test bench

Cont… Consider Example of PDCP PDCP interacts with SM,GMM and RRCDC in control plane. PDCP interacts with IPR and RLC in data plane. To Test PDCP, we simulate all these modules in SDL SDL systems for PDCP has BLOCKS RABMPDCP and RABMPDCP_TTCN Since PDCP is implemented as one process it has one process. Block RABMPDCP is module implementation which goes into product. RABMPDCP_TTCN is Test Bench to test PDCP module. It has 5 processes for 5 modules to which it interacts with namely SM,GMM,RRC,IPR and RLC

Test Benches of DP and CP For Data Plane Modules: Its very difficult decode the data sent by the DP modules. To avoid decoding of the data by the test system loop back mechanism is used. Data in UL is looped back as Data in the DL. Then the validation of data is done. For Control Plane Modules: For CP modules loop back mechanism is not used as its only controlling signals that are exchanged.

Data movement in Test Bench-DP Test System System Under Test (SUT) PDCP UL IPR IN Validate data OUT RLC TTCN DL SDL

Signal movement in Test Bench-CP Test System System Under Test (SUT) GMM IN Send Stimulus RRCDC Check response SM OUT SDL TTCN

Use case for NSAPI Activation

TTCN Test case for above Use Case

Port.send(Stimulus) Port SUT Port.receive(Response) Stimulate SUT Channel_rabmpdcp ? Deactivate_Cnf Channel_rabmpdcp !Deactivate_Req SUT Port SUT: System Under Test Port: Formally specified system interface Stimulate SUT Compare observed response with expected response Assign verdict Channel_rabmpdcp PDCP

Design of Good Test case Following are few tips to write sound test case Structures,ASPs,PDUs and Test steps should be readily reusable which is possible by parameterization. Constraints name should reflect the its derivatives and direction etc. Default Clause should be designed such a way it should capture all the errors and proper action for the error. Test case should contain Preamble and Postamble to bring system from Idle and take it to Idle.

CHAPTER VI Adv and Disadv of TTCN

Advantages of TTCN Signals used to exchange data and PID info Tests written in TTCN are independent of: Test Methods Layers Protocols Test Tools TTCN provides powerful means for modularising and parameterisation of test cases TTCN-3 core is a textual format (like .mp in TCN-2) that allows for: Electronic storage Exchange between different tools Conversion from/to other formats (.ps, .xml, .html) Translation into executable code

Disadvantages of TTCN Data Writing a compiler for TTCN is difficult TTCN tools are expensive Templates to define each bit -> many test cases! Cannot express hard real-time constraints A lot of code needs to be written before you can actually do something useful

Questions ??