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
Instructions for the author
Authors
Pyhälä, Tuomo
Date
2003
Department
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ä, IlkkaThesis advisor
Heljanko, KeijoKeywords
formal conformance testing, formaali konformanssitestaus, test selection, testinvalinta, on-the-fly testing, lennossa testaus, specification-based coverage, määrittelypohjainen peittävyys