Ohjelmistotestauksen automatisointi : Case: Laskutusprosessi
Bergström-Nieminen, Christa (2025)
Bergström-Nieminen, Christa
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025051010521
https://urn.fi/URN:NBN:fi:amk-2025051010521
Tiivistelmä
Opinnäytetyön tarkoituksena oli selvittää, minkälainen testausstrategia ja -automaatiot soveltuvat aloittavalle startup-yritykselle. Tutkimuksen avulla pyritään varmistamaan alan parhaiden käytänteiden omaksuminen testausstrategiaa ja automatisointeja luodessa. Opinnäytetyön toimeksiantajana oli RoboTech, joka on perusteilla oleva yritys.
Opinnäytetyön tietopohja koostuu strategisesta tasosta, jossa esitellään Agile-kehitysmenetelmä sekä syvennytään testausstrategiaan liittyviin teorioihin. Tämän jälkeen käsitellään järjestelmätestausta operatiivisella tasolla syventymällä testauksen tyyppeihin, rakenteeseen ja vaiheisiin, jonka jälkeen siirrytään testauksen automatisoinnin teoriaan. Opinnäytetyö on toiminnallinen. Tutkimus pohjautui teorian, käytännön ja valittujen ohjelmistojen analysointiin, jonka perusteella pystyttiin luomaan kaksi automatisoitavaa testitapausta. Analysoinnissa käytettiin teorioiden suosittelemia menetelmiä, kuten Pareto.
Tutkimuksissa havaittiin, että hypoteesista poiketen, startup-yrityksille ei suositella testausstrategian luontia, sillä sen ylläpito sitoo turhaan resursseja. Pienissä yrityksissä testaustavoista sopiminen onnistuu usein ilman kattavaa strategiaa. Toinen havainto oli, että testauksia automatisoidessa määrällisesti eniten tulisi olla lyhyitä yksikkötestauksia, toiseksi eniten integraatiotestauksia ja vähiten käyttöliittymätestauksia. RoboTechille kuitenkin luotiin kaksi käyttöliittymätestausta UiPath-ohjelmistolla, sillä tämä oli ennakkoon määritetty automatisoinnissa käytettäväksi ohjelmistoksi. Kolmanneksi havaittiin, että automatisoitavien kohteiden valinnassa tulisi hyödyntää Pareto-periaatetta, jolla pyritään löytämään 80 % ongelmista automatisoimalla 20 % tapauksista. The purpose of the thesis was to find out what kind of testing strategy and automations are suitable for a startup company. The thesis aimed to confirm the implementation of the best practices of the field in creation of test strategy and test automations. Work was conducted to RoboTech, which is currently to be founded.
The knowledge base of the thesis is based on the strategic level in which Agile development methodology is presented and deep dive into the theories related to testing strategy. After that, the thesis presents theories related to software testing on an operative level to divided into different types of testing, testing structure and phases, following testing automation theories. The thesis is a functional study. Study was based to analyzing theory, practical and selected software. Based on the analysis two test scenarios were automated. Analyses were conducted by methods recommended in theories, like the Pareto-method.
During the study, it was noticed that contrary to hypothesis, testing strategy is not recommended for startup companies, because it ties unnecessarily resources. In small companies the best ways and practices to conduct tests are easily agreed and communicated without full testing strategy. Second finding was, that when automating test scenarios, majority of cases should be short unit tests followed by integration tests, and the least amount should be user interface tests. However, the automated test scenarios created for Robotech were user interface tests due to the preliminarily selected software UiPath, with which the user interface tests were more easily created. Third observation of the study was to utilize Pareto-method in selecting automated test cases. In the theory, target is to find 80% of the bugs by automating 20% of the cases.
Opinnäytetyön tietopohja koostuu strategisesta tasosta, jossa esitellään Agile-kehitysmenetelmä sekä syvennytään testausstrategiaan liittyviin teorioihin. Tämän jälkeen käsitellään järjestelmätestausta operatiivisella tasolla syventymällä testauksen tyyppeihin, rakenteeseen ja vaiheisiin, jonka jälkeen siirrytään testauksen automatisoinnin teoriaan. Opinnäytetyö on toiminnallinen. Tutkimus pohjautui teorian, käytännön ja valittujen ohjelmistojen analysointiin, jonka perusteella pystyttiin luomaan kaksi automatisoitavaa testitapausta. Analysoinnissa käytettiin teorioiden suosittelemia menetelmiä, kuten Pareto.
Tutkimuksissa havaittiin, että hypoteesista poiketen, startup-yrityksille ei suositella testausstrategian luontia, sillä sen ylläpito sitoo turhaan resursseja. Pienissä yrityksissä testaustavoista sopiminen onnistuu usein ilman kattavaa strategiaa. Toinen havainto oli, että testauksia automatisoidessa määrällisesti eniten tulisi olla lyhyitä yksikkötestauksia, toiseksi eniten integraatiotestauksia ja vähiten käyttöliittymätestauksia. RoboTechille kuitenkin luotiin kaksi käyttöliittymätestausta UiPath-ohjelmistolla, sillä tämä oli ennakkoon määritetty automatisoinnissa käytettäväksi ohjelmistoksi. Kolmanneksi havaittiin, että automatisoitavien kohteiden valinnassa tulisi hyödyntää Pareto-periaatetta, jolla pyritään löytämään 80 % ongelmista automatisoimalla 20 % tapauksista.
The knowledge base of the thesis is based on the strategic level in which Agile development methodology is presented and deep dive into the theories related to testing strategy. After that, the thesis presents theories related to software testing on an operative level to divided into different types of testing, testing structure and phases, following testing automation theories. The thesis is a functional study. Study was based to analyzing theory, practical and selected software. Based on the analysis two test scenarios were automated. Analyses were conducted by methods recommended in theories, like the Pareto-method.
During the study, it was noticed that contrary to hypothesis, testing strategy is not recommended for startup companies, because it ties unnecessarily resources. In small companies the best ways and practices to conduct tests are easily agreed and communicated without full testing strategy. Second finding was, that when automating test scenarios, majority of cases should be short unit tests followed by integration tests, and the least amount should be user interface tests. However, the automated test scenarios created for Robotech were user interface tests due to the preliminarily selected software UiPath, with which the user interface tests were more easily created. Third observation of the study was to utilize Pareto-method in selecting automated test cases. In the theory, target is to find 80% of the bugs by automating 20% of the cases.