Test-controlled Development
Download
1 / 22

Contact: [email protected] 1 2 - PowerPoint PPT Presentation


  • 93 Views
  • Uploaded on

Test-controlled Development of Communication Services Ralf Tönjes 1 , Marten Fischer 1 , Patrick Wacht 2. Contact: [email protected] 1 2. University of Applied Science Osnabrück, Germany. University of Applied Science Frankfurt, Germany. TTCN-3 User Conference 2011

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Contact: [email protected] 1 2' - aya


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Test-controlled Developmentof Communication Services

Ralf Tönjes1, Marten Fischer1, Patrick Wacht2

Contact:

[email protected]

1

2

University of Applied Science Osnabrück, Germany

University of Applied ScienceFrankfurt, Germany

TTCN-3 User Conference 2011

7 – 9 June 2011 - Bled, Slovenia


Agenda
Agenda

  • Motivation

  • Architecture

  • Service Description

  • Service Behaviour Model

  • Test Code Generation

  • Test Execution


Motivation
Motivation

  • Testing of communication services is becoming increasingly important

    • growing complexity of logic

    • short time to market desired

  • manual testing is time and cost consuming test automation required

  • current service creation environments (SCE) do not support test automation

Error


How can test automation be realised
How can Test Automation be Realised?

  • Model-Based Testing

    • Model describes how a system should behave in response to an action (behaviour model)

    • Supply the action and see if the system responds as expected

is a partial description of

Model

System

are derived

from

can be run

against

Abstract tests

Executable tests

are abstract versions of


Architecture

Step 4

Step 2

Step 3

Step 1


Step1 formal recording of service description
Step1: Formal Recording of Service Description

5 Stages Procedure

  • Adopted from telecom software development process OTES (Objects Through Essential Services)

  • Short textual description of use cases

  • Identification of roles of communication participants(e.g. browser, SIP-phone, Database)

  • Requirement specification (including pre- and post-conditions, i.e. states, andtarget action, i.e. messages sequence, for users)

  • Enhanced requirements specification(including technical details, such as value ranges, names of databases, tables and fields)

  • Identification of the communication interfaces(5-tuple of source and destination IP-address, port and protocol)



TTCN-3 requirements:

message flow description  derived from FSM (test cases)

test environment/SUT description  using connectivity concept (ports, component, Test Adapter, …)

test data (type definitions, templates)

Behaviour Model Editor with 3 specialised perspectives

Step2: Creation of Service Behaviour Model

Editors

FSM

Editor

Connectivity

Editor

Test Data

Editor


Composition of fsm finite state machine
Composition of FSM (Finite State Machine)

  • sFSM (sub Finite State Machine)

    • Reusable templates, which represent predefined message flows from standards

    • internal transitions are fixed, external transitions used to realise composition

    • usually protocol specific (e.g., SIP, TCP, HTTP)

  • Composition of sFSM with Transaction User

sFSM-M2

sFSM-M1


The fsm connector transaction user tu
The FSM Connector: Transaction User (TU)

  • interfaces of the sub finite state machines have the TU as sender or receiver

  • acts as mediator between possible client and server roles

  • does not contain information about the service implementation


Connectivity Concept: Composition of SUT/Test Environment Description


Connectivity Concept:

Mapping to TTCN-3


Test data editor
Test Data Editor

  • create and edit message templates

  • message structure reflected in tree view

  • specific for one port and its protocol

    Example


ConnectivityEditor

(TTCN-3 ports, timer, …)

Abstract Test Case Generator

Behaviour Model Editors

TTCN-3

Test DataEditor

Step 3: Abstract Test Case Generation

FSM Editor

FSM

&

Connectivity

Parser

FSM

Path-

finder

TTCN-3

Code

Generator

Behaviour Model Analyser


Test case generation fsm pathfinder
Test Case Generation: FSM Pathfinder

Path

  • set of states and transitions between start- and end-state of FSM

    Pathfinder

  • finds all possible paths in FSM between start and end state

    • FSM considered as deterministic

    • branching = new test case

    • employs depth-first-search


Test Case Generation: FSM Parser

Each path converted into test case by FSM Parser

  • state converted into a TTCN-3 function body

  • content of function specified by outgoing transition

  • FSM written from the service’s point of view  message based actions must be inverted

s1

s2

p1.msg/p1.msg2

  • function s1_1() runs on c1 {

  • p1.send(msg);

  • alt {

  • p1.receive(msg2) -> …. { s2_1(); }

  • }

  • }


Test Case Generation: Connectivity Parser

  • generates component using parameter from Connectivity Editor

ComponentDefinition

Name ofComponent

Parameter

Ports

Type of Port

Name of Port

own block in editor;

connectedwithcomp.

Timer

Primitive Variables

automatically generated for each message template

Message Variables

+ system component (only ports and static name)


Test Case Generation: Connectivity Parser

  • generates port using parameter from Connectivity Editor

  • generates configuration file for Test Adapter (parameter provided in Ports)

Test Adapter configurationfile

Name of Port

Protocol (TCP/UDP)

Remote IP / Port

Role (Server/Client)

Local IP / Port

Parameter/Port

Port Definition

Parameter

Name

Type

reference in model

send/receivable Message Types


Test case generation ttcn 3 code generator
Test Case Generation: TTCN-3 Code Generator

  • Writes the acquired / generated data as TTCN-3 code using Velocity*

  • * Java basedTemplate Engine (http://velocity.apache.org)


Step 4 test execution
Step 4: Test Execution

  • TTCN-3 code will be executed after the code generation has been completed by the Test Case Generator

  • Execution realised within a Test Environment (e.g. TTWorkbench)

  • Test results are stored in a database to measure the development progress

  • Iterative delta testing: only new or modified test cases executed

  • Test Framework for synchronisation of test developer and service developer


Conclusion
Conclusion

  • Novelty: New approach eases the generation of test cases by

    • composing predefined finite state machines (FSM) for protocol sequences to a behaviour model (BM) of a service.

    • From the BM a TTCN-3 test suite is automatically derived.

    • The new concept of Transaction User (TU) enables testing of value added services

  • Benefits: Integration of Service Creation and Testing

    • Development of functional tests in parallel to service development  ensuring automated TTCN-3 based testing of services

    • Testing is integrated in a service creation environment allowing for regression tests

  • Re-Use by Others: General Applicability

    • test generation can be used for any SCE

    • generic configurable test adapter based on Java for TTCN-3 (e.g. for TCP, UDP ,…)

    • universal codec for generation of test patterns has been implemented


References
References

  • P. Wacht et al.: A New Approach to Design Graphically Functional Tests for Communication Services, IEEE NTMS, Paris, 7-10 February 2011.

  • P. Wacht et. al.: ComGeneration: die Dienstebeschreibung als Basis für automatisiertes Testen, VDE/ITG Fachtagung Mobilkommunikation, Osnabrück, 18-19 May 2011.

  • A. Lehmann et al.: “TeamCom: A Service Creation Platform for Next Generation Networks”, IEEE ICIW 2009, Venice/Mestre, Italy, 24-28 May 2009.


ad