Software test automation with UML2.0 TestingProfile & TTCN-3 Maili Markvardt.

Slides:



Advertisements
Similar presentations
© Telelogic AB UML Testing Profile Graphical Testing With UML The UML Testing Profile Eric Samuelsson
Advertisements

Use of ITU-T languages in Nokia
TTCN-3 & Conformance Testing Anitha Krishnamoorthy.
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
MBT Working Meeting Report Stephan Schulz MTS#56, Göttingen
1 CIS224 Software Projects: Software Engineering and Research Methods Lecture 11 Brief introduction to the UML Specification (Based on UML Superstructure.
GFT The Graphical Format of TTCN-3
The Use of TTCN-3 for Software Testing Ina Schieferdecker FOKUS, Berlin
Automated Test Design ™ © 2011 Conformiq, Inc. CONFORMIQ DESIGNER On ES v1.2.1 Stephan Schulz MBT Working Meeting/MTS#56, Göttingen.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
An overview on the Testing and Test Control Notation version 3 (TTCN-3) Helmut Neukirchen Háskóli Íslands
1 UML – an overview What is UML? UML stands for Unified Modelling Language. ”The Unified Modelling Language is a visual language for specifying, constructing.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
1 CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
Software Testing and QA Theory and Practice (Chapter 10: Test Generation from FSM Models) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory.
MTEI Methods & Tools for Enterprise Integration
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 4 - System modelling Dr Richard Clayton.
Copyright © Siemens AG All rights reserved. Essential Criteria on MBT to Ensure Quality of Software in Industry PVR Murthy Andreas Ulrich Siemens.
© LogicaCMG All rights reserved Erik Altena Jos van Rooyen Leon Wolters Towards a Keyword-Driven Test Presentation Format using TestFrame.
System and Software Engineering Research 1 Motorola Copyright 2001 A Perspective on Harmonisation: Benefits and Barriers Clive Jervis Rapporteur Q15 Motorola.
Introduction to MDA (Model Driven Architecture) CYT.
Introduction to UML By: Prof. Aiman Hanna Department of Computer Science, Concordia University, Montreal, Canada.
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Copyright © IBM Corp., All rights reserved; made available under the EPL v1.0 | March 19, 2008 | Short Talk Extending TPTP for TTCN-3 Paul Slauenwhite.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
ISO/IEC CD and WD : Core Model and Model Mapping ISO/IEC JTC1/SC32/WG September 2005, Toronto SC32/WG2 Japan (Kanrikogaku Ltd) Masaharu.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 11, Testing: Model-based Testing.
ARCH-2: UML From Design to Implementation using UML Frank Beusenberg Senior Technical Consultant.
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
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.
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
Copyright SOLINET GmbH SDL & Requirements of Signalling Systems William H. Skelton SOLINET, Stuttgart.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
ITU-T SDOs Amardeo Sarma Co-Chairman, ITU-T Study Group 17.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Source Mastering UML with Rational Rose 2002 Information System Engineering Introduction to UML.
Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher(2009) with material from Amyot User Requirements Notation (URN)
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
Source Mastering UML with Rational Rose 2002 Information System Engineering Introduction to UML.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Slide no. 1  =====!"§!“!Nova§ ITU-T work on technical languages and general software issues Amardeo Sarma Chairman, ITU-T Study Group 10.
® IBM Software Group © 2007 IBM Corporation Module 3: Creating UML Diagrams Essentials of Modeling with IBM Rational Software Architect, V7.5.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
TTCN-3 Testing and Test Control Notation Version 3.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
UML(Unified Modeling Language)
Systems Analysis and Design With UML 2
Mastering UML with Rational Rose 2002
Introduction to Unified Modeling Language (UML)
University of Central Florida COP 3330 Object Oriented Programming
Informatics 121 Software Design I
Model Driven Development with the Emerging UML 2.0
Introduction to UML.
UML profiles.
Implementing the Standardised Mapping of TDL to TTCN-3
Overview of the ETSI Test Description Language
Overview of the ETSI Test Description Language
Introduction to TDL and TOP
Presentation transcript:

Software test automation with UML2.0 TestingProfile & TTCN-3 Maili Markvardt

Topics for Master’s thesis! Topics for master’s thesis in the Institute of Computer Science are introduced Februrary 21st at in VI-224

We will learn.. Introduction to software test automation What is UML 2.0 testing profile What is TTCN-3 – brief overview UML2TP and TTCN-3 tools

Introduction Manual testing – human tester conducts testing activities Automated tests – tests are “written” in a (test) programming language and are conducted by special test automation tools Automating must be carefully considered, because it can in some cases be less effective than manual testing

Test automation tools Many different tools for functional and performance testing Jmeter, Fitnesse, Mercury tools, Rational tools … XUnit = unit testing tools for different languages UML2.0 Testing Profile – language for modeling testing TTCN-3 – language for automating testing

Why UML2.0 TP and TTCN-3? UML – de facto standard in software engineering UML is a LANGUAGE, not a method or a tool! Besides that, UML is a very powerful language TTCN-3 and UML2.0 TP - created to support each other, but They don’t require each other – separate usage is possible

UML and profiles Profiles are meant for tailoring UML for specific application domains, for example Profile for CORBA Profile for QoS and Fault tolerance Profile for Scedulability, Performance and Time (Real-Time Profile) UML Testing profile – since autumn 2005

UML2.0 Testing Profile A language for designing, visualising, specifying, analysing and documenting artifacts concernging testing systems Test architecture Test dynamics Test data Test timing Once more: UML TP is a language, not an method. It provides a notation rather than specifying the usage!

Meta model?! Meta model is a language (set of rules) for describing models of some language Example: book meta model

Test data = stimuli + observations OCL-> ? ->* ->

Test timing Timer start(expires: Time) Stop() Read(): Time isRunning: Boolean TimeOut() : TimeOutMessage Timezone GetTimeZone SetTimeZone Start(..)Stop()timeOut

Diagram types Package, class, component diagrams for specifying the test system structure Sequence and state machine diagrams for specifying the test system behaviour

Bank exampe – unit, integration and system tests in UML TP

Unit test Verify, that SUT (system under test) properly calculates the amount of money added by the user

Unit test – Test Case

The same unit test in JUnit public class MoneyTest extends TestCase { public void addSameMoney { Money money1 = new Money(20, “USD”)); Money money2 = new Money(50, “USD”)); money1.add(money2); } assertTrue(money1.equals(new Money(70, “USD”)) }

Integration test example

Integration test example (2)

Integration test example (3)

Integration test example (4) Testi konfiguratsioon

Integration test example (5)

Integration test example (6)

System test example

System test example (2)

System test example (3)

System test example (4)

System test example (5)

System test example (6)

System test example (7)

System test example (8)

Mappings UML TP -> TTCN-3 Black/grey box unit, integration and system tests Concepts used in UML TP and TTCN-3 are practically the same UML TP -> JUnit Only black box unit tests Partial support of UML TP concepts in JUnit

TTCN-3: The Testing and Test Control Notation Jet another test programming language? For functional, interoperability, regression, unit, integration and system testing in reactive (feedback- enabled) systems and distributed systems Telecom, mobile, internet ja CORBA-based systems Almost full support of UML TP concepts Founder: European Telecommunications Standards Institute (ETSI) 1999 – 2001, latest version from 2007 TTCN-3 originates from Tree And Tabular Combined Notation (TTCN-1 ja TTCN-2)

TTCN-3 Presentation formats: Core language, Graphical representation (MSC), Table representation, + Possibility to define your own presentation formats Graphical Format Tabular Format TTCN-3 Core Notation Presentation Format n

Example of a function function invalidPIN_hwe(integer invalidPIN) runs on HWEmulator { activate(HWEmulator_classifierdefault()); hwCom.call(storeCardData:{current},nowait); t1.start(2.0); hwCom.getreply(display_:{"Enter PIN"}); t1.stop; hwCom.call(isPinCorrect:{invalidPIN},3.0) { [] hwCom.getreply(isPinCorrect:{?} value false) {} } hwCom.getreply(display_:{"Invalid PIN"}); hwCom.getreply(display_:{"Enter PIN again"}); arbiter.send(pass_); // local verdict to the arbiter }

Example of a Default altstep HWEmulator_classifierdefault()runs on HWEmulator_CType { var charstring s; [] t1.timeout {arbiter.send(fail_);} [] hwCom.getcall(ejectCard:{}) {arbiter.send(fail_);} [] hwCom.getcall(display_:{?}) -> param (s) { if (s == "Connection lost") { arbiter.send(inconc_) } else {arbiter.send(fail_)} } }

Tools UML TP SparxSystems Enterprise Architect 6.0 Eclipse Hyades Project CASE tool Theoretically possible to use any CASE tool providing stereotyping (?) TTCN-3 Elvior’s MessageMagic (commercial) Eclipse Framework plug-ins - TTCN-3 core laguage editor and compiler (commercial) OpenTTCN Tester for TTCN-3 (commercial) Conformiq QTronic – TTCN-3 test generator (from UML models)

Further reading 1. TTCN-3 Home Page [ OMG Unified Modeling Language [ ] – UML 2.0 Testing Profile Specification 4. Schieferdecker, Grabowski, Rennoch The UML 2.0 Testing Profile and its relation to TTCN-3 [ goettingen.de/publications/IS_ZD_JG_AR/TestCom 2003_UTP_Final.pdf ] goettingen.de/publications/IS_ZD_JG_AR/TestCom 2003_UTP_Final.pdf