Testitapausten testikattavuuden riittämättömyys
Niittyviita, Sampo (2019-12-18)
Niittyviita, Sampo
S. Niittyviita
18.12.2019
© 2019 Sampo Niittyviita. Tämä Kohde on tekijänoikeuden ja/tai lähioikeuksien suojaama. Voit käyttää Kohdetta käyttöösi sovellettavan tekijänoikeutta ja lähioikeuksia koskevan lainsäädännön sallimilla tavoilla. Muunlaista käyttöä varten tarvitset oikeudenhaltijoiden luvan.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:oulu-201912193359
https://urn.fi/URN:NBN:fi:oulu-201912193359
Tiivistelmä
Testitapausten luonti on keskeisessä roolissa ohjelmistotestauksessa. Tämä pätee niin testauksen toteutukselle, tutkimukselle kuin myös muulle alan teoreettiselle pohjalle. Testaus on hyvin pitkälti rakentunut testitapausten ympärille. Aiempi tutkimus on havainnut testitapauksilla testattaessa myös löytyvän sellaisia ohjelmistovirheitä, jotka eivät ole testitapausten määräämällä ohjelman alueella. Testitapauksia käytettäessä testauksessa, ne määräävät testattavasta ohjelmasta toiminnallisuuksien ja ominaisuuksien alueen, jota testit koskevat. Silloin on myös oltava ohjelman alue, joita testitapaukset eivät koske, ts., testitapausten ulkopuolinen alue. Testitapausten käsikirjoituksen määräämä testikattavuus ei siis välttämättä täysin vastaa toteutunutta testauksen laajuutta, kun testitapausten joukon testit ajetaan manuaalisesti.
Tämän opinnäytetyön tarkoituksena on tutkia tätä testitapausten testikattavuuden ulkopuolisten virheiden ilmiötä. Näin kaksi tutkimuskysymystä on esitetty: ”Kuinka suuri osa käsikirjoitetun testauksen löytämistä ohjelmistovirheistä ovat käsikirjoitettujen testitapausten kattamia?” sekä ”Vaikuttaako testitapausten testausohjeistuksen rakenne ulkopuolisten virheiden esiintymiseen?” Näihin kysymyksiin vastaamiseksi järjestettiin aikarajoitettu opiskelijoilla tehtävä koe manuaalisesta funktionaalisesti käsikirjoitetusta testauksesta, joka pohjautui ennalta luotuihin testitapauksiin.
Testikattavuuden yksiköitä usein luonnehditaan riittämättömäksi täysin kattavalle testaukselle, mutta tämän kokeen tulokset tuo tarkastelun alle vielä toisenlaisen ongelman testikattavuudesta: vaikka testitapausten määräämä testikattavuus olisi riittävä, se ei kuitenkaan välttämättä realisoidu riittävinä testauksen tuloksina. Vain osa virheistä löytyivät, jotka olisi pitänyt testitapauksia testaamalla löytää. Tämän lisäksi merkittävä osuus löytyneistä virheistä eivät olleet testitapausten kattamalla alueella.
Testitapausten ulkopuolinen olisi tiedostettava ja huomioitava paremmin. Sen huomiotta jättäminen ja testitapauksiin sokea luottaminen saattaa aiheuttaa ongelmia ja ylimääräisiä kustannuksia ohjelmistoalalla. The creation of test cases is in a central role in software testing. This applies to software testing in the software industry as well as its’ research and other theoretical basis. Testing is largely based on test cases. Prior research conducted on test case-based testing has noted that the testing process discovers defects from the tested software which are not covered by the test cases’ script, i.e., defects external to the test cases’ coverage. When test cases are used in testing, they determine an area from the functionalities and other features of the software which the tests cover. This also means that there should exist an area outside this coverage: the external area of test coverage.
The purpose of this thesis is to study the phenomenon of the discovery of external defects of test case test coverage. Thus, two research questions have been formed as follows: “How large part of the defects found by scripted testing are covered by the test coverage of the script?” and “Does the structure of the test script affect the emergence of external defects of the test case test coverage?” To answer these questions an experiment of scripted testing was conducted with students as participants.
While the metrics of test coverage are often described as insufficient for complete testing, yet, as a result of this thesis, another issue of test coverage is brought upon inspection: even if the test coverage was sufficient; the testing conducted to achieve the coverage does not necessarily actualize as sufficient. Only a part of the defects were found with the tests which cover the defects and, in addition to this, a portion of the defects found by testing the test script are not actually covered by the script.
The external of the test case should be acknowledged and noted in greater detail. The ignorance of the external and blind reliance on a test script may cause troubles and extra costs in the field of software testing.
Tämän opinnäytetyön tarkoituksena on tutkia tätä testitapausten testikattavuuden ulkopuolisten virheiden ilmiötä. Näin kaksi tutkimuskysymystä on esitetty: ”Kuinka suuri osa käsikirjoitetun testauksen löytämistä ohjelmistovirheistä ovat käsikirjoitettujen testitapausten kattamia?” sekä ”Vaikuttaako testitapausten testausohjeistuksen rakenne ulkopuolisten virheiden esiintymiseen?” Näihin kysymyksiin vastaamiseksi järjestettiin aikarajoitettu opiskelijoilla tehtävä koe manuaalisesta funktionaalisesti käsikirjoitetusta testauksesta, joka pohjautui ennalta luotuihin testitapauksiin.
Testikattavuuden yksiköitä usein luonnehditaan riittämättömäksi täysin kattavalle testaukselle, mutta tämän kokeen tulokset tuo tarkastelun alle vielä toisenlaisen ongelman testikattavuudesta: vaikka testitapausten määräämä testikattavuus olisi riittävä, se ei kuitenkaan välttämättä realisoidu riittävinä testauksen tuloksina. Vain osa virheistä löytyivät, jotka olisi pitänyt testitapauksia testaamalla löytää. Tämän lisäksi merkittävä osuus löytyneistä virheistä eivät olleet testitapausten kattamalla alueella.
Testitapausten ulkopuolinen olisi tiedostettava ja huomioitava paremmin. Sen huomiotta jättäminen ja testitapauksiin sokea luottaminen saattaa aiheuttaa ongelmia ja ylimääräisiä kustannuksia ohjelmistoalalla.
The purpose of this thesis is to study the phenomenon of the discovery of external defects of test case test coverage. Thus, two research questions have been formed as follows: “How large part of the defects found by scripted testing are covered by the test coverage of the script?” and “Does the structure of the test script affect the emergence of external defects of the test case test coverage?” To answer these questions an experiment of scripted testing was conducted with students as participants.
While the metrics of test coverage are often described as insufficient for complete testing, yet, as a result of this thesis, another issue of test coverage is brought upon inspection: even if the test coverage was sufficient; the testing conducted to achieve the coverage does not necessarily actualize as sufficient. Only a part of the defects were found with the tests which cover the defects and, in addition to this, a portion of the defects found by testing the test script are not actually covered by the script.
The external of the test case should be acknowledged and noted in greater detail. The ignorance of the external and blind reliance on a test script may cause troubles and extra costs in the field of software testing.
Kokoelmat
- Avoin saatavuus [31657]