Testaus elinkaaressa. Testaustasot ja vaiheet

Koko: px
Aloita esitys sivulta:

Download "Testaus elinkaaressa. Testaustasot ja vaiheet"

Transkriptio

1 Testaus elinkaaressa Testaus kehittämisen tukena Yksikkötestaus Integrointitestaus Testaustasot ja vaiheet Testaustaso = tietyn testauksen kohteen ja tavoitteen mukainen testaus joka jatkuu koko ajan tai toistuu usein projektissa esimerkiksi integrointitestaus aina kehitys-baselinen yhteydessä Testausvaihe = projektissa tehtävä kertaluonteinen projektin etenemiseen liittyvä testausaktiviteetti voi olla yhtä tai useaa testaustasoa esim. beta-testaus, hyväksyntätestaus, käytettävyystestaus.. Testaustaso ja vaihe usein mielletään samaksi, ero kuitenkin merkittävä 1

2 Testauksen kytkeytyminen ohjelmistokehitykseen ns. testauksen V-malli on syntynyt nivomalla eri tasoiset testauksen vaiheet vastaaviin kehitysvaiheisiin perinteisessä vesiputous-elinkaarimallissa V-mallissa oleellista Eri työvaiheiden vastaavuudet Testauksen suunnittelu alkaa heti projektin alussa Erottelee testaustasoja Kritiikkiä Yksinkertaisena ja jäykkänä mallina ei vastaa modernia ohjelmistokehitystä Ei kykene mukautumaan muutokseen Johtaa tehottomiin ruohnjuuritason testauskäytäntöihin Testauksen V-malli Black-box Testaajat Staattinen Dynaaminen White-box Kehittäjät 2

3 V-malli käytännössä V-malli ei ole kehityksen elinkaarimalli, vaan käsitteellinen malli Iteratiivisessa kehityksessä V-mallia sovelletaan jokaisen iteraation sisällä Tasoja voi olla useita, eivätkä moduulitestaus ja integrointitestaus ole aina helposti eroteltavissa Oleellista on ymmärtää mikä on kulloinkin SUT Joka tasolla laaditaan testaussuunnitelma Suunnitelman tekoa kannattaa joskus viivyttää mahdollisten muutosten vuoksi Suunnitelma ei tarkoita dokumentin tuottamista! Testaus toteutetaan niin aikaisin kuin mahdollista Eri tasojen spesifikaatioita voidaan validoida staattisella testauksella ja rakentuvan järjestelmän asiakastestaukella V-malli käytännössä Testaustekniikat riippuvat siitä millä tasolla ollaan Yleinen periaate: Matalilla testauksen tasoilla testauksen tehokas kohdistaminen (kattavuus, tehokas virheiden löytyminen) vaatii ohjelmiston rakenteen hyödyntämistä white-box tekniikat Matalilla tasoilla testaaminen vaatii usein järjestelmän modulien teknistä tuntemusta, lisäksi tarve saada löytyvät virheet saman tien korjattua kehittäjät/ohjelmoijat testaavat Korkeammilla tasoilla järjestelmän tai osajärjestelmän testauksessa testataan toimintoja ja asiakasvaatimuksia black-box tekniikat Asiakasnäkökulma, ei-toiminnalliset ominaisuudet, testauksen kohdentaminen riskiperustaisesti erilliset testaajat Käytännössä mm. rakennettava ohjelmisto, kehitysprosessi ja yrityksen organisaatio vaikuttavat oleellisesti tekniikoiden valintaan 3

4 YKSIKKÖTESTAUS (unit testing) Itse ohjelmointityössä tapahtuvien virheiden välittömäksi poistamiseksi tehtävä tekninen testaus Yksikkö joka testataan voi olla... Komponentti, moduuli Luokka Luokan metodi Toiminnallisuus jonka kehittäjä on toimeksiantona totetuttanut Koko ja periaate jolla yksikkö määritetään vaihtelee siis suuresti Usein käytännössä kaksi yksikkötestauksen tasoa Yksittäisten koodaustehtävien testaus sitä mukaan kun ne tehdään Moduli/komponenttitestaus jollekin ohjelmiston osalle ennen integrointia YKSIKKÖTESTAUS Testattava moduli Testitulokset Testitapaukset Varmistaa että moduuli toimii irrallisena kokonaisuutena Modernissa ohjelmistokehityksessä yksikkötason testaus nähdään suoraan osana toteutuksen tekoa, kehittäjän vastuulla 4

5 Yksikkötestausympäristö Ajuri Moduli Tynkä Tynkä rajapinta lokaalit tietorakenteet rajatapaukset suorituspolut virheelliset syötteet Testitapaukset Testin tulos Yksikkötestausympäristö Modulit on suunniteltu toimimaan osana järjestelmää Jos ympäröiviä moduleja ei tehty, testauksessa apukoodia Ajuri (test driver) Syöttää testitapausten datan SUT:lle Kerää SUT:n tulokset (analysointi yleensä erillinen) Käyttää SUT:ia kuten aikanaan valmistuva ohjelmisto Voidaan usein testata modulia monipuolisemmin kuin integroituna ohjelmistoon Tynkämoduli (mock up, stub) Korvaa modulin jota SUT kutsuu ja tarvitsee Toteuttaa vaadittavat rajapinnat Kerää tiedon siitä että sitä on kutsuttu (sekä kutsun parametrit) Palauttaa kontrollin testattavaan yksikköön Tynkä usein hyödyllinen korvaaman vaikeasti generoitavaa todellista dataa (esim. jokin mittausinstrumentti) 5

6 Yksikkötestauksen kohdentaminen Modulin rajapintojen testaus Funktioiden parametrit ja paluuarvot tiedonvälittäjinä Kääntäjä huomaa suurimman osan virheistä Staattisen testauksen tekniikat käyttökelpoisia Lokaalit tietorakenteet Virheiden estäminen: käytä valmiita luotettavia tietorakenteita (kielen kirjastot, esim. C++:n STL) Valmiiden tietorakenteiden käyttäminen testattava Monimutkaisten tietorakenteiden kattava dynaaminen testaus erittäin vaikeaa koodin staattinen testaus Yleensäkin virhealttiita Yksikkötestauksen kohdentaminen Suortuspolku, silmukat Mahdollisia suorituspolkuja (koodissa) käytetään testien kohdentamiseen ja kattavuuden arvointiin Valitse testitapaukset siten että kaikki oleelliset suorituspolut tulevat testatuksi Jo muutama silmukka tekee riittävän kattavuuden saavuttamisen mahdottomaksi (ainakin manuaalisella testauksella) staattinen testaus, black-box testaus täydentämään Ääriarvot Ohjelmointivirheet liittyvät usein sallittujen arvojen rajoihin Parametrit, paluuarvot Silmukoiden pyörimiskerrat (0, 1, n, max kertaa) Tietorakenteet, esim. dynaamisesti kasvavan rakenteen täyttyminen (ja taas pieneminen) 6

7 Yksikkötestauksen kohdentaminen Virhetilanteiden testaus Hallitusti hoidetut virhetilanteet ovat osa ojelman toimintaa Nostetut poikkeukset (ja muut virheilmoitukset) ovat osa modulin rajapintaa Virhekäyttäytyminen yleensä huonosti huomioitu ja määritelty, siksi virhealtis alue ja toisaalta vaikea testata Matalalla tasolla poikkeuksia sekä palautettuja virhekoodeja, korkealla tasolla käyttäjälle näkyviä virheilmoituksia ja toipumismenettelyjä Testattavaa: Syntyykö virheilmoitus oikein? Sisältääkö virheilmoitus riittävän tiedon sen ymmärtämiseksi? Kykeneekö käyttäjä paikallistamaan virheen syyn ja toipumaan tilanteesta? Ovatko virhekäytännöt yhtenevät? INTEGEROINTITESTAUS Virheiden estäminen Integrointitestaus Integrointitestauksen strategioita Sopimuspohjainen ohjelmointi Integrointitestauksen toteutus 7

8 Virheiden estäminen Virheen estäminen on aina fiksumpaa kuin sen löytäminen testauksella, näin myös integrointivaiheessa Moduulien tehtävä oltava selkeä, korkea koheesio (tekee vain yhtä asiaa) Rajapinnat Pieniä Eksplisiittisiä (ei piilotettuja tai vaikeasti havaittavia mekanismeja) Ymmärrettäviä ja selkeitä, hyvin dokumentoituja Modulien väliset kytkennät löyhiä Asiakaskoodin riippuvuus rajapinnasta, ei toteutuksesta Luotettavien hyvin testattujen moduulien käyttö Valmiit kirjastot ja komponentit Uudellenkäytön usein unohdettu hyöty! Integrointitestaus Integrointitestauksesta on kyse aina kun kaksi erillään suunniteltua ja toteutettua yksikköä yhdistetään Voi olla sama ohjelmoija, toteutukset ajallisesti erillään Testaus kohdennetaan yksiköiden yhteistoimintaan eli rajapintojen oikeellisuuteen ja niiden oikeaan käyttöön Oletus: yksikkötestaus suoritettu, koodi laadukasta Integrointia ja siten myös integrointitestausta tehdään monella eri tasolla Yhden pienen lisäominaisuuden integrointi, ns. jatkuvan integroinnin periaate (esim. ketterät toimintatavat) Jokapäiväinen rutiini kehittämisessä Suurehkojen erillään kehitettyjen modulien (osajärjestelmien) integrointi Vaatii erilliset testaajat ja mahdollisesti monimutkaisia testijärjestelyjä Modulin integrointi johonkin ohjelmistoalustaan tai valmiiseen ohjelmistokomponenttiin 8

9 Integrointitestaus Tekniikat yleensä white-box painottuneita Testausvastuu vaihtelee kehittäjien ja erillisten testaajien välillä Jatkuvassa integroinnissa testausvastuu kehittäjillä Osajärjestelmien integroinnissa vastuu erillisillä testaajilla Testauksen kohdentaminen Modulien väliset liittymät Toimiiko tiedonvälitys rajapinnoissa Toimiiko kytkentä (esim. ajoitukset realiaikajärjestelmissä, jaetut laiteresurssit) Kokonaisuus - toimivatko syntyvät toiminnot oikein? Onko väärinymmärryksiä tai vääriä tulkintoja? Esim. Nasan luotain menetettiin cm - in tulkintaeron vuoksi Integrointitestauksen strategiat Big Bang Big Bang integrointi: yksikkötestataan (jollain tasolla) kaikki yksiköt erikseen ja integroidaan ne kertarysäyksellä yhteen Ei ole yleensä hyvä idea vähänkään suuremmissa ohjelmissa! Ongelmia Virheiden paikantaminen hankalaa, ei tiedetä onko vika tietyn kahden modulin välisessä toiminnassa vai aiheutuuko se sivuvaikutuksena kauempaa vian ilmenemiskohdasta Virheitä tulee paljon kerralla, virheet peittävät toisiaan, oleellisia virheitä eit saada helposti esille Virheiden korjaus voi aiheuttaa sivuvaikutuksia muihin moduuleihin, joudutaan tekemään useita testaa-korjaa syklejä Yksikkötestaus on työläs sillä valmiita moduuleja ei päästä käyttämään hyväksi vaan kaikille on kirjoitettava apukoodit (tynkämoduulit, ajurit) Vesiputousmallin mukaisen ohjelmistokehityksen ja myös puritanistisen V-mallin tulkinnan mukainen tilanne 9

10 Integrointitestaksen strategiat Inkrementaalinen integrointi: Top-Down SUT 1) 2) A Ylin moduli testataan tynkien avulla 3) B F G 4) Tynkämodulit korvataan oikeilla yksi kerrallaan C D E Lisättäessä uusia moduleita, Aikaisemmat testit ajetaan uudelleen (ainakin osa) Integrointitestaksen strategiat Inkrementaalinen integrointi: Bottom-Up A SUT B F G C Testiajurit korvataan testatuilla klustereilla Yksi kerrallaan Moduleista kootaan klustereita D E Klusteri Bottom-up on eri asia kuin big bang, matalan tason moduuleja ei integroida kerralla vaan klustereittain 10

11 Integrointitestaksen strategiat Virheen paikantaminen Testi näyttää virhettä, mutta mistä se johtuu? Jos paikallistetaan virhe kahden modulin yhteistoimintaan, kummassa virhe on? Onko virhe rajapinnan toteutuksessa, onko se väärin ymmärretty rajapinnan spesifikaatioista, onko se moduulin toteutuksen virhe jota ei löydetty yksikkötestauksessa? Onko virhe peräisin jostain aivan muualta, sivuvaikutus? Uuden modulin integrointi voi rikkoa jo testattuja osia Lokalisointia helpottaa oleellisesti pienet inkrementit integroinnissa Rajapintavirheen korjaus vaatii usein koko järjestelmän uudelleen testauksen Integrointitestaksen strategiat Sopimuspohjainen ohjelmointi Sopimuspohjainen ohjelmointi Miinoitetaan koodia integraatiotesteillä, valvotaan ajonaikaisesti esi- ja jälkiehtojen toteutumista Jos esiehto ei voimassa, virhe kutsujassa Jos jälkiehto ei voimassa, virhe palvelun toteuttajassa Hyötyjä Rajapinnan integrointitestaus (tai ainakin osa siitä) on aina automaattisesti käytettävissä, riippumatta siitä mihin moduuli integroidaan Vähentää virheiden syntymistä koska rajapinnat paremmin määriteltyjä Ei poista erillisen integrointitestauksen tarvetta, täydentää sitä 11

12 Integrointitestaksen strategiat Sopimiuspohjainen ohjelmointi /** Palauttaa x:n neliöjuuren. x >= 0 Math.abs(RESULT * RESULT - x) * < 1.0e-10.0 & RESULT >= 0.0 */ public static double neliöjuuri(double x) //-- Alkuehto assert x >= 0.0 : "Alkuehtorikkomus"; //-- Totetus double tulos; // Lasketaan neliöjuuren arvo muuttujaan tulos... //-- Loppuehto assert tulos >= 0.0 : "Loppuehtorikkomus"; assert Math.abs(tulos * tulos - x) < 1.0e-10.0 : "Loppuehtorikkomus"; //-- Paluuarvo return tulos; } Integrointitestaksen strategiat Vertailua Arkkitehtuurin testaus ja arkkitehtuuritason virheet Top-down löytää todennäköisemmin virheitä arkkitehtuurista aikaisessa vaiheessa Bottom-up testing ei vaadi arkkitehtuurin kiinnittämistä ketterä ohjelmistoprosessi mahdollinen Järjestelmän toiminta Top-down antaa toimivan järjestelmän heti alussa demonstraatio, protoilu, motivaattori, varhainen järjestelmätestaus Bottom-up antaa myös toimivia kokonaisuuksia nopeasti mikäli toteutus suunnitellaan tämän tavoitteen mukaisesti toiminnalliset klusterit 12

13 Integrointitestaksen strategiat Vertailua Testien toteuttaminen Top-down vaatii tynkämodulien toteuttamisen, mikä on usein työlästä Bottom-up vaatii ajurien toteutuksen, usein helpompaa Tulosten kerääminen Top-down rakentamisessa yleensä ylimmät (kontrolli-) tasot eivät tuota mitään näkyvää tulostetta pitää toteuttaa tynkiin ylimääräisiä toimintoja raportoimaan mitä järjestelmässä tapahtuu Varhaisessa järjestelmätestauksessa usein tavoitteena ongelman ja ohjelman parempi ymmärrys asiakaspalautteen kautta Bottom-up vaatii usein ajureihin testattavien modulien toimintaa tarkkailevia ja tuloksia kerääviä osia. Käytännössä käytetään melkein aina yhdistelmää molemmista strategioista Bottom-up painottuu olio- ja komponenttipohjaisissa järjestelmissä Integrointitestaksen strategiat Realistinen, yhdistelmä Käytännössä molempia integrointisuuntia sovelletaan tilanteen mukaan Ohjelman rakentamisessa on etupäässä muista kuin testauksesta johtuvia syitä joiden perusteella integrointistrategia laaditaan Asiakkaan palautteen varhainen saanti Kriittisten tai erityisen vaikeiden osien varhainen toteutus teknisten riskien minimoimiseksi Monitiimisen kehityksen hallinta ja kustannuslogiikka Testauksen usein mukauduttava Pidettävä mielessä testauksen tavoitteet Oleellisten virheiden varhainen löytyminen Kehittämisen aikaisen laatuinformaation tuottaminen Testauksen kustannusten optimointi (ei minimointi joka tapahtuisi siten ettei testata :-) V-mallin testaustasojen väliset synergiat 13

14 Integrointitestauksen toteuttaminen Testauksen tavoitteisiin pyrittäessä ei ole olemassa mitään ehdottomia sääntöjä Tilanteenmukainen ja luova toiminta Kehittämisen aikainen kehittämistä tukeva arkkitehtuuri Järjestelmän arkkitehtuurissa on usein hierarkinen moduulirakenne Perusteluna mm. rinnakkainen kehittäminen, komponettiperustaisuus Integrointistrategia laaditaan tämän koostumiseen perustuvan arkkitehtuurin perusteella Testauksen kannalta kuitenkin moduulien riippuvuudet ovat paljon tärkeämpiä Riippuvuudet SUT:sta määrittävät onko kyseessä top-down vai bottom-up tilanne Yksikkötestien hyödynnettävyys integraatiotestauksessa Top-down integroinnissa suoraan hyödynnettävissä, joskaan eivät riittävät Bottom-up integroinnissa eivät testaa integroinnin SUT:ia, silti jätetään osaksi testikantaa mahdollisia tulevia muutoksia ja tulevia tynkien korvauksia varten Modernisoitu V-malli Testauksen synergiat 14

15 Yksikkötestien käyttö integrointitestauksessa SUT SUT Yksikkötestien käyttö integrointitestauksessa SUT 15

16 Tynkämoduleista Tynkämodulien käytölle on monia muitakin syitä kuin se että vastaava moduli on vielä toteuttamatta Ei haluta testata moduulia todellista moduulia vastaan Käyttö raskasta tai monimutkaista (esim. konfigurointi) Testiympäristön luonti työlästä tai mahdotonta Kontrollointi vaikeata Laitteistoja emuloidaan tynkämoduleilla yleisesti Laite ei saatavilla ohjelmistonkehitysympäristössä Laite ei stabiili Useita laiteympäristöjä, emuloinnilla testauksen automatisointi Testataan äärikäyttäytymistä, todellinen laite ei generoi ääriarvoja Testataan vikasietoisuutta eikä haluta oikeasti rikkoa laitetta Tynkämodulit ovat olennainen tekniikka käytännön testauksesa Esimerkki - Varhainen virheiden löytäminen SUT SUT hajautunut eri arkkitehtuurin yksiköihin Testausjärjestely C:n ja A:n varhaiseen integrointitestaukseen 16

17 Esimerkki - Testauksen kapselointi kehityksen aikana SUT Esimerkki - Testauksen kapselointi kehityksen aikana PalkanlaskuTest on samanaikaisesti sekä ajuri että tynkätietokanta Ajaa testitapauksia Kaappaa tietokantakutsut ja antaa niille tynkätoteutuksen Erittäin suuri kontrolli testaukseen Voidaan esimerkiksi tehdä testitapaus jonka pitäisi generoida virhe tietokantahaussa, palauttaa tuo virhe tynkätietokannasta ja testata miten SUT sen käsittelee Testitapausten suunnittelu yhdenmukaistuu, toteutus yhteen paikkaan Jotta yksikkötason (SUT = Palkanlasku) testitapaukset olisivat uudelleenkäytettävissä seuraavan vaiheen testauksessa (SUT = Palkanlasku + Tietokanta), on PalkanlaskuTest toteutettava niin että ajurin ja tyngän roolit on erotettavissa toisistaan Tynkä korvataan Tietokannan toteutuksella, ajuri ja testitapaukset uudelleenkäytettävissä 17

18 Esimerkki - Testauksen kapselointi kehityksen aikana Koko testaus on kapseloitu PalkanlaskuTest moduliin siten että järjestemä ei ole siitä lainkaan tietoinen 18

Ohjelmiston testaus ja laatu. Testaustasot

Ohjelmiston testaus ja laatu. Testaustasot Ohjelmiston testaus ja laatu Testaustasot Testauksen vaihejako Tarpeet / sopimus Järjestelmätestaus Hyväksymiskoe Määrittely testauksen suunnittelu ja tulosten verifiointi Arkkitehtuurisuunnittelu Moduulisuunnittelu

Lisätiedot

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015 CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET Jussi Kasurinen (etu.suku@lut.fi) Kevät 2015 NOPEA KERTAUS TESTAUS HYVIN LYHYESTI Miten normaali testaajan arki ohjelmistoprojektissa sitten rullaa? Käytännössä

Lisätiedot

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

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausdokumentti Kivireki Helsinki 17.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Anu Kontio Ilmari

Lisätiedot

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Ohjelmistojen mallintaminen. Luento 11, 7.12. Ohjelmistojen mallintaminen Luento 11, 7.12. Viime viikolla... Oliosuunnittelun yleiset periaatteet Single responsibility eli luokilla vain yksi vastuu Program to an interface, not to concrete implementation,

Lisätiedot

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit Ohjelmiston testaus ja laatu Ohjelmistotekniikka elinkaarimallit Vesiputousmalli - 1 Esitutkimus Määrittely mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot millainen järjestelmä täyttää

Lisätiedot

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

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma PULSU Syksy 2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Heikki Manninen Noora Joensuu

Lisätiedot

Laadunvarmistustekniikat

Laadunvarmistustekniikat Laadunvarmistustekniikat Ohjelmistojen laadunvarmistustekniikoita: testaus (testing) ohjelman suorittamista tarkoituksena löytää virheitä tarkastukset (inspections, reviews) asiantuntijoiden suorittamia

Lisätiedot

Kontrollipolkujen määrä

Kontrollipolkujen määrä Testaus Yleistä Testaus on suunnitelmallista virheiden etsimistä Tuotantoprosessissa ohjelmaan jää aina virheitä, käytettävistä menetelmistä huolimatta Hyvät menetelmät, kuten katselmoinnit pienentävät

Lisätiedot

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

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Koskelo Helsinki 16.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Tom Bertell Johan

Lisätiedot

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II 7. Verifiointi ja validointi Verifiointi ja validointi (V&V) on ohjelmistotuotannon työvaihe, missä varmistetaan, että ohjelmisto täyttää sille asetetut implisiittiset ja eksplisiittiset vaatimukset ja

Lisätiedot

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

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3 AgilElephant SEPA Diary Petri Kalsi 55347A Heikki Salminen 51137K Tekijä: Petri Kalsi Omistaja: ElectricSeven Aihe: PK&HS Sivu 1 / 7 Dokumenttihistoria Revisiohistoria Revision päiväys: 29.11.2004 Seuraavan

Lisätiedot

Ohjelmistojen testaus

Ohjelmistojen testaus Ohjelmistojen testaus Mika Katara, Matti Vuori ja Antti Jääskeläinen Tampereen teknillinen yliopisto, Tietotekniikan laitos 25.8.2014 Ohjelmistojen testaus, 2014 1(507) Mitä testaus on? Erilaisia näkökulmia

Lisätiedot

3. Testaus osana ohjelmistoprosessia

3. Testaus osana ohjelmistoprosessia 3. Testaus osana ohjelmistoprosessia Ohjelmistotuotanto on paljon muutakin kuin testaamista. Mutta miten testaus liitetään ohjelmistoprosessiin? Tässä kohdassa esitellään ns. testauksen V-malli ja siihen

Lisätiedot

Ohjelmistotuotantoprojekti

Ohjelmistotuotantoprojekti Ohjelmistotuotantoprojekti Ryhmä Muppett TESTAUSDOKUMENTTI Helsinki 5.8.2008 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ohjelmistotuotantoprojekti, kesä 2008 Projekti: Muutos- ja korjauspyyntöjen

Lisätiedot

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

Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu TESTIRAPORTTI LiKe Liiketoiminnan kehityksen tukiprojekti Versio: 1.1 Tila: hyväksytty Päivämäärä: 13.2.2001 Tekijä:

Lisätiedot

Testaus elinkaaressa

Testaus elinkaaressa Testaus elinkaaressa Järjestelmätestaus Järjestelmätestaus Tarkoittaa koko järjestemän laajuuteen kohdistuvaa testausta, koko järjestelmän toiminnan näkökulmasta Järjestelmän ei tarvitse olla valmis vaan

Lisätiedot

Rutiinin muodostaminen. 2. Rutiinin muodostaminen. specification) Määrittely (specification( Määrittelyn osapuolet. Hyvän ohjelman tunnusmerkit

Rutiinin muodostaminen. 2. Rutiinin muodostaminen. specification) Määrittely (specification( Määrittelyn osapuolet. Hyvän ohjelman tunnusmerkit 2. Rutiinin muodostaminen Rutiinin muodostaminen roolit 1. Rutiinin määrittely 2. Sopimuspohjainen ohjelmointi 3. Määrittelyjen kirjoittaminen 4. Erikoistilanteiden hallinta analysointi luokat rutiinit

Lisätiedot

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA Ohjelmointitekniikka lyhyesti Survival Kit. Vesiputousmalli ELINKAARIMALLEISTA. Ohjelmiston elinkaari Ohjelmiston elinkaarella (life cycle) tarkoitetaan aikaa, joka kuluu ohjelmiston kehittämisen aloittamisesta

Lisätiedot

Ohjelmiston testaus ja laatu. Testausmenetelmiä

Ohjelmiston testaus ja laatu. Testausmenetelmiä Ohjelmiston testaus ja laatu Testausmenetelmiä Testausmenetelmiä - 1 Testauksen menetelmien päälähestymistapoina ovat black-box testi testaaja ei voi tutkia lähdekoodia testaus perustuu sovellukselle suunnitteluvaiheessa

Lisätiedot

Testaussuunnitelma Labra

Testaussuunnitelma Labra Testaussuunnitelma Labra Helsinki 25.8.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 1 Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op) Projektiryhmä Anssi Kapanen,

Lisätiedot

Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta

Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta 582101 - Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta 1 Toteutuksesta ja testauksesta Suunnitteluprosessista Tarkan tason luokkasuunnittelu Siirtyminen UML-kaavioista Java-toteutukseen

Lisätiedot

Testaus osana ohjelmistojen elinkaarta I

Testaus osana ohjelmistojen elinkaarta I Testaus osana ohjelmistojen elinkaarta I Luento 3 Antti-Pekka Tuovinen www.cs.helsinki.fi 19 March 2013 1 Oppimistavoitteet Ohjelmistokehityksen V-malli Testauksen tasot Komponenttitestaus Integrointitestaus

Lisätiedot

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

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma PUSU-ryhmä Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Jussi Hynninen

Lisätiedot

T Testiraportti - järjestelmätestaus

T Testiraportti - järjestelmätestaus T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria

Lisätiedot

Harjoitustyön testaus. Juha Taina

Harjoitustyön testaus. Juha Taina Harjoitustyön testaus Juha Taina 1. Johdanto Ohjelman teko on muutakin kuin koodausta. Oleellinen osa on selvittää, että ohjelma toimii oikein. Tätä sanotaan ohjelman validoinniksi. Eräs keino validoida

Lisätiedot

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science Testaustyökalut Luento 11 Antti-Pekka Tuovinen 25 April 2013 1 Tavoitteet Työkalutyyppejä Testauksen hallinta Testien määrittely Staattinen analyysi Dynaaminen testaus 25 April 2013 2 1 Työkalut ja testaus

Lisätiedot

Yksikkötestaus. Kattava testaus. Moduulitestaus. Ohjelman testaus. yksikkotestaus/ Seija Lahtinen

Yksikkötestaus. Kattava testaus. Moduulitestaus. Ohjelman testaus. yksikkotestaus/ Seija Lahtinen Yksikkötestaus Kattava testaus Moduulitestaus Ohjelman testaus 1 Kattava testaus Testauksen perimmäinen tarkoitus on LÖYTÄÄ VIRHEITÄ Testaus pitäisi olla täydellinen: - Jokainen pyydetty arvo pitäisi testata

Lisätiedot

Convergence of messaging

Convergence of messaging Convergence of messaging Testaussuunnitelma The Converge Group: Mikko Hiipakka Anssi Johansson Joni Karppinen Olli Pettay Timo Ranta-Ojala Tea Silander Helsinki 20. joulukuuta 2002 HELSINGIN YLIOPISTO

Lisätiedot

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

Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Arto Stenberg Copyright Kuntien Tiera Oy Kuntien Tiera Copyright Kuntien Tiera Oy Tiera on vuonna 2010 perustettu yli 200:n kuntatoimijan omistama

Lisätiedot

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

Testaussuunnitelma. Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma. WebPizza Testaussuunnitelma Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma Versio 1.0 Ehdotus Laatija Raine Kauppinen VERSIOHISTORIA Versionotyyppi Versio- Päiväys Tekijä

Lisätiedot

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa:

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa: Testaus käsite Sekalaista asiaa Sami Kollanus 15.11.2006 Jos ajatellaan, että = V&V, voidaan erottaa: Staattinen Dynaaminen Toisaalta voidaan määritellä Myersin (1979) mukaan: Testaus on ohjelman suoritusta,

Lisätiedot

Tapahtuipa Testaajalle...

Tapahtuipa Testaajalle... Tapahtuipa Testaajalle... - eli testaus tosielämässä 09.10.2007 Juhani Snellman Qentinel Oy 2007 Agenda Minä ja mistä tulen Testauksen konteksti Tapauksia tosielämästä ja työkaluja 2 Minä Juhani Snellman

Lisätiedot

Sisältö. Integrointitestaus. Yleinen teoreettinen pohja. Integrointitestaus prosessina. Skooppi, focus ja locus

Sisältö. Integrointitestaus. Yleinen teoreettinen pohja. Integrointitestaus prosessina. Skooppi, focus ja locus Sisältö Integrointitestaus Antti Tevanlinna, tutkija, Helsingin yliopisto, Tietojenkäsittelytieteen laitos Yleinen teoreettinen pohja Mitä on integrointitestaus Integrointitestauksen tarve Integrointitestauksen

Lisätiedot

Dynaaminen analyysi I

Dynaaminen analyysi I Dynaaminen analyysi I Luento 6 Antti-Pekka Tuovinen 4 April 2013 1 Tavoitteet Testitapausten suunnittelun ja suorituksen perusteet Black-Box testitapausten suunnittelu Ekvivalenssiluokat Raja-arvo (reuna-arvo)

Lisätiedot

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

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant AgilElephant SEPA Diary Petri Kalsi 55347A Heikki Salminen 51137K Tekijä: Petri Kalsi Omistaja: ElectricSeven Aihe: PK&HS Sivu 1 / 7 Dokumenttihistoria Revisiohistoria Revision Numero Revision Päiväys

Lisätiedot

Onnistunut Vaatimuspohjainen Testaus

Onnistunut Vaatimuspohjainen Testaus Onnistunut Vaatimuspohjainen Testaus Kari Alho Solution Architect Nohau Solutions, Finland Sisältö Mitä on vaatimuspohjainen testaus? Vaatimusten ymmärtämisen haasteet Testitapausten generointi Työkalujen

Lisätiedot

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

Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Arto Stenberg Copyright Kuntien Tiera Oy Kuntien Tiera Copyright Kuntien Tiera Oy Tieran toiminta perustuu osaamisverkoston rakentamiseen, mikä

Lisätiedot

Ohjelmistotestaus -09

Ohjelmistotestaus -09 Ohjelmistotestaus Testaustyökalut- ja automaatio Testaustyökalut ja -automaatio Testaustyökaluilla tuetaan testaustyötä sen eri vaiheissa Oikea työkalu oikeaan tarkoitukseen Testausautomaatio perustuu

Lisätiedot

Automaattinen yksikkötestaus

Automaattinen yksikkötestaus Teknillinen Korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö Lineaaristen rajoitteiden tyydyttämistehtävän ratkaisija L models Automaattinen yksikkötestaus Ryhmä Rajoitteiset Versio Päivämäärä Tekijä

Lisätiedot

Hirviö Laadunvarmistussuunnitelma

Hirviö Laadunvarmistussuunnitelma Hirviö Laadunvarmistussuunnitelma Jani Heikkinen Anssi Kalliolahti Jukka Larja Kim Nylund Liia Sarjakoski Samuli Sorvakko Timo Toivanen 30. marraskuuta 2004 1 Sisältö 1 Johdanto 3 1.1 Testauksen tavoitteet

Lisätiedot

KONEAUTOMAATION LAATU JA TURVALLISUUS. 4.6.2015 Marko Varpunen

KONEAUTOMAATION LAATU JA TURVALLISUUS. 4.6.2015 Marko Varpunen KONEAUTOMAATION LAATU JA TURVALLISUUS 4.6.2015 Marko Varpunen TLJ ja automaatio Rautatie, metro, teollisuus-laitokset, kaivoskoneet, vesi, n. 90 henkeä Mikkeli Turvallisuusjohtaminen konsultointi riskienarviointi

Lisätiedot

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri Testausraportti Oppimistavoitteiden hallintajärjestelmä harri Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

Ohjelmiston toteutussuunnitelma

Ohjelmiston toteutussuunnitelma Ohjelmiston toteutussuunnitelma Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä luku antaa yleiskuvan koko suunnitteludokumentista,

Lisätiedot

Test-Driven Development

Test-Driven Development Test-Driven Development Ohjelmistotuotanto syksy 2006 Jyväskylän yliopisto Test-Driven Development Testilähtöinen ohjelmistojen kehitystapa. Tehdään ensin testi, sitten vasta koodi. Tarkoituksena ei ole

Lisätiedot

Tarkastusten rakenne. 10. Tarkastukset. Tuotoksen tekijän rooli. Tarkastustiimi. Tarkastusprosessin vaiheet. Tarkastusprosessi

Tarkastusten rakenne. 10. Tarkastukset. Tuotoksen tekijän rooli. Tarkastustiimi. Tarkastusprosessin vaiheet. Tarkastusprosessi 10. Tarkastukset Tarkastus (inspection) on tehokas analyysitekniikka, jota voidaan käyttää minkä tahansa projektin tuotoksen läpikäyntiin. Tarkastus on systemaattinen ja yksityiskohtainen katselmointi

Lisätiedot

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

TIE-21200 Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4. Antti Jääskeläinen Matti Vuori TIE-21200 Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4 Antti Jääskeläinen Matti Vuori Vaiheet 3 & 4: Järjestelmätestaus 27.10.2014 2 Päämäärä jedit-ohjelmointieditorin järjestelmätestaus

Lisätiedot

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

TIE-21200 Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4. Antti Jääskeläinen Matti Vuori TIE-21200 Ohjelmistojen testaus Harjoitustyön esittely osa 2: Vaiheet 3 & 4 Antti Jääskeläinen Matti Vuori Vaiheet 3 & 4: Järjestelmätestaus 28.10.2013 2 Päämäärä jedit-ohjelmointieditorin järjestelmätestaus

Lisätiedot

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2016

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen (etu.suku@lut.fi) Kevät 2016 CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET Jussi Kasurinen (etu.suku@lut.fi) Kevät 2016 VIIME KERRALLA MENETELMIÄ Musta laatikko Valkea laatikko Harmaa laatikko Regressio Automaatio Rasitus (kuormitus)

Lisätiedot

Test-Driven Development

Test-Driven Development Test-Driven Development Syksy 2006 Jyväskylän yliopisto Test-Driven Development Testilähtöinen ohjelmistojen kehitystapa. Tehdään ensin testi, sitten vasta koodi. Tarkoituksena ei ole keksiä kaikkia mahdollisia

Lisätiedot

Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille

Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille 1(23) Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille Matti Vuori, Tampereen teknillinen yliopisto 30.10.2012 Sisällysluettelo 1/2 Esityksen tarkoitus 4 Laatu on tärkeää, ei

Lisätiedot

Testaaminen ohjelmiston kehitysprosessin aikana

Testaaminen ohjelmiston kehitysprosessin aikana Testaaminen ohjelmiston kehitysprosessin aikana 04.02.2004 http://cs.joensuu.fi/tsoft/ Sisällys 1. Johdanto 2. Yksikkö- ja integrointitestaus 3. Järjestelmätestaus 4. Hyväksymistestaus http://cs.joensuu.fi/tsoft/

Lisätiedot

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

dokumentin aihe Dokumentti: Testausraportti_I1.doc Päiväys: Projekti : AgileElephant AgilElephant Testausraportti I1 Tekijä: Petri Kalsi Omistaja: ElectricSeven Aihe: Testausraportti Sivu 1 / 5 Dokumentti Historia Muutoshistoria Revision Numero Revision Päiväys Yhteenveto muutoksista Revision

Lisätiedot

Olio-ohjelmien testaamisesta

Olio-ohjelmien testaamisesta Olio-ohjelmien testaamisesta Mika Katara et. al. Ohjelmistotekniikan laitos Tampereen teknillinen yliopisto 13.8.2013 Ohjelmistojen testaus, 2013 1(32) Sisällysluettelo 1/2 Olio-ohjelmien testaamisesta

Lisätiedot

Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta

Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta 582101 - Ohjelmistotekniikan menetelmät, toteutuksesta ja testauksesta 1 Toteutuksesta ja testauksesta Suunnitteluprosessista Tarkan tason luokkasuunnittelu Siirtyminen UML-kaavioista Java-toteutukseen

Lisätiedot

Turvakriittisen projektin menetelmät ja työkalut

Turvakriittisen projektin menetelmät ja työkalut Turvakriittisen projektin menetelmät ja työkalut 1. Vaatimushallinta Vaatimushallintaan kohdistuu turvaluokitelluissa projekteissa paljon odotuksia. Etenkin jäljitettävyys vaatimuksiin, testaukseen ja

Lisätiedot

Versio Päiväys Tekijä Kuvaus Tikkanen varsinainen versio

Versio Päiväys Tekijä Kuvaus Tikkanen varsinainen versio Testiraportti 26.2.2006 1/5 - Noheva II Testiraportti Versio Päiväys Tekijä Kuvaus 1.0 26.2.2006 Tikkanen varsinainen versio 1 Yleistä Toteutusvaiheen 2 virallinen testaus on muodostunut automaattisista

Lisätiedot

Luku 8 Rakennusvaihe. Detailed Design. Programming. Moduulisuunnittelu. Ohjelmointi

Luku 8 Rakennusvaihe. Detailed Design. Programming. Moduulisuunnittelu. Ohjelmointi Luku 8 Rakennusvaihe Moduulisuunnittelu Detailed Design Programming Ohjelmointi Teknisen Complete suunnittelun Technical viimeistely Design Suunnittelukatselmuksen Design Perform suorittaminen Review Yhteisen

Lisätiedot

Oleelliset vaikeudet OT:ssa 1/2

Oleelliset vaikeudet OT:ssa 1/2 Oleelliset vaikeudet OT:ssa 1/2 Monimutkaisuus: Mahdoton ymmärtää kaikki ohjelman tilat Uusien toimintojen lisääminen voi olla vaikeaa Ohjelmista helposti vaikeakäyttöisiä Projektiryhmän sisäiset kommunikointivaikeudet

Lisätiedot

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - VYM JA KANTA Versio 1.0 i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI 3 2.1. Testauksen

Lisätiedot

T Testiraportti - integraatiotestaus

T Testiraportti - integraatiotestaus T-76.115 Testiraportti - integraatiotestaus 22. maaliskuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 19.03.2002 Jani Myyry Muutettu viimeksi: 22.03.2002 Jani Myyry Versiohistoria

Lisätiedot

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus Yhteenveto Ohjelmistotuotanto vs. muut insinööritieteet Monimutkaisuus Näkymättömyys (Usein näennäinen) luotettavuus ja edullisuus Muunnettavuus Epäjatkuvuus virhetilanteissa Skaalautumattomuus Copyright

Lisätiedot

Testaussuunnitelma. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Testaussuunnitelma. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Testaussuunnitelma Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Helsinki 14.7.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

Suunnitteluvaihe prosessissa

Suunnitteluvaihe prosessissa Suunnittelu Suunnitteluvaihe prosessissa Silta analyysin ja toteutuksen välillä (raja usein hämärä kumpaankin suuntaan) Asteittain tarkentuva Analyysi -Korkea abstraktiotaso -Sovellusläheiset käsitteet

Lisätiedot

Yksikkötestaus. import org.junit.test; public class LaskinTest public void testlaskimenluonti() { Laskin laskin = new Laskin(); } }

Yksikkötestaus. import org.junit.test; public class LaskinTest public void testlaskimenluonti() { Laskin laskin = new Laskin(); } } Yksikkötestauksella tarkoitetaan lähdekoodiin kuuluvien yksittäisten osien testaamista. Termi yksikkö viittaa ohjelman pienimpiin mahdollisiin testattaviin toiminnallisuuksiin, kuten olion tarjoamiin metodeihin.

Lisätiedot

Testilähtöinen ohjelmistokehitys. Testilähtöinen ohjelmistokehitys. TDD Testilähtöinen ohjelmistokehitys. Testi! Testi

Testilähtöinen ohjelmistokehitys. Testilähtöinen ohjelmistokehitys. TDD Testilähtöinen ohjelmistokehitys. Testi! Testi Testilähtöinen ohjelmistokehitys Kevät 2008 Jonne Itkonen Jyväskylän yliopisto Testilähtöinen ohjelmistokehitys Test-Driven Development, TDD Tehdään ensin testi, sitten vasta koodi. TDD Testilähtöinen

Lisätiedot

Dynaaminen analyysi IV

Dynaaminen analyysi IV Dynaaminen analyysi IV Luento 9 Antti-Pekka Tuovinen 16 April 2013 1 Tavoitteet Kokemusperäinen testitapausten suunnittelu Yhteenvetoa suunnittelutekniikoista 16 April 2013 2 1 Testitapausten kokemusperäinen

Lisätiedot

JUnit ja EasyMock (TilaustenKäsittely)

JUnit ja EasyMock (TilaustenKäsittely) OHJELMISTOJEN TESTAUS JA HALLINTA Syksy 2015 / Auvo Häkkinen JUnit ja EasyMock (TilaustenKäsittely) Tehtävässä tarvittava koodi löytyy osoitteella http://users.metropolia.fi/~hakka/oth/mockesimerkki.zip

Lisätiedot

Hirviö Laadunvarmistussuunnitelma

Hirviö Laadunvarmistussuunnitelma Hirviö Laadunvarmistussuunnitelma Jani Heikkinen Anssi Kalliolahti Jukka Larja Kim Nylund Liia Sarjakoski Samuli Sorvakko Timo Toivanen 8. helmikuuta 2005 1 Sisältö 1 Johdanto 3 1.1 Testauksen tavoitteet

Lisätiedot

58160 Ohjelmoinnin harjoitustyö

58160 Ohjelmoinnin harjoitustyö 58160 Ohjelmoinnin harjoitustyö Testaus 30.3.2009 Tuntiop. Sami Nikander sami.nikander@helsinki.fi 58160 Ohjelmoinnin harjoitustyö, Sami Nikander 30.3.2009 1 Testaus Ohjelman systemaattista tutkimista

Lisätiedot

812341A Olio-ohjelmointi, IX Olioiden välisistä yhteyksistä

812341A Olio-ohjelmointi, IX Olioiden välisistä yhteyksistä 2016 IX Olioiden välisistä yhteyksistä Sisältö 1. Johdanto 2. Kytkentä 3. Koheesio 4. Näkyvyydestä 2 Johdanto n Ohjelmassa syntyy kytkentöjä olioiden välille Toivottuja ja epätoivottuja n Näkyvyys vaikuttaa

Lisätiedot

Kuopio Testausraportti Asiakkaat-osakokonaisuus

Kuopio Testausraportti Asiakkaat-osakokonaisuus Kuopio Testausraportti Asiakkaat-osakokonaisuus Kuopio, testausraportti, 25.3.2002 Versiohistoria: Versio Pvm Laatija Muutokset 0.1 11.2.2002 Matti Peltomäki Ensimmäinen versio 0.9 11.2.2002 Matti Peltomäki

Lisätiedot

Testausprosessin vaatimukset. 2. Testausprosessi (Artikkelit) Vesiputousmallin ongelmia. V-mallin neljä osavaihetta. Testausprosessimalli V-malli

Testausprosessin vaatimukset. 2. Testausprosessi (Artikkelit) Vesiputousmallin ongelmia. V-mallin neljä osavaihetta. Testausprosessimalli V-malli 2. ausprosessi (Artikkelit) Nykyisin useimpien prosessimallien lähtökohta on, että testaus on oleellinen osa ohjelmistotuotantoprosessia. Itse asiassa huolellinen testaus vie helposti 50% tai enemmän käytettävistä

Lisätiedot

Enterprise SOA. Nyt. Systeemi-integraattorin näkökulma

Enterprise SOA. Nyt. Systeemi-integraattorin näkökulma Enterprise SOA. Nyt. Systeemi-integraattorin näkökulma 12.11.2007 Janne J. Korhonen 12.11.2007 Agenda 1. Prosessit ja palvelut, BPM ja SOA 2. BPM-projekteista yleensä 3. Prosessin elinkaarimalli 4. Kokemuksia

Lisätiedot

Tenttikysymykset. + UML-kaavioiden mallintamistehtävät

Tenttikysymykset. + UML-kaavioiden mallintamistehtävät Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä

Lisätiedot

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen Ohjelmistotekniikka - Luento 2 Jouni Lappalainen Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento

Lisätiedot

TOIMINNALLINEN MÄÄRITTELY MS

TOIMINNALLINEN MÄÄRITTELY MS TOIMINNALLINEN MÄÄRITTELY 11.11.2015 MS YLEISTÄ 1/2 jäsennelty etenee yleiskuvauksesta yksityiskohtiin kieliasultaan selkeä kuvaa myös tulevan järjestelmän ympäristöä tarpeellisella tarkkuudella kuvaa

Lisätiedot

Testaus. tulosavaruus. Testaus

Testaus. tulosavaruus. Testaus Testaus Johdanto: Mitä testaus on (ja mitä se ei ole) Testauksen ongelmia Testaustasot, V-malli Testitapausten valinta Testauksen kattavuus Työkalut Suunnittelu, seuranta ja dokumentointi Oliokeskeisyys

Lisätiedot

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

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 Liite 1: skenaariot ja PoC tulokset 1. Palvelun kehittäjän näkökulma Tilanne Vaatimus Ongelma jos vaatimus ei toteudu Palvelun uusi versio on Palveluiden kehittäminen voitava asentaa tuotantoon vaikeutuu

Lisätiedot

7. Verifiointi ja validointi

7. Verifiointi ja validointi 7. Verifiointi ja validointi Verifiointi ja validointi (V&V) on ohjelmistotuotannon työvaihe, missä varmistetaan, että ohjelmisto täyttää sille asetetut implisiittiset ja eksplisiittiset vaatimukset ja

Lisätiedot

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/jekahkon/wclique/testplan.html WCLIQUE Ohjelmistoprojekti Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com, 75014C,

Lisätiedot

2. Ohjelmistotuotantoprosessi

2. Ohjelmistotuotantoprosessi 2. Ohjelmistotuotantoprosessi Peruskäsitteet: prosessimalli: mahdollisimman yleisesti sovellettavissa oleva ohjeisto ohjelmistojen tuottamiseen ohjelmistotuotantoprosessi: yrityksessä käytössä oleva tapa

Lisätiedot

Esityksen sisältö Määrittelyjen mukaisuudesta varmistuminen - PlugIT-leima

Esityksen sisältö Määrittelyjen mukaisuudesta varmistuminen - PlugIT-leima Esityksen sisältö Johdanto Yleistä leimausmenettelystä ja leimasta Leimausmenettelyn vaiheet Kuinka määrittelyjen mukaisuus testataan: esimerkkejä testitapauksista Olennaisimmat kysymykset leimausmenettelyn

Lisätiedot

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - XMLREADER LUOKKA i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI 3 2.1. Testauksen

Lisätiedot

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

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2) TESTIRAPORTTI - XMLREADER-LUOKKA Versio 1.0 (luonnos 2) Copyright Comptel Oyj i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin

Lisätiedot

Standardin IEC testaustekniikoista. V-malli vai ketterämpi prosessi?

Standardin IEC testaustekniikoista. V-malli vai ketterämpi prosessi? Standardin IEC 61508-3 testaustekniikoista V-malli vai ketterämpi prosessi? Mika Katara mika.katara@tut.fi Tampereen teknillinen yliopisto Ohjelmistotekniikan laitos 2 Sisältö Termien käännökset Johdanto

Lisätiedot

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14 Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 0.4 1.11.2007 Matti Eerola 0.3 18.10.2007 Matti Eerola 0.2

Lisätiedot

Laadunvarmistustekniikoita. Ohjelmistotuotanto. Testaus termejä. Testaus periaatteita. Testaus havaintoja. Testaus havaintoja

Laadunvarmistustekniikoita. Ohjelmistotuotanto. Testaus termejä. Testaus periaatteita. Testaus havaintoja. Testaus havaintoja Laadunvarmistustekniikoita Ohjelmistotuotanto Ohjelmistojen testaus 1 Testaus (testing) ohjelman suorittamista tarkoituksena löytää virheitä Tarkastukset, katselmukset (inspections, reviews) asiantuntijoiden

Lisätiedot

4.12.2005. SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T

4.12.2005. SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T SEPA REFAKTOROINTI Antti Ahvenlampi, 57408L Erik Hakala, 57509T SEPA: REFAKTOROINTI 2 (9) SEPA: REFAKTOROINTI 3 (9) VERSIOHISTORIA Version Date Author Description 0.1 2.12.2005 Erik Hakala Ensimmäinen

Lisätiedot

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

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä www.niksula.cs.hut.fi/~jjkankaa// Testauksen loppuraportti v. 1.0 Päivitetty 23.4.2001 klo 19:05 Mikko Viljainen 2 (14) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite 1.0

Lisätiedot

Lakki. Lisää ot sik k o osoit t am alla. Nöyrästi vain lakki kourassa... Jussi Vänskä Espotel Oy. vierailuluentosarja OTM kurssi 2010

Lakki. Lisää ot sik k o osoit t am alla. Nöyrästi vain lakki kourassa... Jussi Vänskä Espotel Oy. vierailuluentosarja OTM kurssi 2010 Lakki Nöyrästi vain lakki kourassa... Jussi Vänskä Espotel Oy vierailuluentosarja OTM kurssi 2010 2.luento: ohjelmistokehityksen päivärutiinit Lisää ot sik k o osoit t am alla Siitä vain reunasta Miten

Lisätiedot

Rajapinta (interface)

Rajapinta (interface) 1 Rajapinta (interface) Mikä rajapinta on? Rajapinta ja siitä toteutettu luokka Monimuotoisuus ja dynaaminen sidonta Rajapinta vs periytyminen 1 Mikä rajapinta on? Rajapintoja käytetään, kun halutaan määritellä

Lisätiedot

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

Määrittelydokumentti NJC2. Helsinki 11.2.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Määrittelydokumentti NJC2 Helsinki 11.2.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti ( ov) Projektiryhmä Eero Anttila Olli

Lisätiedot

Soveltuvuustutkimus Lifebelt-ohjelman ideologian käytettävyydestä olioorientoituneeseen

Soveltuvuustutkimus Lifebelt-ohjelman ideologian käytettävyydestä olioorientoituneeseen Soveltuvuustutkimus Lifebelt-ohjelman ideologian käytettävyydestä olioorientoituneeseen ohjelmointiin Jukka Talvitie Valvoja: Professori Jorma Jormakka Paikka: TietoEnator oyj Ongelma Ideologia Lifebelt

Lisätiedot

L models. Testisuunnitelma. Ryhmä Rajoitteiset

L models. Testisuunnitelma. Ryhmä Rajoitteiset Teknillinen korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö Lineaaristen rajoitteiden tyydyttämistehtävän ratkaisija L models Testisuunnitelma Ryhmä Rajoitteiset Versio Päivämäärä Tekijä Muutokset

Lisätiedot

KEYAQUA-VERKKOTIETOJÄRJESTELMÄN TESTAUS

KEYAQUA-VERKKOTIETOJÄRJESTELMÄN TESTAUS KARELIA-AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma Heikki Majoinen KEYAQUA-VERKKOTIETOJÄRJESTELMÄN TESTAUS Opinnäytetyö Toukokuu 2015 OPINNÄYTETYÖ Toukokuu 2015 Tietotekniikan koulutusohjelma Karjalankatu

Lisätiedot

Sopisiko testiautomaatio yritykseesi juuri nyt? Testiautomaation soveltuvuuden arviointiopas

Sopisiko testiautomaatio yritykseesi juuri nyt? Testiautomaation soveltuvuuden arviointiopas Sopisiko testiautomaatio yritykseesi juuri nyt? Testiautomaation soveltuvuuden arviointiopas www.valagroup.fi TESTITAUTOMAATIO SINUN YRITYKSEESI? Testauksen automatisointi ei sovellu kaikkiin tilanteisiin;

Lisätiedot

Laadunvarmistuksen suunnitelma. Ryhmä ExtraTerrestriaLs Aureolis Oy

Laadunvarmistuksen suunnitelma. Ryhmä ExtraTerrestriaLs Aureolis Oy Laadunvarmistuksen suunnitelma Ryhmä ExtraTerrestriaLs Aureolis Oy Versio Päiväys Tekijä Kuvaus 1.0 8.11.2004 Risto Kunnas Ensimmäinen versio 1.1 8.11.2004 Risto Kunnas Korjauksia 1.2 9.11.2004 Mika Suvanto

Lisätiedot

Prosessimalli. 2. Ohjelmistotuotantoprosessi. Prosessimallin vaihejako. Prosessimallien perustehtävät. Ohjelmiston suunnittelu. Vaatimusmäärittely

Prosessimalli. 2. Ohjelmistotuotantoprosessi. Prosessimallin vaihejako. Prosessimallien perustehtävät. Ohjelmiston suunnittelu. Vaatimusmäärittely 2. Ohjelmistotuotantoprosessi Peruskäsitteet: prosessimalli: mahdollisimman yleisesti sovellettavissa oleva ohjeisto ohjelmistojen tuottamiseen ohjelmistotuotantoprosessi: yrityksessä käytössä oleva tapa

Lisätiedot

Project-TOP QUALITY GATE

Project-TOP QUALITY GATE Project-TOP QUALITY GATE FOR SUCCESSFUL COMPANIES TYÖKALU ERP- JÄRJESTELMIEN TESTAUKSEEN PROJECT-TOP QUALITY GATE Quality Gate on työkalu ERP-järjestelmien testaukseen Huonosti testattu ERP- järjestelmä

Lisätiedot