Software unit testing

No Thumbnail Available
Journal Title
Journal ISSN
Volume Title
Helsinki University of Technology | Diplomityö
Checking the digitized thesis and permission for publishing
Instructions for the author
Date
2000
Major/Subject
Informaatiotekniikka
Mcode
Tik-115
Degree programme
Language
fi
Pages
(7) + 94
Series
Abstract
Työn tavoitteena oli määritellä ohjelmistomoduulien testausmetodiikka erään yrityksen tuotekehitysyksikön tarpeiden pohjalta. Moduulitestaus on kaikkein alimman tason testausta, jonka ohjelmoijat itse tekevät ohjelmilleen. Sen aikana löydetään valtaosa kaikista ohjelmasta löytyvistä virheistä, minkä vuoksi se on ohjelmiston laadun kannalta avainasemassa. Aluksi työssä määritellään testauksen yleisiä ominaisuuksia ja tutustutaan tarkasteltavan tuotekehitysyksikön käyttämiin menetelmiin ja kartoitetaan niissä ilmeneviä puutteita. Kirjallisuuden perusteella on esitelty useita testausmenetelmiä. Nämä on jaettu kahteen luokkaan sen perusteella, käytetäänkö niissä hyväksi ohjelman lähdekoodia (white box) vai ei (black box). Black box -menetelmät ovat luonteeltaan yleisempiä ja soveltuvat muuhunkin kuin moduulitestaukseen. White box-menetelmät puolestaan ovat erityisesti moduulitestauksen menetelmiä. Näistä on tarkasteltu tarkemmin kontrollivuohon ja datavuohon perustuvia menetelmiä. Niin ikään kirjallisuuden perusteella on esitelty myös joitain metriikoita, tärkeimpinä Halsteadin ja McCaben metriikat sekä käsitelty aihetta muutenkin, mm. metriikoiden käyttöä. Oman osansa työstä muodostavat evaluoidut testaustyökalut. Määritetyn tarpeen pohjalta valittiin joukko työkaluja, jotka osaltaan helpottaisivat moduulitestausta ja soveltuisivat uuteen testausmetodiikkaan. Viimeisessä osassa esitellään työn tulos, eli uusi metodiikka moduulien testaamiseksi sekä moduulien kehitysprosessi. Tärkein uuden prosessin ja metodiikan ominaisuus on rinnakkaisuus, eli moduulin suunnittelua ja toteutusta sekä testien suunnittelua ja suoritusta ei eroteta omiksi vaiheikseen, vaan ne kaikki etenevät rinnakkain. Testattaville moduuleille suositellaan laadittavaksi erityiset testifunktiot, jotka huolehtivat mahdollisimman suuresta osasta moduulitestausta. Ideana on, että moduuli läpäisee aina nämä testit kokonaisuudessaan, jolloin pyritään varmistumaan siitä, ettei missään vaiheessa tehdä sellaista, mikä aiheuttaisi virheen moduulin aiemmassa koodissa. Lisäksi tällä tavoin toteutettuna testit itse huolehtivat suurelta osin dokumentoinnistaan.
Description
Supervisor
Simula, Olli
Thesis advisor
Salkola, Mika
Keywords
Other note
Citation