Simulaattori osana ARM 6LoWPAN -ohjelmistopinon testausta
Lepikkö, Kimmo (2016)
Lepikkö, Kimmo
Oulun ammattikorkeakoulu
2016
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2016053111154
https://urn.fi/URN:NBN:fi:amk-2016053111154
Tiivistelmä
Opinnäytetyön tarkoituksena oli kehittää ARM 6LoWPAN -ohjelmistopinon testausta hyödyntäen yrityksen sisäisesti kehittämää simulaattoria, jonka avulla voidaan mallintaa suuren sensoriverkon toimintaa ohjelmallisesti. Opinnäytetyön tilaajana toimi ARM Finland Oy. Opinnäytetyön alussa luotiin vaatimusmäärittely simulaattorin jatkokehityksestä, joka mahdollistaisi sen integroinnin yhteen muun testausjärjestelmän kanssa.
Vaatimusmäärittelyn perusteella aloitettiin kehitystyö simulaattorin ja muun testausjärjestelmän kanssa. Aluksi simulaattori piti saada toimimaan yhdessä Python-pohjaisen testauskehyksen kanssa, jotta ohjelmat voisivat vaihtaa viestejä keskenään. Seuraavaksi simulaattoria käyttävään sovellukseen piti lisätä tuki 6LoWPAN-reunareitittimelle sekä reitittävälle noodille. Tämän jälkeen sovellukseen lisättiin tuki liikenteen salaukselle sekä erinäisiä konfiguroituvia parametreja, joilla voidaan muokata simuloitujen noodien asetuksia käynnistyksen yhteydessä. Näiden toimien jälkeen voitiin luoda testauskehyksen avulla testiskriptejä, joilla voitiin testata ohjelmistopinon eri ominaisuuksia automaattisesti.
Opinnäytetyön lopputuloksena 6LoWPAN-ohjelmistopinoa käyttävä simulaattori saatiin yhdistettyä muuhun testausjärjestelmään, jonka avulla voitiin suorittaa simuloituja testejä aina, kun ohjelmistopinoon tulee muutoksia ja mahdolliset ohjelmointivirheet löydetään mahdollisimman aikaisessa vaiheessa. Simulaattoriin pohjautuva testausjärjestelmä on otettu yrityksessä käyttöön pääasialliseksi ja päivittäiseksi testaustyökaluksi ja 6LoWPAN-ohjelmistopinolle on kirjoitettu lyhyessä ajassa useita satoja automaattisia testejä.
Simulaattoriin pohjautuva testausjärjestelmä on jatkuvan kehitystyön alla ja tavoitteena on suurentaa simuloitavan verkon kokoa sekä kasvattaa 6LoWPAN-ohjelmistopinon testattavien ominaisuuksien määrää mahdollisimman monipuoliseksi.
Vaatimusmäärittelyn perusteella aloitettiin kehitystyö simulaattorin ja muun testausjärjestelmän kanssa. Aluksi simulaattori piti saada toimimaan yhdessä Python-pohjaisen testauskehyksen kanssa, jotta ohjelmat voisivat vaihtaa viestejä keskenään. Seuraavaksi simulaattoria käyttävään sovellukseen piti lisätä tuki 6LoWPAN-reunareitittimelle sekä reitittävälle noodille. Tämän jälkeen sovellukseen lisättiin tuki liikenteen salaukselle sekä erinäisiä konfiguroituvia parametreja, joilla voidaan muokata simuloitujen noodien asetuksia käynnistyksen yhteydessä. Näiden toimien jälkeen voitiin luoda testauskehyksen avulla testiskriptejä, joilla voitiin testata ohjelmistopinon eri ominaisuuksia automaattisesti.
Opinnäytetyön lopputuloksena 6LoWPAN-ohjelmistopinoa käyttävä simulaattori saatiin yhdistettyä muuhun testausjärjestelmään, jonka avulla voitiin suorittaa simuloituja testejä aina, kun ohjelmistopinoon tulee muutoksia ja mahdolliset ohjelmointivirheet löydetään mahdollisimman aikaisessa vaiheessa. Simulaattoriin pohjautuva testausjärjestelmä on otettu yrityksessä käyttöön pääasialliseksi ja päivittäiseksi testaustyökaluksi ja 6LoWPAN-ohjelmistopinolle on kirjoitettu lyhyessä ajassa useita satoja automaattisia testejä.
Simulaattoriin pohjautuva testausjärjestelmä on jatkuvan kehitystyön alla ja tavoitteena on suurentaa simuloitavan verkon kokoa sekä kasvattaa 6LoWPAN-ohjelmistopinon testattavien ominaisuuksien määrää mahdollisimman monipuoliseksi.