Dynamo-Sovellusprojekti. Testaussuunnitelma. Tero Hätinen Joni Purojärvi Antti Pyykkönen

Samankaltaiset tiedostot
Dynamo-Sovellusprojekti. Testaussuunnitelma. Tero Hätinen Joni Purojärvi Antti Pyykkönen

Dynamo-Sovellusprojekti. Testausraportti. Tero Hätinen Joni Purojärvi Antti Pyykkönen

Dynamo-Sovellusprojekti. Testaussuunnitelma. Tero Hätinen Joni Purojärvi Antti Pyykkönen

Dynamo-Sovellusprojekti. Vaatimusmäärittely. Tero Hätinen Joni Purojärvi Antti Pyykkönen

Dynamo-Sovellusprojekti. Vaatimusmäärittely

Dynamo-Sovellusprojekti. Vaatimusmäärittely. Tero Hätinen Joni Purojärvi Antti Pyykkönen

Dynamo-Sovellusprojekti. Sovellusraportti

UCOT-Sovellusprojekti. Testausraportti

Liikkuva-sovellusprojekti

Dynamo-Sovellusprojekti. Projektisuunnitelma. Tero Hätinen Joni Purojärvi Antti Pyykkönen

Dynamo-Sovellusprojekti. Sovellusraportti

Dynamo-Sovellusprojekti. Sovellusraportti

Kuovi-Sovellusprojekti. Vaatimusmäärittely

Convergence of messaging

Liikkuvien isäntäkoneiden reititys

IP-reititys IP-osoitteen perusteella. koneelle uusi osoite tässä verkossa?

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

T Testiraportti - järjestelmätestaus

Liikkuvien isäntäkoneiden reititys

5. Mobile IP (RFC 3220)

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

UCOT-Sovellusprojekti. Asennusohje

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

T Testiraportti - integraatiotestaus

Lohtu-projekti. Testaussuunnitelma

Kuopio Testausraportti Kalenterimoduulin integraatio

Testaussuunnitelma Labra

CONCEPT-Sovellusprojekti. Lisenssisopimus

11. PALAVERIN PÖYTÄKIRJA. Jyväskylän Yliopisto Tietotekniikan laitos CONCEPT-projekti Paikka ja aika

Koskelo-Sovellusprojekti. Vaatimusmäärittely

ALEA-Sovellusprojekti. Testaussuunnitelma

Lisää reititystä. Tietokoneverkot 2008 (4 op) Syksy Teknillinen korkeakoulu. Lisää reititystä. Jaakko Kangasharju

Dynamo-Sovellusprojekti. Sovellusraportti

Määrittelydokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Lisää reititystä. Tietokoneverkot 2009 (4 op) Syksy Futurice Oy. Lisää reititystä. Jaakko Kangasharju

Ohjelmiston testaus ja laatu. Testaustasot

Tietotekniikan Sovellusprojektit

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ohjelmiston testaussuunnitelma

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Kuovi-projekti. Testausraportti

dokumentin aihe Dokumentti: Testausraportti_I1.doc Päiväys: Projekti : AgileElephant

Liikkuva-sovellusprojekti

UCOT-Sovellusprojekti. Vaatimusmäärittely

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0

Testaussuunnitelma. Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma. WebPizza

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Kuopio Testausraportti Asiakkaat-osakokonaisuus

T Testiraportti - integraatiotestaus

UCOT-sovellusprojektin 5. viikkopalaveri

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Verkkotekniikan jatkokurssi Mobile IPv

Keskustelusivusto. Suunnitteludokumentti

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

PORTTI-PROJEKTI. Juha Erkkilä Jenni Hytönen Marko Kivelä Paula Mali Lari Väänänen. Testaussuunnitelma

Teknillinen korkeakoulu T Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Koordinaattieditori

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti

Testiraportti - Koordinaattieditori

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu

Ohjelmistotuotantoprojekti

Liikkuvuudenhallinta Mobile IP versio 6 - protokollalla

Lohtu-projekti. Testiraportti. Versiohistoria: syklin toteutuksen testit. 1. ajo Virve

Testaussuunnitelma Versio Päiväys Tekijä Kuvaus

Mihin kaikkeen voit törmätä testauspäällikön saappaissa?

TESTIRAPORTTI - JÄRJESTELMÄ, ADMIN Virtuaaliyhteisöjen muodostaminen Versio 1.0

Connection Manager -käyttöohje

Testausdokumentti. Sivu: 1 / 10. Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto. Versiohistoria

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2)

Kuovi-projekti. Vaatimusmäärittely

Aika: keskiviikkona klo 10: Paikka: sovellusprojektien kokoushuone Ag C226.2, Jyväskylän yliopisto

Teknillinen korkeakoulu T Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Siirtoprotokolla

Testaussuunnitelma. Asdf. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tekninen suunnitelma - StatbeatMOBILE

Monilähetysreititys (multicast routing)

Monilähetysreititys (multicast routing)

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

COTOOL dokumentaatio Testausdokumentit

INTERNET-yhteydet E L E C T R O N I C C O N T R O L S & S E N S O R S

Testaussuunnitelma. Opeapuri. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

FuturaPlan. Järjestelmävaatimukset

Yksi puu koko ryhmälle

MARA-ALAN LIIKETOIMINNAN TIETOTURVALLISUUSUHAT

TIE Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4. Antti Jääskeläinen Matti Vuori

Projektisopimus. 1. Sopimuksen osapuolet. 2. Määrittelyt. 2.1 Johtoryhmä. 2.2 Suunnitteludokumentit

Ti LÄHIVERKOT -erikoistyökurssi. X Window System. Jukka Lankinen

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

Tekninen suunnitelma - StatbeatMOBILE

Testaussuunnitelma. Karstula. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012

TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL Virtuaaliyhteisöjen muodostaminen Versio 1.0

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3

Teknillinen korkeakoulu T Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Xlet

Ylläpitodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Hälyri-tietojärjestelmän järjestelmätestaussuunnitelma ja -raporttimalli

Turvallinen etäkäyttö Aaltoyliopistossa

Ylläpitodokumentti Mooan

Suoritustavat: Laboratoriotöitä 2.-3.periodi. Luennot 2h, Laboratorityöt 4h, itsenäinen työskentely 124 h. Yhteensä 130 h.

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Transkriptio:

Dynamo-Sovellusprojekti Testaussuunnitelma Tero Hätinen Joni Purojärvi Antti Pyykkönen Versio 1.1 Julkinen 11.12.2007 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä

Hyväksyjä Päivämäärä Allekirjoitus Nimenselvennys Projektipäällikkö..2007 Tilaaja..2007 Ohjaaja..2007

Tietoa dokumentista Tekijät: Tero Hätinen(TH) tejuhati@cc.jyu.fi 050-3528817 Joni Purojärvi(JP) jopuroja@cc.jyu.fi 040-5271885 Antti Pyykkönen(AP) anpyykko@cc.jyu.fi 050-5376727 Dokumentin nimi: Dynamo-projekti, Testaussuunnitelma Sivumäärä: 20 Tiedosto: testaussuunnitelma11.tex Tiivistelmä: Projekti kehittää Dynamics-sovellusta vastaamaan paremmin tietotekniikan laitoksen ja LaiLa-projektin tarpeita. Dynamo-projekti toteuttaa järjestelmän testauksen dokumentissa kuvatuilla tavoilla. Avainsanat: DHCP, Dynamics, integrointitestaus, järjestelmätestaus, kotiagentti, mobiililaite, Mobile IP, testaus, testausympäristö, testitapaukset, vierasagentti, virtuaalinen vierasagentti, yksikkötestaus. i

Muutoshistoria Versio Päivämäärä Muutokset 0.1 7.11.2007 Ensimmäinen luonnos. Laadittu luvut"johdanto", "Termit", "Testausympäristö", "Testauksen toteutus","testitapaukset","yhteenveto"ja"lähteet". 0.2 12.11.2007 Muokattu luvun 3 listaa. Lisätty lukuun 5 alaluvut "Moduulitestaus", "Integrointitestaus" ja "Käyttötapaukset". Lisätty uusi luku"testauksen havainnot". Korjattu kirjoitusvirheitä, luvun 5 taulukot keskitetty ja yhteenvetoa muokattu. 0.3 16.11.2007 Muutettu dokumentin nimi"testisuunnitelmaksi". Lisätty lukuun 5 testauksessa käytettävän datan esittely. Muutettu moduulitestaus yksikkötestaukseksi. Tarkennettu integraatio- ja järjestelmätestauksen testitapauksia. Poistettu luku "Testauksen havainnot". Korjattu kirjoitusvirheitä. 0.4 20.11.2007 Päivitetty avainsanalista, lisätty "NAI" termistöön, muokattu johdantoa, "moduulitestaus" muutettu "yksikkötestaukseksi" poistettu testaustapausten prioriteetit, muokattu testausdatan listat ja muokattu yhteenvetoa. 0.9 27.11.2007 Lisätty lukuun 1 maininta integraatio- ja järjestelmätestauksesta, muokattu luvun 5.3 listan rakennetta ja muokattu taulukkoa 5.8. 1.0 3.12.2007 Korjattu testitapausta 4.2. Muutettu versio numero. 1.1 11.12.2007 Lisätty testitapausten tilat. Muutettu luvun 5 nimeksi"dhcp-tuen testitapaukset". Lisätty uusi luku"virtuaalisen vierasagentin testitapaukset". Tekijät AP,JP AP,JP AP,JP AP,JP AP,JP AP,JP JP ii

Tietoa projektista Dynamics on Teknillisen korkeakoulun kehittämä sovellus Mobile IPv4-verkkoon. Se mahdollistaa liikkuvien päätelaitteiden liikkumisen verkosta toiseen katkaisematta yhteyttä, sekä huolehtii pakettien välittämisestä verkosta toiseen. Dynamoprojekti jatkokehittää Dynamics-sovellusta vastaamaan paremmin tietotekniikan laitoksen ja LaiLa-projektin tarpeita. Tekijät: Tero Hätinen(TH) tejuhati@cc.jyu.fi 050-3528817 Joni Purojärvi(JP) jopuroja@cc.jyu.fi 040-5271885 Antti Pyykkönen(AP) anpyykko@cc.jyu.fi 050-5376727 Tilaaja: Riku Ahonen riahonen@jyu.fi 040-5174014 Olli Alanen opalanen@jyu.fi 014-2604974 Ohjaajat: Juha Huikari juha.huikari@jyu.fi 044-5329883 Jukka-Pekka Santanen santanen@mit.jyu.fi 014-2602756 Yhteystiedot: Sähköpostilistat dynamo@korppi.jyu.fi, dynamo_opetus@korppi.jyu.fi, dynamo-oma.group@korppi.jyu.fi Sähköpostiarkistot https://korppi.jyu.fi/list-archive/ WWW-sivut dynamo/ind.html, https://korppi.jyu.fi/list-archive/ dynamo_opetus/ind.html Työhuone Ag C223.4/ 014-2604966 http://sovellusprojektit.it.jyu.fi/dynamo iii

iv

Sisältö 1 Johdanto 1 2 Termit 2 3 Testausympäristö 4 3.1 Ohjelmistot..... 4 3.2 Laitteistojakäyttöjärjestelmät... 4 3.3 Verkko.... 5 4 Testauksenkäytänteet 6 4.1 Testauksentarkoitus... 6 4.2 Yksikkötestaus... 6 4.3 Integrointitestaus..... 6 4.4 Järjestelmätestaus..... 7 5 DHCP-tuentestitapaukset 8 5.1 Testausdata.... 8 5.2 Yksikkötestaus... 10 5.3 Integraatiotestaus..... 13 5.4 Järjestelmätestaus..... 14 6 Virtuaalisen vierasagentin testitapaukset 16 6.1 Testausdata.... 16 6.2 Integraatiotestaus..... 17 6.3 Järjestelmätestaus..... 17 7 Yhteenveto 19 Lähteet 20 v

vi

1 Johdanto Dynamics on Teknillisen korkeakoulun kehittämä sovellus Mobile IPv4-verkkoon. Se mahdollistaa liikkuvien päätelaitteiden liikkumisen verkosta toiseen katkaisematta yhteyttä, sekä huolehtii pakettien välittämisestä verkosta toiseen. Dynamoprojekti on Jyväskylän yliopiston tietotekniikan laitoksen syksyn 2007 sovellusprojekti. Se määrittelee ja suunnittelee sekä osin toteuttaa ja testaa Dynamics-sovellukseen tarvittavat muutokset, jotta Dynamics saataisiin vastaamaan LaiLa-projektin tarpeita. Projektin taustaa ja tavoitteita on kuvattu tarkemmin projektisuunnitelmassa[5]. Testauksella varmistetaan sovelluksen virheetön toiminta vaatimusmäärittelyssä[6] esitetyllä tavalla. Dynamo-projektin toteuttamia muutoksia ja lisättyjä toimintoja testataan yksikkötestauksena suoraan testausympäristössä sitä mukaa, kun muutoksia tai uusia toimintoja toteutetaan. Yksikkötestausten jälkeen suoritetaan integrointitestaus, jossa testataan valmiiden ja testattujen komponenttien yhteistoimintaa. Projektin lopussa suoritettavan järjestelmätestauksen avulla pyritään varmistamaan sovelluksen virheetön ja vaatimusmäärittelyn mukainen toiminta. Testitulosten pohjalta laaditaan erillinen testausraportti. Luvussa 2 kuvataan dokumentissa käytetyt termit. Luvussa 3 esitellään testausympäristö, luvussa 4 testautuksen käytänteet, luvussa 5 DHCP-tuen testitapaukset ja luvussa 6 virtuaalisen vierasagentin testitapaukset. 1(20)

2 Termit Luvussa kuvataan dokumentin ja projektin olennainen termistö. Aihealueen termejä ovat seuraavat: Dynamics Dynamo-verkko GPL LaiLa on Teknillisen korkeakoulun kehittämä sovellus Mobile IPv4-verkkoon. on Dynamo-projektissa käytettävä verkko, jonka vaatimuksia vastaavaksi Dynamics-sovellusta muokataan. on käytetyin vapaanlähdekoodin ohjelmien lisenssi. on tietotekniikan laitoksen tutkimusprojekti, jossa tarkastellaan langattomien laajakaistapalveluiden hallintaa multi-access-verkossa. Teknisiä termejä ovat seuraavat: Agenttipyyntöviesti Agentti Autentikointi DHCP Elinaika Lease-aika (engl. agent solicitation message) on mobiililaiteen generoima viesti, kun laite tulee verkkoon ja haluaa rekisteröityä agentille. on joko koti- tai vierasagentti. on tapahtuma, jolla kaksi osapuolta varmistavat toistensa identiteetin. (engl. Dynamic Host Configuration Protocol) on verkkoprotokolla, joka jakaa dynaamisesti IP-osoitteita verkkoon liittyville päätelaitteille. on tunnelin elinaika agenttien välillä. on aika sekunteina, jonka ajan DHCP:n antama IP on käytettävissä. 2(20)

Kotiagentti Kotiosoite Kotiverkko Jaettu salaisuus MAC-osoite Mobiililaite Mobile IPv4 NAI Rekisteröintiviesti Tilapäisosoite Vastaanottava solmu Vierasagentti Vierasverkko on kotiverkossa oleva ohjelmisto, joka tunneloi kaikki mobiililaitteelle menevät paketit ja ylläpitää tietoa mobiililaitteen sijainnista. on mobiililaitteen osoite, joka pysyy aina samana, vaikka laite siirtyisi kotiverkosta vierasverkkoon. on verkko, johon mobiilin päätelaitteen kotiosoite kuuluu. on symmetrisessa salauksessa käytetty avain, jonka avulla selväkielinen teksti salataan. on laitteen fyysinen osoite. on laite, joka voi liikkua verkosta toiseen. on IPv4-protokollan laajennus, joka mahdollistaa liikkuvien päätelaitteiden toiminnan IPv4-verkossa. (engl. Network Address Identifier) on laitteen verkkoosoitteen tunniste, esim. matti@jyu.fi. on mobiililaitteen kotiagentille generoima rekisteröintipyyntö. (engl. care-off address) on mobiililaitteen osoite vierasverkossa vierasagentin ja mobiilaitteen välillä. (engl. corresponded node) on mobiililaitteen kanssa keskusteleva palvelu tai kone. ohjaa liikennettä kotiagentin ja mobiilin päätelaitteen välillä, sekä tarjoaa verkon palvelut päätelaitteelle. on verkko, jossa mobiili päätelaite vierailee. Virtuaalinen vierasagentti on kotiagentin kuormituksen testaukseen tarkoitettu työkalu. 3(20)

3 Testausympäristö Luvussa esitellään projektin testauksessa käytettäviä sovelluksia, laitteistoja ja verkkoa. 3.1 Ohjelmistot Muokattavat ohjelmistot on toteutettu Linux-alustalle C-kielellä. Projektissa testattavat ohjelmat ovat seuraavat: Kotiagentti on Dynamics-projektin kehittämä Mobile IPv4:n mukainen kotiagentti(versio 0.8.1). Vierasagentti on Dynamics-projektin kehittämä Mobile IPv4:n mukainen vierasagentti(versio 0.8.1). Mobiililaite on Ciscon kehittämä Mobile IPv4:n mukainen mobiilaite (versio 2.0.14). DHCP-palvelin on Internet Systems Consortiumin kehittämä vapaan lähdekoodin alainen DHCP-palvelin(versio 4.0.0a3). UDHCP-asiakas on Russ Dillin, Matthew Ramsayn ja Chris Trewin kehittämä minimaalinen DHCP-asiakasohjelmisto(versio 0.9.8). Testauksessa käytettävät ohjelmistot ovat seuraavat: Wireshark on protokolla-analysaattori ja pakettikaappari(versio 0.99.6). GDB (GNU debugger) on konsolipohjainen virheenjäljitystyökalu Linuxille(versio 6.7.1). 3.2 Laitteisto ja käyttöjärjestelmät Projektiryhmällä on käytössään testausympäristö, joka koostuu neljästä eri tietokoneesta. Jokaiseen koneeseen on asennettu yksittäinen palvelinsovellus käytön helpottamiseksi ja verkon topologian yksinkertaistamiseksi. Testaus toteutaan testausympäristössä seuraavilla käyttöjärjestelmillä: 4(20)

Ubuntu 6.10 on kotiagenttissa, vierasagentissa ja DHCP-palvelimessa. Windows XP on mobiililaitteessa. 3.3 Verkko Testausympäristön verkko on rakenteeltaan kuvan 3.1 mukainen. Verkko toteuttaa mobile IPv4:n[1] vaatimukset. Kotiagentti(kuvassa 3.1 KA) ja DHCP-palvelin (DHCP) ovat samassa verkossa, joka on testausympäristössä kotiverkko. Vierasagentti(VA) on ainoa aktiivinen laite vierasverkossa. Kuva 3.1: Testausympäristön rakenne. Testausympäristössä mobiilaitetta(kuvassa 3.1 ML) ei voi vaihtaa vierasverkosta kotiverkkoon, koska Ciscon mobiilaite ei ole aivan yhteensopiva Dynamicsin kotiagentin kanssa. Mobiililaite koittaa rekisteröityä oikein, mutta kotiagentti ei vastaa mobiililaitteelle mitään. Dynamicsin oma mobiililaite toimii verkossa oikein, mutta se ei tue dynaamista kotiosoitetta, minkä takia sitä ei käytetä projektissa. Tämä ei aiheuta ongelmia vaatimuksiin tai testaukseen, koska tilaajan käyttämää verkkoa koskee samat rajoitukset. 5(20)

4 Testauksen käytänteet Sovellusta testataan koko projektin ajan. Sovelluksen jatkokehitys tehdään pääasiassa testausympäristössä, jossa sovellusta voidaan testata aina muutosten jälkeen. Sovelluksen komponentteja testataan yksikkötestauksella, jonka jälkeen komponenttien yhteistoiminta testataan integrointi- ja järjestelmätestauksella. 4.1 Testauksentarkoitus Testauksella varmistetaan, että sovellus tarjoaa vaatimusmäärittelyssä esitetyt tiedot ja toiminnot. Lisäksi testauksen kautta varmistetaan sovelluksen toiminta mahdollisissa virhetilanteissa ja parannetaan sovelluksen laatua. 4.2 Yksikkötestaus Yksikkötestaus kohdistuu sovelluksen yksittäisten komponenttien toimintaan erillään muusta järjestelmästä. Tällä tavoin testataan esimerkiksi sovelluksessa käytettävää tietorakennetta. Yksikkötestaus suoritetaan ryhmän jäsenten toimesta kehitystyön yhteydessä. 4.3 Integrointitestaus Integrointitestauksessa valmiit ja testatut komponentit testataan yhteistoiminnassa muiden jo toteutettujen järjestelmän osien kanssa. Integrointitestaus suoritetaan testausympäristössä, jossa myös sovelluksen jatkokehittäminen toteutetaan. Integrointitestaus suoritetaan ryhmän jäsenten toimesta. Johtuen inkrementaalisesta prosessimallista yksikkö- ja integrointitestausta tullaan käytännössä suorittamaan hieman päällekkäin. Komponenttia ohjelmoitaessa on valmiita komponentteja jo ehditty testata integroituina osaksi järjestelmää. 6(20)

4.4 Järjestelmätestaus Projektin lopussa suoritetaan järjestelmätestaus. Tämä suoritetaan erillään kehikehitysympäristöstä, esimerkiksi tietoliikennelaboratoriossa. Järjestelmätestauksessa pyritään varmistamaan sovelluksen virheetön ja vaatimusmäärittelyn mukainen toiminta. Testaukseen osallistuu ryhmän jäsenten lisäksi ainakin tekninen ohjaaja ja vähintään toinen tilaajan edustajista. 7(20)

5 DHCP-tuen testitapaukset Luvussa esitellään pääosin vaatimusten[6] ja käyttötapausten pohjalta laaditut testitapaukset ja niiden tilat. Testitapausten tilat on määritelty taulukossa 5.1. Tila Kuvaus Testauksessa ei havaittu virheitä. Virhe Testauksessa havaittiin kriittisiä virheitä. Varoitus Testauksessa havaittu virhe ei ole kriittinen. Testaamatta Testausta ei ole suoritettu. Ei testata Testausta ei vaadita kyseiselle testitapaukselle. Taulukko 5.1: Testitapausten tilat. 5.1 Testausdata Testauksessa käytetään Dynamicsin kotiagentin luomaa asetustiedostoa sellaisenaan ja luvussa esiteltävää muuttuvaa dataa eri tapauksissa. Testitapauskohtainen testausdata esitellään tarkemmin testausraportissa. Oikein muodostettu DHCP-tuen rekisteröintipyyntö sisältää seuraavat kentät: - kotiosoite 0.0.0.0, - kotiagentin osoite oikea esim. 172.16.0.1, - tilapäisosoite vierasagentin verkosta, esim. 162.168.0.25, - NAI:n pituus välillä 2 ja 32, esim. matti@jyu.fi sekä - elinaika positiivinen kokonaisluku. Oikein muodostettu poistumispyyntö sisältää seuraavat kentät: - kotiosoite oikea esim.192.168.0.103, - kotiagentin osoite oikea esim. 172.16.0.1, 8(20)

- tilapäisosoite vierasagentin verkosta, esim. 162.168.0.25, - NAI:n pituus välillä 2 ja 32, esim. matti@jyu.fi sekä - elinaika 0. Väärin muodostettu DHCP-tuen rekisteröintipyyntö tulee sisältää jonkin seuraavista kentistä väärin: - kotiosoite muuta muotoa kuin 0.0.0.0, - kotiagentin osoite väärä(paketti ei saavu edes kotiagentille), - tilapäisosoite väärä(kotiagentti ei voi tarkastaa osoitteen oikeellisuutta) tai - NAI väärän pituinen tai puuttuu kokonaan. Väärin muodostettu rekisteröintipyyntö ilman DHCP-tukea tulee sisältää jonkin seuraavista kentistä väärin: - kotiosoite 0.0.0.0 tai eri verkosta kuin kotiagentti, - kotiagentin osoite väärä, - tilapäisosoite väärä tai - NAI väärän pituinen tai puuttuu kokonaan. Oikein muodostettu rekisteröintivastaus sisältää seuraavat kentät: - oikea kotiosoite kotiverkon verkosta, - sama tilapäisoite kuin rekisteröintipyynnössä, - sama NAI kuin rekisteröintipyynnössä ja - sama vierasagentin osoite kuin rekisteröintipyynnössä. Väärin muodostettu rekisteröintivastaus tulee sisältää jonkin seuraavista kentistä väärin: - vääränlainen kotiosoite(eri verkosta kuin kotiagentti), - eri tilapäisosoite kuin rekisteröintipyynnössä tai - eri NAI kuin rekisteröintipyynnössä. 9(20)

5.2 Yksikkötestaus Mobiililaitteen liittymisen ja tunnistamisen testitapaukset on esitetty taulukossa 5.2. Numero Kuvaus 1.1 Dynamicsin kotiagentin tulee tunnistaa ja hyväksyä IP-osoitteesta 0.0.0.0tulevarekisteröintipyyntö. 1.2 Dynamicsin kotiagenttiin tulee lisätä mahdollisuus valita, käyttääkö se dynaamista vai staattista IP-osoitetta mobiililaitteiden kotiosoitteille. 1.3 Dynamicsin kotiagentin tulee antaa mobiililaitteelle kotiosoite dynaamisesti tai staattisesti riippuen mobiililaitteen kotiosoitekentästä. Tila Ei testata Ei testata Taulukko 5.2: Mobiililaitteen liittyminen. IP:n hankkimisen ja rekisteröintiviestin lähettämisen testitapaukset on esitelty taulukossa 5.3. Numero Kuvaus 2.1 Sovellukseen tulee toteuttaa DHCP- DISCOVER-viestin lähettäminen verkkoon. 2.2 Sovellukseen tulee toteuttaa standardin mukainen DHCP-keskustelu. 2.3 Sovelluksen tulee tallentaa DHCPpalvelimelta saatu IP-osoite tietorakenteeseen. 2.4 Sovelluksen tulee generoida rekisteröintivastaus mobiililaitteelle. Tila Taulukko 5.3: IP:n hankkiminen ja antaminen. 10(20)

IP-osoitteen ylläpidon testitapaukset on esitelty taulukossa 5.4. Numero Kuvaus 3.1 Sovelluksen tulee hoitaa DHCP:lta saadun IP-osoitteen ylläpito uusimalla lease-aika aina, kun mobiililaite uusii tunnelin. 3.2 Sovelluksen tulee hoitaa DHCP:lta saadun IP-osoitteen ylläpito uusimalla lease-aika aktiivisesti itse. Tila Ei testata Taulukko 5.4: IP-osoitteen ylläpito. IP-osoitteen vapauttamisen testitapaukset on esitelty taulukossa 5.5. Numero Kuvaus 4.1 Sovelluksen tulee vapauttaa DHCP:lta saatu IP-osoite, kun mobiililaite poistuu verkosta. 4.2 Sovelluksen tulee vapauttaa DHCP:lta saatu IP-osoite, kun tunnelin elinaika loppuu. Tila Virhe Ei testata Taulukko 5.5: IP-osoitteen vapauttaminen. 11(20)

Säikeistyksen testitapaukset on esitelty taulukossa 5.6. Numero Kuvaus 5.1 Sovelluksen tulee toteuttaa DHCPkeskustelu ja rekisteröintivastauksen lähettämisen toiminnot omassa säikeessä. 5.2 Sovelluksen tulee toteuttaa DHCP:lta saadun mobiililaitteen kotiosoitteen vapauttaminen DHCP-palvelimelta omassa säikeessä. Tila Ei testata Ei testata Taulukko 5.6: Kotiagentin säikeistys. Tietorakenteen testitapaukset on esitelty taulukossa 5.7. Numero Kuvaus 6.1 Tietorakenteeseen tulee voida lisätä tietoa. 6.2 Tietorakenteesta tulee voida etsiä tietoa. 6.3 Tietorakenteesta tulee voida poistaa tietoa. Tila Taulukko 5.7: Tietorakenne. 12(20)

5.3 Integraatiotestaus Integrointitestauksen testitapaukset on esitelty taulukossa 5.8. Numero Kuvaus 7.1 Laitteen rekisteröintipyyntö käsitellään oikeaoppisesti ja se lisätään tietorakenteeseen. 7.2 Laitteen virheellinen rekisteröintipyyntö käsitellään oikeaoppisesti ja paketti hylätään. 7.3 Laitteen rekisteröintipyyntö käsitellään oikeaoppisesti ja se lisätään tietorakenteeseen, käydään DHCPkeskustelu ja saatu IP-osoite lisätään tietorakenteeseen. 7.4 Oikein muodostetun rekisteröintipyynnön jälkeen kotiagentti lähettää oikein muodostetun rekisteröintivastauksen. Tila Taulukko 5.8: Integrointitestauksen testitapaukset. Taulukon 5.8 testitapaukset tarkemmin kuvattuina ovat seuraavat: 7.1 Oikein muodostettu rekisteröintipyyntö saapuu vierasagentilta kotiosoitteella 0.0.0.0. Kotiagentti purkaa paketin paikallisiin muuttujiin kotiosoite, NAI, NAI:n pituus ja tilapäisosoite. Tämän jälkeen nämä tiedot lisätään tietorakenteen ensimmäiseen vapaaseen kohtaan. 7.2 Väärin muodostettu rekisteröintipyyntö saapuu mistä tahansa osoitteesta. Kotiagentti purkaa paketin paikallisiin muuttujiin kotiosoite, NAI, NAI:n pituus ja tilapäisosoite. Mahdolliset tapaukset ovat seuraavat: - Jos kotiosoite ei ole 0.0.0.0, paketti hylätään. - Jos NAI puuttuu tai on väärän pituinen, paketti hylätään. 7.3 Oikein muodostettu rekisteröintipyyntö saapuu vierasagentilta kotiosoitteella 0.0.0.0. Kotiagentti purkaa paketin paikallisiin muuttujiin 13(20)

kotiosoite, NAI, NAI:n pituus ja tilapäisosoite. Tämän jälkeen nämä tiedot lisätään tietorakenteen ensimmäiseen vapaaseen kohtaan. NAI asetetaan client_id-kenttään DHCP-paketissa. Tämän jälkeen suoritetaan standardin mukainen DHCP-keskustelu [2]. DHCP:ltä saatu IP-osoite lisätään tietorakenteeseen ko. laitteen kohdalle. 7.4 Suoritetaan samat toimenpiteet kuin testitapauksessa 7.3. Tämän jälkeen kotiagentti generoi oikein muodostetun vastausviestin. 5.4 Järjestelmätestaus Käyttötapausten pohjalta laaditut järjestelmätestauksen testitapaukset on esitelty taulukossa 5.9. Numero Kuvaus Tila 8.1 Laite rekisteröityy onnistuneesti. 8.2 Pakettien välitys toimii verkossa. Virhe 8.3 Laite lähettää virheellisen rekisteröintipyynnön. 8.4 Laite poistuu verkosta onnistuneesti. 8.5 Useita laitteita rekisteröityy onnistuneesti. Huomio 8.6 Useita laitteita poistuu verkosta onnistuneesti. Taulukko 5.9: Järjestelmätestauksen testitapaukset. Taulukon 5.9 testitapaukset tarkemmin kuvattuina ovat seuraavat: 8.1 Mobiililaitteen käynnistyttyä se lähettää verkkoon oikein muodostetun rekisteröintipyyntöviestin kotiosoitteella 0.0.0.0. Kotiagentti hyväksyy rekisteröintipyynnön, tekee standardin mukaisen DHCP-keskustelun ja lähettää verkkoon oikein muodostetun vastauksen. Mobiililaite rekisteröityy verkkoon onnistuneesti. 8.2 Jokin muu verkossa oleva laite lähettää rekisteröityneelle mobiililaitteelle ping-pyynnön, johon laite vastaa. 14(20)

8.3 Yksi laite liittyy väärin muodostetulla rekisteröintipyynnöllä osoitteella 0.0.0.0. Kotiagentti pudottaa viestin, eikä kaadu, tee DHCP-keskustelua tai generoi väärää vastausta. 8.4 Mobiililaite lähettää oikeinmuodostetun poistumispyynnön kotiagentille. Kotiagentti hyväksyy pyynnön, poistaa tunnelin ja lähettää DHCP-release -viestin verkkoon. 8.5 Testitapaus on sama kuin testitapaus 8.1, mutta käsitellään useita pyyntöjä. 8.6 Testitapaus on sama kuin testitapaus 8.4, mutta käsitellään useita pyyntöjä. 15(20)

6 Virtuaalisen vierasagentin testitapaukset Luvussa esitellään virtuaalisen vierasagentin testitapaukset, jotka on luotu vaatimusten[6] pohjalta sekä toteutuneen ohjelmakoodin ja tilaajan kanssa sovittujen toteutustavoitteiden pohjalta. 6.1 Testausdata Testauksessa käytettiin aluksi lähdekoodiin kovakoodattua dataa, mutta myöhemmin sama tieto syötettiin tiedostoon. Tiedoston sisältö on esitelty alla. 1 1 192.168.0.45 192.168.0.1 172.168.0.1 zorma1@jyu.fi 2 1 192.168.0.25 192.168.0.1 172.168.0.1 zorma2@jyu.fi 3 2 thirdpartyprogram --parameter 5 0 192.168.0.45 192.168.0.1 172.168.0.1 zorma1@jyu.fi 10 0 192.168.0.35 192.168.0.1 172.168.0.1 zorma2@jyu.fi Testidata on rakennettu seuraavanlaisesti: aika, toiminto(0=eroa verkosta, 1=liity verkkoon ja 2=kolmannen osapuolen ohjelma), kotiosoite, kotiagentin osoite, tilapäisosoite ja NAI. 16(20)

6.2 Integraatiotestaus Virtuaalisen vierasagentin tietorakenteen testitapaukset on esitelty taulukossa 6.1. Numero Kuvaus 9.1 Virtuaalinen vierasagentti lukee asetukset lähdekoodista ja lisää ne tietorakenteeseen. 9.2 Virtuaalinen vierasagentti lukee asetukset asetustiedostosta ja lisää ne tietorakenteeseen. 9.3 Virtuaalinen vierasagentti lukee asetukset käyttäjän antamien parametrien mukaan ja luo tiedot tietorakenteeseen. Tila Ei testata Taulukko 6.1: Tietorakenne. 6.3 Järjestelmätestaus Virtuaalisen vierasagentin viestien verkkoon lähettämisen testitapaukset on esitelty taulukossa 6.2. Numero Kuvaus 10.1 Virtuaalinen vierasagentti lähettää yhden rekisteröintipyynnön kotiagentille. 10.2 Virtuaalinen vierasagentti lähettää useamman rekisteröintipyynnön kotiagentille. 10.3 Virtuaalinen vierasagentti lähettää dynaamisesti luotuja rekisteröintipyyntöjä käyttäjän asettaminen parametrien mukaan. Tila Ei testata Taulukko 6.2: Viestien lähettäminen. 17(20)

Tulosten muodostamisen testitapaukset on esitetty taulukossa 6.3. Numero Kuvaus 11.1 Virtuaalinen vierasagentti laskee lähetetyt viestit. 11.2 Virtuaalinen vierasagentti laskee lähetetyt ja vastaanotetut viestit sekä hyväksytyt ja hylätyt viestit. Tila Ei testata Taulukko 6.3: Tulosten muodostaminen. 18(20)

7 Yhteenveto Dynamo-projekti suunnittelee ja toteuttaa Dynamicsiin tarvittavat muutokset, jotta se vastaa paremmin Jyväskylän yliopiston tietotekniikan laitoksen ja LaiLa-projektin tarpeita. Sovellus toteutetaan Linux-alustalla ja C-kielellä olemassaolevan Dynamics-sovelluksen ja UDHCP-asiakassovelluksen lähdekoodia hyödyntäen. Jatkokehitettävää sovellusta testataan koko projektin ajan dokumentin testitapausten mukaisesti. Yksikkötestauksessa testataan yksittäisten komponenttien toiminta siten, että järjestelmän muut osat eivät pääse vaikuttamaan testaustulokseen. Integrointitestauksessa valmiiden ja testattujen komponenttien toiminta testataan yhteistoiminnassa muiden komponenttien kanssa. Järjestelmätestauksessa testataan koko järjestelmän toiminta ennalta määrättyjen kehityskohteisiin liittyvien testitapausten mukaisesti. Testauksen tulokset esitellään testausraporteissa[8] sekä sovellusraportissa[7]. 19(20)

Lähteet [1] Perkins C.,"IP Mobility Support", RFC 2002, IBM, October 1996. [2] Droms R.,"Dynamic Host Configuration Protocol", RFC 2131, Bucknell University, November 1997. [3] Perkins C.,"IP Mobility Support for IPv4", RFC 3344, Nokia Research Center, August 2002. [4] Andersson B.,"Dynamics,Technical Definition", Helsinki University of Technology, April 1999. [5] Hätinen T., Pyykkönen A. ja Purojärvi J."Dynamo-projekti, Projektisuunnitelma", Jyväskylän yliopisto, tietotekniikan laitos, Lokakuu 2007. [6] Hätinen T., Pyykkönen A. ja Purojärvi J."Dynamo-projekti, Vaatimusmäärittely", Jyväskylän yliopisto, tietotekniikan laitos, Marraskuu 2007. [7] Hätinen T., Pyykkönen A. ja Purojärvi J."Dynamo-projekti, Sovellusraportti", Jyväskylän yliopisto, tietotekniikan laitos, Joulukuu 2007. [8] Hätinen T., Pyykkönen A. ja Purojärvi J."Dynamo-projekti, Testausraportti", Jyväskylän yliopisto, tietotekniikan laitos, Joulukuu 2007. 20(20)