Presentation is loading. Please wait.

Presentation is loading. Please wait.

Concurrent Signal and Procedure based Testing using TTCN-3 Satish GVKS Infrastructure System Division Motorola India Electronics Pvt Ltd. Bangalore, India.

Similar presentations


Presentation on theme: "Concurrent Signal and Procedure based Testing using TTCN-3 Satish GVKS Infrastructure System Division Motorola India Electronics Pvt Ltd. Bangalore, India."— Presentation transcript:

1 Concurrent Signal and Procedure based Testing using TTCN-3 Satish GVKS Infrastructure System Division Motorola India Electronics Pvt Ltd. Bangalore, India Email:satish.k@motorola.com Mallikarjuna Rao GSVS Infrastructure System Division Motorola India Electronics Pvt Ltd. Bangalore, India Email:mallik@motorola.com

2 2 Agenda SUT Overview Motivation Proposed Test Solution Test System Details Results Benefits Challenges

3 3 SUT Overview SUT is the call processing network element of CDMA cellular system, called Mobility Manager (MM) MM communicates with different network elements like Mobile Switching Center (MSC) and Base Transceiver Station (BTS) via different messages MM also interacts with a database component through a set of APIs SUT is developed in UML2.0 using Telilogic TAUG2

4 4 SUT Overview – Contd.. MSC BTS Database Component Mobility Manager (MM) Call Processing Device Management Database Retrieval API calls Proprietary Signaling Protocol SS7 Interface

5 5 Motivation Repeatable, Automated testing of Any UML Model Simulation – repeatable for regression testing – automated so can be run without user intervention – any active class within a model Reactive Testing – test behaviour depends upon model behaviour – e.g. data variation such as call ids, dynamic signalling variation Not possible with Tau G2 Model Verifier alone – requires user to drive simulation interactively – limited support for automated scripting – scripting does not support reactive testing

6 6 Proposed Test Solution SUT Procedure Database Procedure Stubs Signal Based Encoder/ Decoders TTCN-3 ATS PTC for handling Procedure Calls MTC Handling Signals Test System Signal Integrated Application

7 7 Test System Details Test System Comprises of –TTCN-3 ATS –Encoders/Decoders –Socket Communication –Glue code for Tau G2 kernel –Procedure Stubs

8 8 Test System Details TTCN-3 ATS –MTC of ATS handles all message based interfaces –MTC creates a PTC upon initialization –All procedure calls are handled by the PTC –Synchronization between MTC and PTC is achieved by using a signal Encoders/Decoders –Generic Encoder/Decoder for signals Uses the leaf level atomic data types to encode/decode Can be reused for any TTCN-3 test system –Specific encoders/decoders for procedures A layer of codex implemented at procedure parameter level Can be reused within our test system

9 9 Test System Details Socket Communication –Separate sockets for signal and procedure based communications –Signal based communication uses two different sockets for sending and receiving Purely asynchronous –Procedure based communication uses a single socket for sending and receiving Procedure calls are blocking calls which makes the model to wait till response is received Purely Synchronous

10 10 Test System Details TauG2 Kernel Glue code –Code changes to queue the messages into and retrieve back from Model Procedure Stubs –Stubs on SUT side and TTCN-3 side are implemented –Stubs duplicate the actual procedure call signatures and use the codex system to encode/decode the data

11 11 Application Code Stubs Glue code Encoder/Decoder TTCN-3 System Adaptation Layer TTCN-3 Test Case Encoder/ Decoder Integrated ApplicationTS Socket Transport for procedure based communication Socket Transport for message based communication Test System Overview

12 12 Results TTCN-3 ATS MTC testcase MainTest() runs on L_Component system L_System_Component { var verdicttype testcaseVerdict; …. var L_Proc_Ptc procPtc; procPtc := L_Proc_Ptc.create; procPtc.start(procStubs()); MP_MTC.send(sigMTCPTC:{1}); MP_MTC.receive(sigMTCPTC_t(1)); C_PSignalsMTC.send(Shared__sig: Shared_Create_tmpl); C_MTC.receive(ApplicationHeartbeat: ?)-> value hb_resp; … C_MTC.send(HBR: hb_resp); }

13 13 Results TTCN-3 ATS PTC function procStubs() runs on Proc_Ptc { …. while(true) { alt { []MP_PTC.receive(?)-> value mtcSignal{ testCaseNumber := mtcSignal.testcaseNum; MP_PTC.send(mtcSignal); repeat; } []proc_portPTC.getcall(TKMain:{?}) -> param (bool){ proc_portPTC.reply(TKMain:{bool}); repeat; } [testCaseNumber == 2]OToF_testCase2(); } ….. } Altstep OToF_testCase2() runs on Proc_Ptc { …… [OToF_Count == 1] proc_portPTC.getcall(OToF:{?,?}) -> param(ol,dn){ … }

14 14 Results Test Execution Trace

15 15 Benefits Ease of testing the systems that require concurrent simulation of multiple components Automation of Sub-system testing Single test system solution for testing multiple interfaces

16 16 Challenges Complex changes in System Adaptation layer –TTCN-3 Encoder/Decoders –UML2.0 side encoder/decoder are dependant on the tool internal representation of the data TTCN-3 limitations –External file access need to go through only external C procedures –Takes more time for the implementation –Requires more changes in Adaptation layers


Download ppt "Concurrent Signal and Procedure based Testing using TTCN-3 Satish GVKS Infrastructure System Division Motorola India Electronics Pvt Ltd. Bangalore, India."

Similar presentations


Ads by Google