Automaatiotestausprosessin kehittäminen
Pönkänen, Pekka (2017)
Pönkänen, Pekka
Haaga-Helia ammattikorkeakoulu
2017
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2017112718469
https://urn.fi/URN:NBN:fi:amk-2017112718469
Tiivistelmä
FatAmigos on kolmen hengen startup-yritys, jonka tavoitteena on löytää kohdennettuja tapahtumia kuluttajille. FatAmigos tilasi opinnäytetyön, sillä yritys tarvitsi testiautomaatiota kehityksen tueksi. Opinnäytetyön suoritettava toteutus kohdistuu FatAmigosin automaatiotestausprosessin rakentamiseen. Prosessissa suoritetaan automatisoitu testi, joka liitetään osaksi jatkuvaa integraatiota (CI). Testitapauksessa syötetään FatAmigosin aloitussivulla nimi, sähköposti ja painetaan lähetä painiketta. Ohjelmistokehityksessä jatkuvan integraation ja testauksen rooli on keskeisessä asemassa, koska virheiden löytäminen aikaisessa vaiheessa on tärkeää.
Tietoperustan ensimmäisessä pääluvussa käsitellään ohjelmistotestausta, testiautomaatiota ja ohjelmistokehityksen eri malleja testaamisen näkökulmasta. Luvussa tarkastellaan, kuinka testaus määritellään, mikä on testiautomaation tarkoitus sekä tutkitaan erilaisia ohjelmistokehitysmalleja. Ohjelmistotestauksessa käydään läpi testaamisen roolia ja tavoitteita. Ohjelmistomalleihin on valittu kaksi yleistä toimintamallia: Scrum ja Vesiputous.
Toisessa pääluvussa esitellään testiautomaatiossa hyödynnettäviä työkaluja. Näitä työkaluja voidaan käyttää esimerkiksi: hyväksymisvetoiseen-, käyttöliittymä-, suorituskyky- ja puhelimien testaukseen.
Kolmannessa luvussa selvitetään jatkuvaa integraatiota, versionhallintaa sekä lähdekoodia. Jatkuva integraatio on osa ohjelmistokehitysmallia, jolla parannetaan työskentelyä ohjelmistokehityksessä. Versionhallinnan ja lähdekoodin perusteet ja käsitteet käydään läpi kappaleessa, sekä esitellään jatkuvan integraation työkalu TeamCity ja versionhallintatyökalu GitLab.
Neljännessä luvussa alustetaan projektisuunnitelma, tavoitteet ja toteutus. Luvussa käsitellään työkalut ja perustellaan valinnat. Toteutuksessa kerrotaan, kuinka FatAmigosin infrastruktuuri on rakennettu. Versionhallinnan käyttämisen alustavat toiminnot avataan ja aloitetaan testitapauksien laatiminen. Testitapaus rakennetaan Robot Frameworkin avulla. Testitapaus liitetään CI-putkeen sekä käsitellään GitLab-työkalun konfiguraatiotiedostossa. Lopuksi yhdistetään testitapaus kehitysputkeen ja ajetaan testi.
Opinnäytetyön testitulokset ovat positiiviset. Robot Framework -raporteista voidaan päätellä onnistunut testitapaus. Suunnitelulla asetelmalla varmistutaan siitä, että aloitussivun komponentit toimivat. GitLab ja Robot Framework olivat onnistuneita valintoja FatAmigosin kehityksen kannalta, sillä toimivuus oli varmaa ja konfigurointi suoraviivaista.
Tietoperustan ensimmäisessä pääluvussa käsitellään ohjelmistotestausta, testiautomaatiota ja ohjelmistokehityksen eri malleja testaamisen näkökulmasta. Luvussa tarkastellaan, kuinka testaus määritellään, mikä on testiautomaation tarkoitus sekä tutkitaan erilaisia ohjelmistokehitysmalleja. Ohjelmistotestauksessa käydään läpi testaamisen roolia ja tavoitteita. Ohjelmistomalleihin on valittu kaksi yleistä toimintamallia: Scrum ja Vesiputous.
Toisessa pääluvussa esitellään testiautomaatiossa hyödynnettäviä työkaluja. Näitä työkaluja voidaan käyttää esimerkiksi: hyväksymisvetoiseen-, käyttöliittymä-, suorituskyky- ja puhelimien testaukseen.
Kolmannessa luvussa selvitetään jatkuvaa integraatiota, versionhallintaa sekä lähdekoodia. Jatkuva integraatio on osa ohjelmistokehitysmallia, jolla parannetaan työskentelyä ohjelmistokehityksessä. Versionhallinnan ja lähdekoodin perusteet ja käsitteet käydään läpi kappaleessa, sekä esitellään jatkuvan integraation työkalu TeamCity ja versionhallintatyökalu GitLab.
Neljännessä luvussa alustetaan projektisuunnitelma, tavoitteet ja toteutus. Luvussa käsitellään työkalut ja perustellaan valinnat. Toteutuksessa kerrotaan, kuinka FatAmigosin infrastruktuuri on rakennettu. Versionhallinnan käyttämisen alustavat toiminnot avataan ja aloitetaan testitapauksien laatiminen. Testitapaus rakennetaan Robot Frameworkin avulla. Testitapaus liitetään CI-putkeen sekä käsitellään GitLab-työkalun konfiguraatiotiedostossa. Lopuksi yhdistetään testitapaus kehitysputkeen ja ajetaan testi.
Opinnäytetyön testitulokset ovat positiiviset. Robot Framework -raporteista voidaan päätellä onnistunut testitapaus. Suunnitelulla asetelmalla varmistutaan siitä, että aloitussivun komponentit toimivat. GitLab ja Robot Framework olivat onnistuneita valintoja FatAmigosin kehityksen kannalta, sillä toimivuus oli varmaa ja konfigurointi suoraviivaista.