Testauksen suunnittelu. Faculty of Science 30 April

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

Testauksen hallinta ja johtaminen

Dynaaminen analyysi IV

Dynaaminen analyysi IV Luento 6 Antti-Pekka Tuovinen

Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen

Ohjelmistotestauksen perusteita II

Dynaaminen analyysi I

Kontrollipolkujen määrä

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2016

Dynaaminen analyysi III Luento 5 Antti-Pekka Tuovinen

T Testiraportti - järjestelmätestaus

Dynaaminen analyysi II Luento 4 Antti-Pekka Tuovinen

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

Dynaaminen analyysi III

Onnistunut Vaatimuspohjainen Testaus

Dynaaminen analyysi II

Tapahtuipa Testaajalle...

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2015

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

Convergence of messaging

Ohjelmiston testaussuunnitelma

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

Hyväksymistestauksen tarkistuslista järjestelmän hankkijalle

Ohjelmistotestaus -09

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

Ohjelmistojen mallintaminen. Luento 11, 7.12.

T Testiraportti - integraatiotestaus

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

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

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

Ohjelmistotuotantoprojekti

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

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

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

T Testiraportti - integraatiotestaus

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

Ohjelmiston testaus ja laatu. Testaustasot

58160 Ohjelmoinnin harjoitustyö

Automaattinen regressiotestaus ilman testitapauksia. Pekka Aho, VTT Matias Suarez, F-Secure

Onnistunut SAP-projekti laadunvarmistuksen keinoin

Testiautomaatio tietovarastossa. Automaattisen regressiotestauksen periaate ja hyödyt

Kuopio Testausraportti Asiakkaat-osakokonaisuus

Ohjelmistotestauksen perusteita Luento 1 Antti-Pekka Tuovinen

Lohtu-projekti. Testaussuunnitelma

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

statbeatmobile PROJECT REVIEW iteration 1

Laadunvarmistusdokumentti

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

Harjoitustyön testaus. Juha Taina

Project-TOP QUALITY GATE

Kuopio Testausraportti Kalenterimoduulin integraatio

Ohjelmiston toteutussuunnitelma

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

Testauksen hallintaa teekkareille (ja muille kiinnostuneille) Arto Stenberg

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2015

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

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

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0

Testaaminen ohjelmiston kehitysprosessin aikana

Hirviö Laadunvarmistussuunnitelma

Turvakriittisen projektin menetelmät ja työkalut

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

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

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

Projektin suunnittelu

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

Testausoppeja toimialavaihdoksesta

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

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

Työkalut ohjelmistokehityksen tukena

Testauspäällikön tarinoita Arto Stenberg

Hirviö Laadunvarmistussuunnitelma

Automaattinen yksikkötestaus

Tietojärjestelmän osat

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

Testaussuunnitelma Labra

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

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

Simulaattoriavusteinen ohjelmistotestaus työkoneympäristössä. Simo Tauriainen

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

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

Ohjelmistotuotteen hallinnasta

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaihe 3. Antti Jääskeläinen Matti Vuori

CT60A4150 OHJELMISTOTESTAUKSEN PERUSTEET. Jussi Kasurinen Kevät 2015

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

Laadunvarmistustekniikat

L models. Testisuunnitelma. Ryhmä Rajoitteiset

Testidatan generointi

Tekoälyä testauksessa ja hyvän softan teossa

T Projektikatselmus

Ohjelmiston testaus ja laatu. Testausmenetelmiä

3.5 Hyväksymistestaus

Sopisiko testiautomaatio yritykseesi juuri nyt? Testiautomaation soveltuvuuden arviointiopas

TIE Ohjelmistojen testaus 2016 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori

Testausautomaation mahdollisuudet käyttöliittymän testauksessa. Anssi Pekkarinen

Good Minton QA Raportti Iteraatio 1 Sulkapalloliiton Kilpailujärjestelmä

Advanced Test Automation for Complex Software-Intensive Systems

Harjoituskoe Vastaukset. ISTQB Ketterä testaaja 2015 Perustason sertifikaattisisällön laajennus

CoMa - Testausdokumentti

Transkriptio:

Testauksen suunnittelu www.cs.helsinki.fi 30 April 2018 21

Testauksen suunnittelu Testaus on (usein tärkein tai jopa ainoa) osa laadunvarmistusta (quality assurance) Testauksella saadaan analyyttistä, konkreettista dataa ohjelmiston laadusta ja laadun kehittymisestä projektin aikana Testaussuunnitelma on osa laatusuunnitelmaa (QA plan) www.cs.helsinki.fi 30 April 2018 22

Testauksen suunnittelu Suunnitteluun sisältyy seuraavia toimia Testaussuunnitelman tekeminen Testien priorisointi Testin aloitus- ja lopetusehtojen määrittely Miljoonan taalan kysymys: milloin on testattu tarpeeksi? www.cs.helsinki.fi 30 April 2018 23

Testaussuunnitelma IEEE 829-1998 standardi antaa mallin testisuunnitelman sisällölle Kurssikirjassa liite A Standardi ISO/IEC/IEEE 29119 korvaa tämän Testauksen yleissuunnittelu Testausstandardeja on kritisoitu paljon kaavamaisuudesta ja yleisestä raskaudesta Ne ovat toisaalta suosituksia, eivät pakollisia käyttää www.cs.helsinki.fi 30 April 2018 24

Testien priorisointi Kävi projektin aikataulun ja rahoituksen kanssa miten kävi, testit on priorisoitava niin, että tärkeimmät testit tulevat aina suoritetuksi Priorisointiperusteita Toimintojen odotettu käyttötiheys ja virheiden todennäköisyys käytön aikana Vikariski = vian vakavuus x todennäköisyys Vikojen näkyvyys käyttäjälle www.cs.helsinki.fi 30 April 2018 25

Testien priorisointi Priorisointiperusteita (jatkuu) Laatuvaatimusten painotukset ja tärkeys asiakkaalle Toiminnon/ominaisuuden arvo käyttäjälle ja/tai liiketoiminnalle Implementaation kannalta kriittiset komponentit ja toiminnot Ohjelman osien kompleksisuus Ohjelman osat, joihin liittyy suuri projektiriski Epäselvät vaatimukset, alihankkijan kyky toimittaa, kehitysorganisaation kyvyt, uusien teknologioiden käyttö, käytettävien ulkoisten ohjelmistokomponenttien ja ohjelmistokehysten laatu jne. jne. www.cs.helsinki.fi 30 April 2018 26

Testien priorisointi Priorisointia on oltava valmis muuttamaan projektin kuluessa Vioilla on tapana kasaantua Paljon vikoja sisältäneiden testikohteiden testitapausten prioriteettia on syytä nostaa www.cs.helsinki.fi 30 April 2018 27

Testien aloitus- ja lopetusehdot Tiettyjen edellytysten on yleensä oltava voimassa, ennen kuin testausta voidaan aloittaa Testausympäristö on olemassa ja valmiina käyttöön Testaustyökalut ovat käyttövalmiina testausympäristössä Testin kohde on asennettu ja valmiina Testin tarvitsema data on saatavilla Ehdot pitää kirjata testisuunnitelmaan www.cs.helsinki.fi 30 April 2018 28

Testien aloitus- ja lopetusehdot Testauksen lopetusehtojen eksplisiittinen määrittely auttaa torjumaan seuraavia riskejä Ilman selkeitä kriteereitä testauksen lopettamisesta päätetään epäjohdonmukaisin ja satunnaisin perustein Vältetään liika testaaminen, joka johtuu siitä, ettei tiedetä, mitä testauksella tavoitellaan www.cs.helsinki.fi 30 April 2018 29

Yleisiä lopetuskriteereitä Testikattavuus Kuinka monta testitapausta on suoritettu onnistuneesti, kuinka monta vaatimusta on testattu, mikä koodikattavuus on saavutettu Tuotteen laatu Löydettyjen vikojen määrä, vikojen kriittisyys, vikojen löytymistahti, luotettavuus jne. Jäännösriski Suorittamattomien testien määrä, korjaamattomat viat, epätäydellinen kattavuus Taloudelliset rajoitteet Kulut, projektiriski, toimitusaikataulu, markkinatilanteen muutokset www.cs.helsinki.fi 30 April 2018 30

Kustannukset, Testausstrategia, Testausaktivteetit www.cs.helsinki.fi 30 April 2018 31

Testauksen kustannukset Testaus voi viedä suuren osan ohjelmistoprojektin budjetista (jopa ~50%) Jotta testauksen käytetyt resurssit ja aika osataan asettaa oikealle tasolle, on ymmärrettävä mitä kustannuksia testauksessa löytymättä jääneet viat voivat aiheuttaa www.cs.helsinki.fi 30 April 2018 32

Vikojen aiheuttamat kustannukset Suorat kustannukset Asiakkaan liiketoimintaprosessille välittömästi aiheutuvat kulut ja tappiot virhetoiminnoista (taloudelliset tappiot ja suoranaiset vahingot laitteille ja henkilöstölle); menetetty liikevaihto Uusien, korjattujen ohjelmistoversioiden asennuksesta, käyttöönotosta ja uudelleenkoulutuksesta aiheutuvat menot www.cs.helsinki.fi 30 April 2018 33

Vikojen aiheuttamat kustannukset Epäsuorat kustannukset (asiakkaan näkökulmasta) Ohjelmiston toimittajalle aiheutuvat suorat kulut (sopimussakot, hinnan alennukset, käyttäjätuen kysynnän kasvu) Vahingot liiketoiminnalle; asiakkaiden ja maineen menetys, oikeudelliset kulut ja seuraamukset Vikojen korjaamisen kustannukset Toimittajan tekemän lisätyön hinta (vikojen jäljitys ja korjaus, testaus, uusien versioiden jakelu ja asennus) Resurssien (usein parhaiden) sitoutuminen korjaustyöhön uuden kehittämisen sijaan www.cs.helsinki.fi 30 April 2018 34

Testauksen kulut Moni tekijä vaikuttaa testauksen hintaan Kehitysprosessin kypsyys (organisaation vakaus, tekemisen ennustettavuus) Ohjelmiston laatu ja testattavuus Testausinfrastruktuuri Henkilöstön osaaminen Laatuvaatimukset Testausstrategia Testauspäällikkö ei juuri voi vaikuttaa kuin testausstrategiaan ja jossain määrin infrastruktuuriin ja henkilövalintoihin www.cs.helsinki.fi 30 April 2018 35

Testauksen työmäärän ja kustannusten arviointi Kustannuksia voi yleisesti arvioida kahdella tavalla Jakamalla koko testaustyö erillisiin tehtäviin ja pyytämällä tehtävien vastuuhenkilöitä ja/tai asiantuntijoita arvioimaan työmäärää ja muita kustannuksia Käyttämällä aiemmista projekteista kertynyttä dataa työmääristä ja kuluista arvioinnin pohjana Jälkimmäinen tapa tuottaa yleensä parempia arvioita, koska testauksen vaatima työmäärä yleensä aliarvioidaan! www.cs.helsinki.fi 30 April 2018 36

Testausstrategia ja kustannukset Testausstrategian tavoitteena on Optimoida testauksen kustannukset suhteessa löytymättömien virheiden aiheuttamiin kustannuksiin Minimoida riskit Käytännössä laskelmien tekeminen voi olla vaikeaa puuttuvan kokemusperäisen datan takia Strategiapäätökset tehdään usein pikemminkin intuition kuin rationaalisen tiedon varassa www.cs.helsinki.fi 30 April 2018 37

Testausstrategia Ennaltaehkäisevä vs. reaktiivinen Ennaltaehkäisevässä lähestymistavassa testaajat ovat mukana projektin alusta alkaen, jolloin testauksen suunnittelussa voidaan antaa riittävästi painoa aikaisessa vaiheissa tehtäville katselmoinneille ja analyyseille Reaktiivisessa toimintatavassa testauksen suunnittelu tulee mukaan vasta ohjelman toteutuksen ollessa jo pitkällä; tässä tapauksessa tutkiva testaus voi olla paras ja ainoa toimiva strategia Ennaltaehkäisevä toiminta on kuitenkin kustannustehokkainta koko ohjelmiston elinkaarta ajatellen www.cs.helsinki.fi 30 April 2018 38

Testausstrategia Analyyttinen vs. heuristinen menetelmä Analyyttinen testauksen suunnittelu yrittää kvantifoida kustannukset ja kulut sekä niiden väliset riippuvuudet ja tuottaa optimoidun strategian laskelmien avulla Heuristinen suunnittelu nojaa asiantuntijoiden kokemukseen ja peukalosääntöihin Käytännössä ollaan jossain näiden ääripäiden välillä ja mukana on muitakin elementtejä Malliperustainen testaus, tilastolliset mallit, riskianalyysit, standardit, uudelleenkäyttö, tarkistuslistat, asiantuntijoiden takapuolituntuma www.cs.helsinki.fi 30 April 2018 39

Testausaktiviteetit, Vikaraporttien käsittely Kurssikirja luvut 6.5 6.8. Kuuluu koealueeseen www.cs.helsinki.fi 30 April 2018 40

Testauspäällikön rooli ketterässä kehityksessä www.cs.helsinki.fi 30 April 2018 41

Ketterä kehitys ja testaus Ei kurssikirjassa Video: Agile Test Management by Fran O Hara http://www.youtube.com/watch?v=4wngza3efau www.cs.helsinki.fi 30 April 2018 42

Ketterä kehitys ja testaus Siirtymä ketterään reaktiivisessa moodissa ole proaktiivinen Kaksi roolia Linjaesimies rekrytointi, sopivuus ketteriin kehitystiimeihin, valmennus Testauksen johtaminen projekteissa Testaus tapahtuu projekteissa, ei erillisessä siilossa Testausstrategian muodostamisessa pitäisi pyrkiä ennaltaehkäisevään strategiaan Automatisointistrategia, automaation rooli (mitkä tasot) www.cs.helsinki.fi 30 April 2018 43

Ketterä kehitys ja testaus Älä ole liian määräävä testausprosessin määrittelyssä projektille; tarjoa neuvoja ja tukea ja ohjeita ja katso että tehdään järkeviä valintoja Definition of done määrittely avainasemassa riskit, testaus Testaajat ovat mukana projekteissa alusta alkaen, mikä korostaa testauksen merkitystä ja testaajien roolia Laatuvaatimusten testauksen haasteet miten saadaan mukaan näitten testaus heti alusta alkaen eikä vasta projektin lopussa Profilointi ym. www.cs.helsinki.fi 30 April 2018 44

Ketterä kehitys ja testaus Esteiden poistaminen testauksen tieltä Testaajat voivat opettaa kehittäjiä laatimaan parempia testejä www.cs.helsinki.fi 30 April 2018 45

Testaustyökalut www.cs.helsinki.fi 30 April 2018 46

Työkalut ja testaus Työkalujen käytön tavoitteet Käsin tehtävän, samanlaisena mekaanisesti toistuvan ja/tai aikaa vievän työn automatisointi (ihmiset ovat huonoja automaatteja) Sellaisten testien tekeminen, joita on vaikeaa tai mahdotonta tehdä manuaalisesti (rasitus- ja suorituskykytestit) Inhimillisten virheiden riskin vähentäminen esimerkiksi suurten testi- ja tulosdatamäärien käsittelyssä www.cs.helsinki.fi 30 April 2018 47

Työkalutyyppejä Testien suorituksen automatisointi, testidatan generointi, testitapausten generointi, testausprosessin hallinta, testin kohteen monitorointi, monikäyttötyökalut, jne. Yleiskäyttöisiä ja hyvin erikoistuneita Kaupallisia ja avoimia Esimerkiksi OSS työkaluja löytyy osoitteesta http://www.opensourcetesting.org/ Muita http://www.imbus.de/english/test-tool-list/ www.cs.helsinki.fi 30 April 2018 48

Testauksen hallintatyökalut Testitapausten määrittely, luokittelu, priorisointi ja muu hallinta Testien suorituksen tilan seuranta Mahdollisesti linkitys vaatimushallintaan Vikaraporttien luonti- ja seurantatyökalut ovat välttämättömiä (incident management, bug tracking) Hallintatyökalujen integrointi muihin Testiraporttien ja dokumenttien generointi www.cs.helsinki.fi 30 April 2018 49

Testauksen hallintatyökalut Testia Tarantula demo https://www.youtube.com/watch?v=oivth2- R7w4 www.cs.helsinki.fi 30 April 2018 50

Testien määrittelytyökalut Testitapauksen määrittelyyn kuuluvat esi- ja jälkiehdot, syöte ja odotettu tulos Testitapausten ja datan generointityökalut helpottavat testien laatijan työtä tuottamalla testisyötteitä tai kokonaisia testitapauksia automaattisesti www.cs.helsinki.fi 30 April 2018 51

Testitapausten generoinnin peruste Tietokantarakenteen määrittely (data base schema) Tuotetaan skeeman mukainen testitietokanta Testikohteen koodi (white box) Testioraakkeli tarvitaan Pelkkä koodi (toteutus) on huono lähtökohta testaukselle www.cs.helsinki.fi 30 April 2018 52

Testitapausten generoinnin peruste Testikohteen rajapinta (black box) Automaattinen ekvivalenssiluokkiin jako ja raja-arvo analyysi rajapinnan määrittelyn perusteella (API, GUI) Negatiivisten testitapausten automaattinen generointi (myös heuristiset säännöt) Testioraakkeli tarvitaan Testikohteen (formaali) spesifikaatio Model based testing Testisyötteiden ja tulosten generointi UML mallin avulla Malli toimii oraakkelina www.cs.helsinki.fi 30 April 2018 53

Esimerkki AgitarOne: Junit yksikkötestien automaattinen generointi Yhdistää black-box ja white-box menetelmiä Kaupallinen työkalu http://www.agitar.com/solutions/products/agitarone.html Menetelmän yksityiskohdat ja analyysialgoritmit liikesalaisuuksia, mutta tutkimustietoa aihepiiristä löytyy www.cs.helsinki.fi 30 April 2018 54

Staattisen testauksen työkalut Katselmoinnit Spesifikaatioiden ja mallien staattinen analyysi Model checking UML-mallin täydellisyys ja ristiriidattomuus Koodin staattinen analyysi Datavuoanomaliat, turvallisuusongelmat ja kymmeniä muita, katso. esimerkiksi http://findbugs.sourceforge.net/bugdescriptions.html www.cs.helsinki.fi 30 April 2018 55

Dynaamisen testauksen työkalut Testien suorittamisen automatisointi Testitapaukset syötteineen ja odotettuine tuloksineen koodataan testiskripteiksi tai ohjelmiksi (JUnit - testitapausluokat) Työkalu ajaa testit automaattisesti ja kirjaa tulokset (JUnit laajennokset NetBeans ja Eclipse - ympäristöissä) Debuggerit Kehittäjän työkaluja pääasiassa, mutta voivat olla tarpeellisia tiettyjen virhetilanteiden luomiseksi www.cs.helsinki.fi 30 April 2018 56

Dynaamisen testauksen työkalut Testikehikot ja ajurit (test framework, test harness) Testiympäristön automaattinen generoiminen testikohteen analysoinnin perusteella Tuki ajurien kirjoittamista varten Riippuvuuksien analysointi ja tynkien (stubs) tai jäljittelijöiden (mock object) automaattinen (osittainen) generointi http://en.wikipedia.org/wiki/mock_object Google Test C++ testing framework http://code.google.com/p/googletest/wiki/primer www.cs.helsinki.fi 30 April 2018 57

Dynaamisen testauksen työkalut Simulaattorit, emulaattorit Testausrobotit (capture and replay) Käyttöliittymätapahtumien nauhoitus ja toisto testitapausten määrittelyn avuksi Selenium on suosittu työkalu selaimessa toimivien sovellusten testitapausten muodostamiseen ja suorittamiseen http://www.youtube.com/watch?v=oeyey6gadvg www.cs.helsinki.fi 30 April 2018 58

Dynaamisen testauksen työkalut Datalähtöinen testaus (data driven testing) Periaatteessa sama testitapaus suoritetaan monta kertaa peräkkäin vain syötteiden vaihtuessa Syötedata ja odotettu tulos talletetaan tiedostoon, tietokantaan tai taulukkon, josta testiskripti lukee datarivit ja ajaa testitapauksen Komento- tai avainsanatestaus (command/keyword driven testing) Testitapaukset ja -skenaariot koostuvat abstrakteista toiminnoista ( enter login credentials ) ja niiden syötteistä Testiä suoritettaessa abstrakti toiminto korvataan konkreettisella testikohteen toiminteella/dialogilla www.cs.helsinki.fi 30 April 2018 59

Dynaamisen testauksen työkalut Vertailijat (comparator) Suurien tietomassojen vertailuun (testin tuottama tulosdata vs. oraakkelin tuottama data) Dynaamiset analysaattorit testikohteen suorituksen aikana Muistin käyttö jne. Kattavuusanalyysi testitapausten suorituksesta Lause- ja haarautumakattavuus jne. Työkaluissa paljon eroja Esimerkiksi EclEmma coverage plugin for Eclipse www.cs.helsinki.fi 30 April 2018 60

Suorituskyvyn testaus ja monitorointi Kuormitustestaus, vasteajat Datan ja tapahtumien generointi Määrä, frekvenssi Monitorointi Testin aikaisen käyttäytymisen mittaaminen ja mittausdatan kerääminen Profilointi Vaatii erikoistuneita ja joskus kalliita välineitä Turvauhkien testaus http://www.metasploit.com www.cs.helsinki.fi 30 April 2018 61