Testauksen automatisoinnin kehittäminen
Kari, Leskinen (2015)
Kari, Leskinen
Jyväskylän ammattikorkeakoulu
2015
Creative Commons Attribution-NonCommercial-NoDerivs 1.0 Suomi
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2015121721346
https://urn.fi/URN:NBN:fi:amk-2015121721346
Tiivistelmä
Opinnäytetyön tutkimuksen tavoitteena oli kehittää Music Info Finland Oy:n nykyistä tes-tausautomaatio järjestelmää integraatio- ja järjestelmätestaustasoilla. Tutkimus toteutet-tiin kehittämistutkimuksena, jossa kartoitettiin toimeksiantajan testauksen nykyinen tila, etsittiin kehittämiskohteet sekä tutkittiin ja testattiin työkaluvaihtoehtoja.
Näiden tutkimusten tuloksien pohjalta toimeksiantajalle toteutettiin toimiva integraatio- ja järjestelmätestausautomaatio jatkuvan integroinnin mahdollistavaksi ja sitä käyttäväksi järjestelmäksi, jota voidaan tarvittaessa laajentaa kattamaan myös muut ohjelmistotes-tauksen tasot. Integraatiotestauksen työkaluksi valittiin Node.js ja Mocha pohjainen Chakram.js, joka on REST ja JSON-rajapintojen testaustyökalu.
Integrointitestaus suoritetaan päivittäin ajettavalla ajastuksella. Käyttöliittymätestaukseen valittiin työkaluksi Selenium pohjainen ja Python kielinen Splinter testaustyökalu. Käyttö-liittymätestaus suoritetaan versionhallinnassa havaittujen muutosten perusteella. Valitut työkalut olivat ilmaisia avoimen lähdekoodin ohjelmia. Järjestelmään on helposti kirjoitet-tavissa uusia testitapauksia, jolloin myös ohjelmointiin perehtymättömät testaajat voivat ylläpitää ja käyttää järjestelmää.
Tutkimuksen tuloksena Music.infon ohjelmistotestausta kehitetään luomalla testausau-tomaatio integraatio- ja käyttöliittymätestaustasoilla Jenkins -testipalvelin ympäristöön käyttäen apuna Git versionhallintaa. Tutkimuksen tuloksia voidaan soveltaa pienten ja keskisuurten ohjelmistoalan yritysten ohjelmistotestaus tarpeisiin.
Näiden tutkimusten tuloksien pohjalta toimeksiantajalle toteutettiin toimiva integraatio- ja järjestelmätestausautomaatio jatkuvan integroinnin mahdollistavaksi ja sitä käyttäväksi järjestelmäksi, jota voidaan tarvittaessa laajentaa kattamaan myös muut ohjelmistotes-tauksen tasot. Integraatiotestauksen työkaluksi valittiin Node.js ja Mocha pohjainen Chakram.js, joka on REST ja JSON-rajapintojen testaustyökalu.
Integrointitestaus suoritetaan päivittäin ajettavalla ajastuksella. Käyttöliittymätestaukseen valittiin työkaluksi Selenium pohjainen ja Python kielinen Splinter testaustyökalu. Käyttö-liittymätestaus suoritetaan versionhallinnassa havaittujen muutosten perusteella. Valitut työkalut olivat ilmaisia avoimen lähdekoodin ohjelmia. Järjestelmään on helposti kirjoitet-tavissa uusia testitapauksia, jolloin myös ohjelmointiin perehtymättömät testaajat voivat ylläpitää ja käyttää järjestelmää.
Tutkimuksen tuloksena Music.infon ohjelmistotestausta kehitetään luomalla testausau-tomaatio integraatio- ja käyttöliittymätestaustasoilla Jenkins -testipalvelin ympäristöön käyttäen apuna Git versionhallintaa. Tutkimuksen tuloksia voidaan soveltaa pienten ja keskisuurten ohjelmistoalan yritysten ohjelmistotestaus tarpeisiin.