A conformance test suite for TTCN-3 tools Benjamin Zeiss, T-Systems Andras Kovacs, Broadbit Bogdan Stanca-Kaposta, Testing Technologies.

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

MBT Working Meeting Report Stephan Schulz MTS#56, Göttingen
Test process essentials Riitta Viitamäki,
Detecting Bugs Using Assertions Ben Scribner. Defining the Problem  Bugs exist  Unexpected errors happen Hardware failures Loss of data Data may exist.
Test Automation Success: Choosing the Right People & Process
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,
1 CSC 551: Web Programming Spring 2004 client-side programming with JavaScript  scripts vs. programs  JavaScript vs. JScript vs. VBScript  common tasks.
Automated Software Testing: Test Execution and Review Amritha Muralidharan (axm16u)
ETSI Update on TTCN-3 Language Evolution and Tool Conformance Testing Nikolay Pakulin Contributors: Ina Schieferdecker Jens Grabowski.
Working with JavaScript. 2 Objectives Introducing JavaScript Inserting JavaScript into a Web Page File Writing Output to the Web Page Working with Variables.
EE694v-Verification-Lect5-1- Lecture 5 - Verification Tools Automation improves the efficiency and reliability of the verification process Some tools,
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Principles of Procedural Programming
PRE-PROGRAMMING PHASE
Regression testing Tor Stållhane. What is regression testing – 1 Regression testing is testing done to check that a system update does not re- introduce.
Introduction to XML This material is based heavily on the tutorial by the same name at
Programming. Software is made by programmers Computers need all kinds of software, from operating systems to applications People learn how to tell the.
USING SOFTWARE METRICS IN EDUCATIONAL ENVIRONMENT Ivan Pribela, Zoran Budimac, Gordana Rakić.
10th TTCN-3 User Conference, 7-9 June 2011, Bled, Slovenia AUTOSAR Conformance Tests - Feedback on their development and utilization Alain Feudjio-Vouffo,
Javascript and the Web Whys and Hows of Javascript.
Introduction to Software Quality Assurance (SQA)
Testing. Definition From the dictionary- the means by which the presence, quality, or genuineness of anything is determined; a means of trial. For software.
1 Shawlands Academy Higher Computing Software Development Unit.
13 September 2015 AllSeen Alliance 1 C&C Working Group Meeting 16 JULY 2014.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
PHP TUTORIAL. HISTORY OF PHP  PHP as it's known today is actually the successor to a product named PHP/FI.  Created in 1994 by Rasmus Lerdorf, the very.
Chapter 1 Introduction Dr. Frank Lee. 1.1 Why Study Compiler? To write more efficient code in a high-level language To provide solid foundation in parsing.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
Design and Programming Chapter 7 Applied Software Project Management, Stellman & Greene See also:
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
Software Development Software Testing. Testing Definitions There are many tests going under various names. The following is a general list to get a feel.
JAVA SERVER PAGES. 2 SERVLETS The purpose of a servlet is to create a Web page in response to a client request Servlets are written in Java, with a little.
CMPS 211 JavaScript Topic 1 JavaScript Syntax. 2Outline Goals and Objectives Goals and Objectives Chapter Headlines Chapter Headlines Introduction Introduction.
Describe the Program Development Cycle. Program Development Cycle The program development cycle is a series of steps programmers use to build computer.
BE-SECBS FISA 2003 November 13th 2003 page 1 DSR/SAMS/BASP IRSN BE SECBS – IRSN assessment Context application of IRSN methodology to the reference case.
16 October Reminder Types of Testing: Purpose  Functional testing  Usability testing  Conformance testing  Performance testing  Acceptance.
Unit-1 Introduction Prepared by: Prof. Harish I Rathod
Slide 12.1 Chapter 12 Implementation. Slide 12.2 Learning outcomes Produce a plan to minimize the risks involved with the launch phase of an e-business.
TTCN-3 Language Maintenance and Evolution TTCN-3 User Conference 2011, Bled Gyorgy Rethy STF 430 Leader
The Software Development Process
Week 14 Introduction to Computer Science and Object-Oriented Programming COMP 111 George Basham.
Chapter One An Introduction to Programming and Visual Basic.
Interoperability Testing. Work done so far WSDL subgroup Generated Web Service Description with aim for maximum interoperability between various SOAP.
CEN/ISSS eBIF GTIB Project Meeting, Brussels Mar , 2009 CEN/ISSS eBIF GTIB Project Meeting, Brussels 1 CEN/ISSS eBIF Global eBusiness Interoperability.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Efficiently Solving Computer Programming Problems Doncho Minkov Telerik Corporation Technical Trainer.
1 CSC160 Chapter 1: Introduction to JavaScript Chapter 2: Placing JavaScript in an HTML File.
Introduction to Computer Programming using Fortran 77.
TTCN-3 Testing and Test Control Notation Version 3.
Outcome Agile Testing. 2© 2010 OutSystems – all rights reserved How do you ensure the quality of your delivery?
1 TTCN CONFORMANCE TEST SUITE TTCN-3 Part 1 & Part 9 STF 487 Bogdan Stanca-Kaposta/ Testing Technologies Tomas Urban / Elvior Andras Kovacs / Broadbit.
1 Nikolay Pakulin/ ISPRAS Bogdan Stanca-Kaposta/ Testing Technologies Bostjan Pintar / Sintesio Tomas Urban / Elvior TTCN-XML CONFORMANCE TEST SUITE STF.
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Testing.
TTCN CONFORMANCE TEST SUITE TTCN-3 Part 1 & Part 9 STF 487 MILESTONE 2
Applied Software Implementation & Testing
Ada – 1983 History’s largest design effort
Software life cycle models
TDL: The ETSI Test Description Language
Coding Concepts (Basics)
TDL: The ETSI Test Description Language
Regression testing Tor Stållhane.
TTCN-3 CONFORMANCE TEST SUITE STF 451 STATUS REPORT
ETSI TTCN-3 Test Suites QUALITY IMPROVEMENT
TDL: The ETSI Test Description Language
CHAPTER 6 Testing and Debugging.
Presentation transcript:

A conformance test suite for TTCN-3 tools Benjamin Zeiss, T-Systems Andras Kovacs, Broadbit Bogdan Stanca-Kaposta, Testing Technologies

Slide 2 Agenda  Motivation  STF 409  Methodology  Discussion  Challenges  Conclusion A conformance test suite for TTCN-3 tools

Motivation (1/2)  Many TTCN-3 compilers (~7 commercial, 2 internal)  High interest in the language  Complex standard: hundreds of pages  Estimation of ~5000 requirements  No way to check the compliance of TTCN-3 tools  TTCN-3 is based on ETSI standards  A conformance test suite for TTCN-3 tools is needed!  Quality of a test tool is critical  Errors in the test tool may influece test results. Slide 3 A conformance test suite for TTCN-3 tools

Motivation (2/2)  Relevance:  For users:  Is my tool standards compliant?  Can I switch tools easily / vendor lock-in?  For tool vendors:  Can I improve the standard compliance of my tool?  Possibly later: compliance certification  For standard developers:  Where is need for clarification? Slide 4 A conformance test suite for TTCN-3 tools

STF 409 (1/2)  Specialist Task Force initiated by ETSI MTS  Manpower: 3 persons w. 20 days each (60 days total)  Benjamin Zeiss (T-Systems/University of Göttingen)  Andras Kovacs (Broadbit)  Bogdan Stanca-Kaposta (Testing Technologies)  Dates: October 2010 – Early 2011  Work is based on a framework given by TTCN-3 STF.  Task:  Devel. of a conformance test suite for TTCN-3 tools.  Creation of a thorough documentation for the ATS. Slide 5 A conformance test suite for TTCN-3 tools

STF 409 (2/2)  Three deliverables:  ETSI TS V1.1.1 ( ) – ICS  ETSI TS V1.1.1 ( ) – TSS & TP  ETSI TS V1.1.1 ( ) – ATS & IXIT  Approved by MTS in April  Downloadable from the ETSI download area right now!  Time spent:  10 days each (30 work days)  Development of conformance tests.  10 days each + extra time (30+ work days):  Validation, fixing of problems, documentation, tool development. Slide 6 A conformance test suite for TTCN-3 tools

Methodology (1/7)  Five main steps: 1.Create clause priority list. Discuss with MTS. 2.Develop conformance tests. 3.Create documentation framework. 4.Generate documentation content. 5.Validate and fix.  Step 1 (creation of clause priority list):  Not all clauses can be covered. Selection has to be made.  How to prioritize?  Vendor feedback + most basic functionality.  There is no perfect selection! Slide 7 A conformance test suite for TTCN-3 tools

Methodology (2/7)  Step 2 (development of conformance tests):  The ATS is not the test automation, but the test input!  In most cases: 1 module = 1 conformance test.  Two steps: 1.Specification of the test 2.Implementation of the test in TTCN-3.  Conformance verdict:  Expected tool output is specified in the document tags  Purpose:  Also specified in the document tags  Test automation is not provided by the ATS!  Can be scripted easily by extracting the document tags.  Example Java source code can be provided!  Test suite structure: organized according to clauses. Slide 8 A conformance test suite for TTCN-3 tools

Methodology (3/7)  Step 2 (development of conformance tests) cont.:  Expected output for verdict determination: pass accept/reject [expectedoutput]  Examples: pass reject pass accept, ttcn3verdict:pass pass accept, noexecution  Purpose specification: documentreference, description  Documentreference: part:clause  Examples: 1:5, Ensure that when the IUT loads a module containing some definitions before the module declaration then the module is rejected. Slide 9 A conformance test suite for TTCN-3 tools

Methodology (4/7)  Step 2 (development of conformance tests) cont.:  Complete TTCN-3 test input example: Slide 10 A conformance test suite for TTCN-3 tools /*************************************************** 1:5.2.2, Ensure that the IUT correctly handles the uniqueness of variable names in its scope. pass accept, ttcn3verdict:pass ***************************************************/ module Sem_050202_Uniqueness_001 { import from Sem_050202_Uniqueness_001_import { const all; } type component GeneralComp {} function f_funcScope() { var boolean repeatedIdentifier := true; if(repeatedIdentifier==true) { setverdict(pass); } } testcase TC_Sem_050202_Uniqueness_001() runs on GeneralComp { f_funcScope(); } control { execute(TC_Sem_050202_Uniqueness_001()); } } module Sem_050202_Uniqueness_001_import { // repeated indentifier // from imported module // is allowed const integer repeatedIdentifier := 0; }

Methodology (5/7)  Step 3 (creation of documentation framework):  Already provided by STF393 (Proforma).  Split single document into three documents.  Step 4 (generate documentation content):  Only 60 days manpower, little time for documentation.  Working on a single source saves time.  Solution:  Write test purposes and expected tool outputs directly into the test inputs.  Generate tables for the documentation from the ATS:  Test purpose tables.  Test suite structure.  Much easier to maintain!  Documentation generation tools developed as part of STF409. Slide 11 A conformance test suite for TTCN-3 tools

Methodology (6/7)  Step 5 (validation and fixing):  Validation and fixing took more than half of the development time!  STF internal validation with 4 tools:  TTworkbench: compile-time and execution.  TestCast: compile-time and execution.  IBM: some initial compile-time validation.  MTP: as reports are sent in.  Lots of feedback from Elvior and MTP! Slide 12 A conformance test suite for TTCN-3 tools

Methodology (7/7)  Executing the ATS: Slide 13 A conformance test suite for TTCN-3 tools ATS Sem_060101_TopLevel_001.ttcn NegSem_060303_component_types_001.ttcn … TTCN-3 Tool (test subject) TTCN-3 File Sem_060101_TopLevel_001.ttcn Tool output Rejection as invalidRejection to execute Execution with results (e.g., pass/inconc/fail) Tool output evaluation pass accept, ttcn3verdict:pass failpass Test input Expected output

Discussion  Compliance does not imply safety from a vendor lock-in!  Testing is never complete!  With v1.1.1 of the ATS, about 32% of the core standard clauses are covered with at least one test.  Ideally, we should have many tests for each clause.  Compliance means less likelihood for vendor lock-in.  With better coverage and higher number of test cases, we improve the quality of this statement.  Compliance reduces the likelihood for major tool errors  Tests range from simple arithmetic operations to communication operations and verdict handling.  ATS checks syntax and semantics.  ATS does not check the correctness of every single tool message, but of the overall output. A conformance test suite for TTCN-3 tools Slide 14 TTCN-3 Tool TTCN-3 Conformance ATS Meaning? pass

Challenges (1/2)  Various standard clarifications were necessary:  9 CRs for TTCN-3 core languages have been written.  Unclarified test cases have been excluded from the delivery ("on-hold").  Tools sometimes handle the standard differently.  Tests need to be expressed as tool independent as possible.  Time management:  Proper validation and fixing is extremely time consuming.  More than 10 voluntary days have been actually spent.  Responsibilities:  Everyone mixes up STF393 and STF409 responsibilities (proforma). Slide 15 A conformance test suite for TTCN-3 tools

Challenges (2/2)  Version numbers:  To which core language standard version does the conformance test suite relate to?  How to maintain compatibility across different language versions?  Against which version should the conformance test suite be developed in the future?  Target quality:  The target quality of the test suite should be fixed right in the beginning (Terms of Reference). Slide 16 A conformance test suite for TTCN-3 tools

Conclusion  The conformance test suite is available now!  ATS Metrics:  Total number of conformance tests: 733  Number of positive syntactic conformance tests: 110  Number of negative syntactic conformance tests: 34  Number of positive semantic conformance tests: 335  Number of negative semantic conformance tests: 254  Total number of clauses in the TTCN-3 standard: 342  Total number of clauses (at least partially) covered: 110  About 140 pages of test purposes.  Free to use for tool developers. Use it to improve your tool!  Bug reports: Slide 17 A conformance test suite for TTCN-3 tools

Slide 18 Special thanks: Tool validation and comments Elvior, MTP, Conformiq, Ericsson, ISPRAS Jens Grabowski / University of Göttingen Questions? Feedback? A conformance test suite for TTCN-3 tools