Laitehallinta-sovelluksen käyttöliittymän ja API-rajapinnan testausautomaatio
Heinonen, Timo (2020)
Avaa tiedosto
Lataukset:
Heinonen, Timo
2020
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-2020060216203
https://urn.fi/URN:NBN:fi:amk-2020060216203
Tiivistelmä
Opinnäytetyön tavoitteena oli toteuttaa toimeksiantajalle Laitehallinta-sovelluksen käyttöliittymän sekä ohjelmointirajapinnan testausautomaatioratkaisu. Työn tavoitteena oli varmistaa web-sovelluksen kriittisten ominaisuuksien toiminta sekä sulauttaa testausautomaatioratkaisu osaksi ohjelmistokehitysprosessia.
Käyttöliittymä- sekä rajapintatestaus toteutettiin Robot Framework-ohjelmistokehyksellä ja sen eri kirjastoilla. Testitapaukset käsittelivät erilaisten laitteiden, kalustoiden sekä järjestelmien hallinnan testausta. Käyttöliittymätestauksessa käytettiin SeleniumLibraryavainsanakirjastoa. Rajapintatestaus suoritettiin RESTInstance-avainsanakirjastoa hyödyntäen.
Automaatiotestit sulautettiin osaksi Microsoft Azure Pipelines automatiosointipalvelua ja testauksen suoritti Microsoftin ylläpitämä virtuaalikone. Työssä määritettiin automatisointiputken toiminnan märittelevä YAML-tiedosto.
Työn tuloksena saatiin toteutettua toimiva testausautomaatioratkaisu. Työstä jäi jatkokehitettävää liittyen testitapausten suorittamisen luotettavuuteen sekä virtuaalikoneen suorittamien testitapausten lokitiedostojen turvalliseen säilytykseen. The aim of this thesis was to implement a test automation solution for the client’s device management application. The testing is targeted towards the application’s user interface and the programming interface. The objective was to ensure the operation of the critical functionalities of the application and to integrate the test automation solution into the software development process.
The test automation was implemented by using Robot Framework and many of its keyword libraries. The test cases test the management of various devices and sites. SeleniumLibrary was used in the testing of the user interface. Testing of the programming interface was implemented using RESTInstance keyword library.
Automated tests were integrated with Microsoft Azure Pipelines automation service where the tests were run by Microsoft-hosted virtual machine. The YAML file defining the operation of the automated pipeline was configured in this thesis.
This thesis resulted as the implementation of a functional test automation solution. The implementation left room for further development in terms of the reliability of test case execution and the secure storage of test case log files generated by the virtual machine.
Käyttöliittymä- sekä rajapintatestaus toteutettiin Robot Framework-ohjelmistokehyksellä ja sen eri kirjastoilla. Testitapaukset käsittelivät erilaisten laitteiden, kalustoiden sekä järjestelmien hallinnan testausta. Käyttöliittymätestauksessa käytettiin SeleniumLibraryavainsanakirjastoa. Rajapintatestaus suoritettiin RESTInstance-avainsanakirjastoa hyödyntäen.
Automaatiotestit sulautettiin osaksi Microsoft Azure Pipelines automatiosointipalvelua ja testauksen suoritti Microsoftin ylläpitämä virtuaalikone. Työssä määritettiin automatisointiputken toiminnan märittelevä YAML-tiedosto.
Työn tuloksena saatiin toteutettua toimiva testausautomaatioratkaisu. Työstä jäi jatkokehitettävää liittyen testitapausten suorittamisen luotettavuuteen sekä virtuaalikoneen suorittamien testitapausten lokitiedostojen turvalliseen säilytykseen.
The test automation was implemented by using Robot Framework and many of its keyword libraries. The test cases test the management of various devices and sites. SeleniumLibrary was used in the testing of the user interface. Testing of the programming interface was implemented using RESTInstance keyword library.
Automated tests were integrated with Microsoft Azure Pipelines automation service where the tests were run by Microsoft-hosted virtual machine. The YAML file defining the operation of the automated pipeline was configured in this thesis.
This thesis resulted as the implementation of a functional test automation solution. The implementation left room for further development in terms of the reliability of test case execution and the secure storage of test case log files generated by the virtual machine.