Specification-Based Test Selection in Formal Conformance Testing

No Thumbnail Available

URL

Journal Title

Journal ISSN

Volume Title

Helsinki University of Technology | Diplomityö
Checking the digitized thesis and permission for publishing
Instructions for the author

Authors

Pyhälä, Tuomo

Date

2003

Major/Subject

Tietojenkäsittelyteoria

Mcode

T-119

Degree programme

Language

en

Pages

61

Series

Abstract

More complex systems require more efficient quality assurance. Testing is an often used method to achieve this goal. In this work we consider formal conformance testing, which is a field where formally defined conformance between specifications and implementations is studied. In practice this allows the construction of automated testing tools having a solid theoretical foundation and being able to automatically test whether an implementation conforms to its specification. Test selection refers to the process of trying to select, from a potentially very large set of possible test cases, the tests which most efficiently test the implementation. We consider a set of tests to be efficient, if it tests a large proportion of the implementation behaviour without containing too much redundantly. The proposed test selection method is based on the assumption that the implementation resembles the specification. Therefore, by this assumption, having tested a large proportion of the specification behaviour we have also tested a large proportion of the implementation behaviour. To capture our notion of a large proportion of the specification behaviour, we formally define a specification-based coverage framework, including several coverage metrics of different levels of granularity. We refine an existing conformance testing algorithm to include the specification coverage based test selection methods based on the framework. The algorithm and the coverage metrics are tied together by a heuristic aiming to increase the coverage metrics. Finally, we implement a tool incorporating the discussed algorithms and make a number of experiments with the tool.

Monimutkaiset järjestelmät tarvitsevat tehokkaampia laadunvarmistusmenetelmiä, joista eräs usein käytetty on testaus. Tässä työssä tutkitaan formaalia konformanssitestausta, jossa testataan järjestelmän toimintaa ja tarkastetaan, oliko toiminta halutunlaista. Käytännön hyötynä on mahdollisuus rakentaa selkeästi määriteltyyn teoriaan perustuvia automaattisia testaustyökaluja, jotka voivat tarkistaa, toimiiko toteutus määritelmänsä mukaisesti. Testien valinnassa pyritään valitsemaan mahdollisesti erittäin suuresta määrästä testejä järjestelmän toteutusta tehokkaasti testaava osajoukko. Tehokkaasti testaava osajoukko kattaa suuren osan toteutuksen toiminnallisuudesta sisältämättä juurikaan päällekkäisiä testejä. Työ perustuu oletukselle määritelmää muistuttavasta toteutuksesta. Kun oletus pätee, testattaessa koko määritelmän toiminnallisuus tullaan testanneeksi myös koko toteutuksen toiminnallisuus. Työssä määritellään täsmällisesti kehys peittävyysmetriikoille sisältäen muutamia eri karkeuksisia peittävyysmetriikoita. Aiemmin esitetystä testausalgoritmista kehitämme version, johon voidaan liittää peittävyysmetriikkoihin pohjautuvia testinvalintamenetelmiä. Algoritmi ja peittävyysmetriikat yhdistetään testinvalintaheuristiikalla, joka pyrkii kasvattamaan peittävyysmetriikkaa. Työssä toteutetaan testaustyökalu, joka sisältää käsitellyn algoritmin, heuristiikkoja ja peittävyysmetriikan, sekä tehdään sillä muutamia kokeita.

Description

Supervisor

Niemelä, Ilkka

Thesis advisor

Heljanko, Keijo

Keywords

formal conformance testing, formaali konformanssitestaus, test selection, testinvalinta, on-the-fly testing, lennossa testaus, specification-based coverage, määrittelypohjainen peittävyys

Other note

Citation