Ohjelmistotestaus : Python-ohjelmointikielellä kirjoitettujen ohjelmistojen testausmenetelmät
Nissinen, Aliisa (2021)
Nissinen, Aliisa
2021
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2021-11-26
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202110187662
https://urn.fi/URN:NBN:fi:tuni-202110187662
Tiivistelmä
Ohjelmistokehitys on prosessi, johon kuuluu monia vaiheita ohjelmiston suunnittelusta, toteutukseen ja ylläpitoon. Ohjelmistokehityksen yksi tärkeimmistä vaiheista on ohjelmistotestaus, jonka avulla varmistutaan että sovellus on ennalta määritettyjen vaatimusten mukainen ja että se palvelee käyttäjää mahdollisimman hyvin. Testaus on aikaa vievä ja kallis prosessi, johon on sitouduttava projektin alusta alkaen.
Tämän kandidaatintutkielman tavoitteena on tutustua ohjelmistotestaukseen ja selvittää, miksi kyseinen ohjelmistokehityksen vaihe on tärkeä, mihin ohjelmistotestauksessa pyritään, kuka siitä on vastuussa ja miten vaihe vaikuttaa kokonaisvaltaisesti ohjelmistoprojektiin. Työn lopussa esitellään erilaisia testaustasoja ja ohjelmointiesimerkein näytetään, miten testaus voidaan toteuttaa aloittelijatason ohjelmille.
Tutkielma on toteutettu kirjallisuuskatsauksena ja lähteet rajattiin julkaisuvuoden perusteella. Ohjelmistotuotanto on nopeasti kehittyvä tieteenala, joten rajaus tehtiin vuodesta 2010 eteenpäin. Lähteinä on käytetty kirjoja, artikkeleita sekä standardijulkaisuja. Lähteisiin perehtyen on suunniteltu konkreettiset testausesimerkit, jotka ovat itsekirjoitettuja Python-ohjelmointikielellä PyCharm-kehitysympäristössä.
Kirjallisuuskatsauksessa päädytään siihen, että ohjelmistotestauksessa pyritään etsimään ohjelmiston vaatimuksista, suunnitteluprosessista ja toteutuksesta mahdolliset virheet. Testauksen avulla ei pyritä varmistumaan, että ohjelma toimii oikein, vaan tarkoituksena on varmistua, ettei ohjelma mene rikki, kun sitä käytetään väärin. Yleisesti voidaan olettaa, että jokainen ohjelmisto sisältää virheitä. Virheitä voi olla ohjelmointityylissä, käyttäjän syötteiden hallinnasta, tietoturvasta tai jo valmiiden tietokantojen käytöstä. Mitä aikaisemmassa vaiheessa virheet löytyvät, sen edullisempi ja nopeampi ne on korjata. Ohjelmiston testauksen jälkeenkään ohjelmisto ei ole virheetön.
Ohjelmistotestaus vaatii projektilta resursseja, mutta sen avulla ohjelmistoa tuottava yritys voi varmistua että tuote on laadukas, se on käyttötarkoitukseensa sopiva ja että jälkeenpäin korjauksia joudutaan tekemään mahdollisimman vähän. Laadukas lopputuote vaikuttaa kokonaisvaltaisesti yrityksen imagoon, asiakastyytyväisyyteen ja tätä kautta tuottavuuteen. Testaukseen osallistuvien henkilöiden määrittäminen ja testaukseen käytettävät menetelmät sekä resurssit onkin hyvä suunnitella jo projektin alussa kunnolla.
Tämän kandidaatintutkielman tavoitteena on tutustua ohjelmistotestaukseen ja selvittää, miksi kyseinen ohjelmistokehityksen vaihe on tärkeä, mihin ohjelmistotestauksessa pyritään, kuka siitä on vastuussa ja miten vaihe vaikuttaa kokonaisvaltaisesti ohjelmistoprojektiin. Työn lopussa esitellään erilaisia testaustasoja ja ohjelmointiesimerkein näytetään, miten testaus voidaan toteuttaa aloittelijatason ohjelmille.
Tutkielma on toteutettu kirjallisuuskatsauksena ja lähteet rajattiin julkaisuvuoden perusteella. Ohjelmistotuotanto on nopeasti kehittyvä tieteenala, joten rajaus tehtiin vuodesta 2010 eteenpäin. Lähteinä on käytetty kirjoja, artikkeleita sekä standardijulkaisuja. Lähteisiin perehtyen on suunniteltu konkreettiset testausesimerkit, jotka ovat itsekirjoitettuja Python-ohjelmointikielellä PyCharm-kehitysympäristössä.
Kirjallisuuskatsauksessa päädytään siihen, että ohjelmistotestauksessa pyritään etsimään ohjelmiston vaatimuksista, suunnitteluprosessista ja toteutuksesta mahdolliset virheet. Testauksen avulla ei pyritä varmistumaan, että ohjelma toimii oikein, vaan tarkoituksena on varmistua, ettei ohjelma mene rikki, kun sitä käytetään väärin. Yleisesti voidaan olettaa, että jokainen ohjelmisto sisältää virheitä. Virheitä voi olla ohjelmointityylissä, käyttäjän syötteiden hallinnasta, tietoturvasta tai jo valmiiden tietokantojen käytöstä. Mitä aikaisemmassa vaiheessa virheet löytyvät, sen edullisempi ja nopeampi ne on korjata. Ohjelmiston testauksen jälkeenkään ohjelmisto ei ole virheetön.
Ohjelmistotestaus vaatii projektilta resursseja, mutta sen avulla ohjelmistoa tuottava yritys voi varmistua että tuote on laadukas, se on käyttötarkoitukseensa sopiva ja että jälkeenpäin korjauksia joudutaan tekemään mahdollisimman vähän. Laadukas lopputuote vaikuttaa kokonaisvaltaisesti yrityksen imagoon, asiakastyytyväisyyteen ja tätä kautta tuottavuuteen. Testaukseen osallistuvien henkilöiden määrittäminen ja testaukseen käytettävät menetelmät sekä resurssit onkin hyvä suunnitella jo projektin alussa kunnolla.
Kokoelmat
- Kandidaatintutkielmat [8683]