Performance testing with TTCN-3



Similar documents
Run-time test configurations for load testing

TEST AUTOMATION FRAMEWORK

Automated Target Testing with TTCN-3: Experiences from WiMAX Call Processing Features

dominique <dot> toupin <at> ericsson <dot> com GYORGY <dot> RETHY <at> ericsson <dot> com

Advanced TTCN-3 Test Suite validation with Titan

Get the best performance from your LTE Network with MOBIPASS

Introduction to TTCN-3

Chapter 1 - Web Server Management and Cluster Topology

The Evolution of Load Testing. Why Gomez 360 o Web Load Testing Is a

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING. Carlos de Alfonso Andrés García Vicente Hernández

What is SDN (Software Defined Networking) and Openflow? SDN/OF Part of Kernel / SoC to provide security, steering & monitoring

UPDATE MANAGEMENT SERVICE The advantage of a smooth Software distribution

Driving force. What future software needs. Potential research topics

The Key Technology Research of Virtual Laboratory based On Cloud Computing Ling Zhang

USING THE SGCP INTERACTIVE CONTROL PANEL FOR IP TELEPHONY TESTING

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

OF 1.3 Testing and Challenges

Project SailFin: Building and Hosting Your Own Communication Server.

SOFTWARE PERFORMANCE TESTING SERVICE

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

Introduction to Automated Testing

Proposal for Virtual Private Server Provisioning

Performance Management for Cloudbased STC 2012

Building Reliable, Scalable AR System Solutions. High-Availability. White Paper

VMware Infrastructure and IBM WebSphere Software

IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Internet Information Services Agent Version Fix Pack 2.

Propsim enabled Mobile Ad-hoc Network Testing

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

Security and Vulnerability Testing How critical it is?

About Network Data Collector

CSCI6900 Assignment 2: Naïve Bayes on Hadoop

MIMIC Simulator helps testing of Business Service Management Products

BASICS OF SCALING: LOAD BALANCERS

Enhanced System Integration Test Automation Tool (E-SITAT) Author: Akshat Sharma

VoIP Conformance Labs

Data Center Virtualization and Cloud QA Expertise

Performance Oriented Management System for Reconfigurable Network Appliances

Designing a Windows Server 2008 Applications Infrastructure

Inside the Erlang VM

A standards-based approach to application integration

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

CONDIS. IT Service Management and CMDB

Khóa học dành cho các kỹ sư hệ thống, quản trị hệ thống, kỹ sư vận hành cho các hệ thống ảo hóa ESXi, ESX và vcenter Server

Test Automation Framework

JReport Server Deployment Scenarios

EWeb: Highly Scalable Client Transparent Fault Tolerant System for Cloud based Web Applications

TTCN4SOA : a TTCN-3 architecture and framework for SOA testing

OpenSAF A Standardized HA Solution

Software Testing Interview Questions

JOB ORIENTED VMWARE TRAINING INSTITUTE IN CHENNAI

Provisioning and Resource Management at Large Scale (Kadeploy and OAR)

Cluster, Grid, Cloud Concepts

Shoal: IaaS Cloud Cache Publisher

Load Testing and Monitoring Web Applications in a Windows Environment

TSGS#13(01)0562. Technical Specification Group Services and System Aspects Meeting #13, Beijing, China, September 2001

POWER ALL GLOBAL FILE SYSTEM (PGFS)

Juniper Operating System Fundamental for APNIC Training Lab. APNIC Technical Workshop June 18, 2015, APNIC Office In-house training.

Guide to the LBaaS plugin ver for Fuel

Tik-109/ Telecommunications architectures:

Getting Started with Tizen SDK : How to develop a Web app. Hong Gyungpyo 洪 競 杓 Samsung Electronics Co., Ltd

1. INTERFACE ENHANCEMENTS 2. REPORTING ENHANCEMENTS

Building Docker Cloud Services with Virtuozzo

Relational Databases in the Cloud

Security Requirements for Wireless Networking

Glassfish Architecture.

Security Systems. Technical Note. iscsi sessions if VRM Load Balancing in All Mode is used Version 1.0 STVC/PRM. Page 1 of 6

Mobile Cloud Computing T Open Source IaaS

Top-Down Network Design

ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy

SoMA. Automated testing system of camera algorithms. Sofica Ltd

Layer 3 Network + Dedicated Internet Connectivity

COM 444 Cloud Computing

Desktop Virtualization Technologies and Implementation

The GO4IT IPv6 Test Tool and Associated services. Alain Vouffo FOKUS (Fraunhofer Institute for Open Communication Systems)

Adaptive Probing: A Monitoring-Based Probing Approach for Fault Localization in Networks

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS

Generating Automated Test Scripts for AltioLive using QF Test

Agilent RouterTester. E7864A Technical Datasheet. Powered by QA Robot Technology. Complete MPLS Protocol Test Software MPLS Protocol Test Software

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

1. INTERFACE ENHANCEMENTS 2. REPORTING ENHANCEMENTS

Getting Things Done: Practical Web/e-Commerce Application Stress Testing

RDS Building Centralized Monitoring and Control

ORACLE INSTANCE ARCHITECTURE

The Benefits of Verio Virtual Private Servers (VPS) Verio Virtual Private Server (VPS) CONTENTS

Transcription:

Performance testing with TTCN-3 Gábor Ziegler and György Réthy Ericsson Test Competence Center Ericsson Hungary Ltd. Research & Development {gabor.ziegler,gyorgy.rethy}@ericsson.com Contents Background Why a load framework Cornerstones Conclusions Ericsson AB 2006 ETSI-TUC2006 2 Ericsson AB 2006 1

Usage of TTCN-3 in Ericsson Requirements & Pre-study Analysis, Anatomy, System level design Code design/modeling Code reviews FOA I&V Function test Basic (unit) test MDA-based testing Network integration & End-to-end tests System & load tests Integration verification (conformance) Function & regression tests Basic test We deal with this area in this presentation Ericsson AB 2006 ETSI-TUC2006 3 Previous TTCN-3 load testing projects 2002 Research project HTTP load generation with TTCN-3 2003 Radius & Diameter load testing of AAA/EWAS/HSS nodes Beyond 3G research project emulation, conformance, interoperability and load/performance/stability testing of different IP mobility solutions 2004 (Diameter and Radius load tests continued) Load, characteristics, stability and robustness tests of the Automatic Device Configuration solution (TTCN-3 is emulating HLR, BSC, SGSN & SMS-C nodes) 2005 Automatic Device Configuration contd., Ericsson Multi Activation 3G charging and mobile positioning load tests ISUP load generator (and terminator) Ericsson AB 2006 ETSI-TUC2006 4 Ericsson AB 2006 2

Experiences from previous projects Quotes from users Extremely flexible tool that generates traffic load efficiently. Cheap, commercial PCs used as traffic generators. Facilitates automatic testing. Source code available for internal updates. Deep programming skills are required for testers. Too much time spent on test case writing. When used in load mode for high load, we can t have full control of the load generated. We have the feeling that we are not taking advantage of 100 % of TTCN capabilities. There are a lots of common tasks, i.e. a lots of duplication of work be patient, see details on next slides Ericsson AB 2006 ETSI-TUC2006 5 Contents Background Why a load framework Cornerstones Conclusions Ericsson AB 2006 ETSI-TUC2006 6 Ericsson AB 2006 3

Load framework: Targets To provide an *easy to use* solution! Many tasks are generic and common, which shall be done only *once and properly*, such as ensure exact scheduling of the generated traffic provide accurate mix traffics manage shared resource pools provide run-time MMI interface Start/Stop of load generation On-line, centralized adjusting of parameters On-line, centralized at a glance overview of status information Increase efficiency, decrease cost via code re-use Many of the products use the same protocols Elementary protocol behaviours are not changing (standardized) Ericsson AB 2006 ETSI-TUC2006 7 Load framework: Targets (contd.) The TTCN-3 code runs over an abstract TTCN-3 machine How to optimize an abstract language? Code optimization should take into account the peculiarities of our TTCN-3 executor Insider knowledge from the tool developer is needed To provide guidance to TTCN-3 users Test configurations/architectures for load testing Design rules for test designers *Howto*s: advises to increase execution performance Ericsson AB 2006 ETSI-TUC2006 8 Ericsson AB 2006 4

Phases Study phase From October 2005 till March 2006 Collect and consolidate user requirements Develop an implementation sketch and packages Provide first howto guideline Implementation phase From April 2006 Ericsson AB 2006 ETSI-TUC2006 9 Contents Background Why a load framework Cornerstones Conclusions Ericsson AB 2006 ETSI-TUC2006 10 Ericsson AB 2006 5

Most cited requirement: It must be easy to use! Ericsson AB 2006 ETSI-TUC2006 11 Requirements identified Requirements are classified into groups of Functional requirements Generic simulation entities / classes support Load generation requirements scheduling scalability routing / broking error handling Logging / tracing / monitoring requirements Detailedness of simulation Statistics requirements General requirements Absolute Numbers / Projects specific requirements Documentation requirements Efficiency requirements Ericsson AB 2006 ETSI-TUC2006 12 Ericsson AB 2006 6

Three cornerstones of the solution 1. TTCN-3 software framework, A software library The core library as an individual product. Each application dependent libraries are individual products Well defined and documented API Both for the core and the application libraries A collection of mandatory Design Rules (DR-s) for the testers DR-s for source-code structure specification DR-s for test component structure (i.e., TTCN-3 PTC hierarchy) Application specific DR-s Best-Practice Guides for designing effective TTCN-3 code (e.g., use inout parameters instead of a return clause, etc.) 2. Improvements and additions to the Ericsson TTCN-3 Toolset (TITAN) E.g. implementing component extensibility Runtime GUI and CLI 3. Amendments to the TTCN-3 language Though lots have been done to support load testing in edition 3 (e.g. alive PTCs), some features are still missing (see later) Ericsson AB 2006 ETSI-TUC2006 13 SW library dilemma: How to optimize? Two contradicting requirements: A framework shall be general generalization Optimization always task specific specialization The solution: Provide a three levels approach Core framework library : code provided centrally Run-time (on-line) configuration settings, Run-time (on-line) statistics handling Scalability support Generic issues, such as provide pool-variable API Application specific framework libraries : code provided incooperation with project experts, relies on core library code Control logic : is provided by the simple tester, relies on application specific and core library code Ericsson AB 2006 ETSI-TUC2006 14 Ericsson AB 2006 7

Shortages of the TTCN-3 language Function references (altstep ~, testcase ~) Handling of huge mass of subscribers/context/etc. is problematic today: each is in different state, impossible to provide generic algorithms Solution: support callback functions allow to register functions (e.g. store references in a component variable array or pass in as parameter) the generic algorithm will call-back the right function whatever the actual state of the entity is Non-mandatory parameters Backward-compatible extension of libraries is problematic today: adding new parameters to existing interfaces spoils old calls Solution: backward compatible extension of formal parameter lists allow to add default values to formal parameters and allow omitting them in actual parameter lists (default value is used) Some object orientation features Libraries normally have public functions & altsteps and auxiliary data, functions & altsteps The latter is subject to change at library upgrades, hence should be made hidden from the user Ericsson AB 2006 ETSI-TUC2006 15 Load testing architecture Problem: concurrency handling Guaranteed failure for load/stress testing: to be polite Initiating the next traffic flow on schedule shall be done independently from the success/failure of the previous tasks Remember: load testing means parallel traffic flows over common shared resource pools concurrency! TTCN-3 has a special concurrency model PTC-s are run concurrently A PTC is a single CPU system No concurrency support below PTC level by the language PTC-s are run isolated from each other (no shared memory) Solution: Two alternatives, see scheduling strategies on next slides Ericsson AB 2006 ETSI-TUC2006 16 Ericsson AB 2006 8

Local scheduling Run-time GUI/CLI TLTF_MainAdmin MTC Host #i Traffic generator modules TLTF_PtcFunctions User land code for component type XXX_CT XXX_CT TLTF_PtcFunctions User land code for component type ZZZ_CT Host #l Host #k Host #j Traffic generator modules ZZZ_CT XXX_YYY_Mapping ZZZ_Logger ZZZ_Logger ZZZ_WWW_Mapping YYY_PT SUT Load measurement WWW_PT Monitoring Agent Ericsson AB 2006 ETSI-TUC2006 17 Central scheduling Run-time GUI/CLI TLTF_MainAdmin MTC Host #i Host #l Host #k Host #j XXX_Scheduler XXX_CT ZZZ_Scheduler ZZZ_CT User land code for component type XXX_CT XXX_YYY_Mapping Traffic generator modules ZZZ_Logger ZZZ_Logger User land code for component type ZZZ_CT ZZZ_WWW_Mapping YYY_PT SUT Load measurement WWW_PT Monitoring Agent Ericsson AB 2006 ETSI-TUC2006 18 Ericsson AB 2006 9

Conclusions TTCN-3 language and the Ericsson TTCN-3 toolset (TITAN) are mature for load testing, however, there are some problems for load generation The abstract nature of the language The special concurrency model of the language Code optimization is a must But the average human tester is usually not a competent software designer The ongoing Load Test Framework project remedy these shortcomings Provides ready made solution for common problems across projects Provides tool support for runtime control of TTCN-3 test suites Provides Howtos, Design Rules and examples (templates) for application specific problems Ericsson AB 2006 ETSI-TUC2006 19 Thank you for your attention! Questions? Ericsson AB 2006 10

Ericsson AB 2006 ETSI-TUC2006 21 Ericsson AB 2006 11