1 / 33

PTP - Personal Testing Process

PTP - Personal Testing Process. 2012-11-01 Heikki Uusitalo. PTP - Personal Testing Process. PTP on malli, joka mittaa testaajan kypsyyttä ja kyvykkyyttä. PTP on prosessi, joka tähtää testaajan ammattitaidon parantamiseen. Esikuvina:

Download Presentation

PTP - Personal Testing Process

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PTP - Personal Testing Process 2012-11-01 Heikki Uusitalo

  2. PTP - Personal Testing Process PTP on malli, joka mittaa testaajan kypsyyttä ja kyvykkyyttä. PTP on prosessi, joka tähtää testaajan ammattitaidon parantamiseen. Esikuvina: Ohjelmistokehitysprosessien arviointimallit SPICE (ISO 15504 / 33000) ja CMMI. PSP, Watts Humphreyn kehittämä Personal Software Process. Bloomin taksonomia. PTP on näistä kehitetty testauksen osa-alueelle.

  3. Bloomin taksonomia ja osaamisen tasot Bloomin taksonomia määrittelee osaamisen tason. • Tieto. Näytä, että tiedät. • Ymmärrys. Näytä, että ymmärrät. • Sovellus. Näytä, että pystyt käyttämään oppimaasi. • Analyysi. Näytä, että pystyt löytämään olennaiset asiat. • Synteesi. Näytä, että pystyt luomaan ajatuksia ja kokonaisuuksia. • Arviointi. Näytä, että pystyt arvioimaan ideoita, tietoa, menettelyjä ja ratkaisuja.

  4. PTP - Personal Testing Process PTP perustuu ajatukseen soveltaa yksilötasolla ohjelmistotalojen käyttöön suunnitellun SPICE -mallin prosessiarvioinnin periaatteita. PTP lähtee oletuksesta, jonka mukaan testauksen laadun ja tehokkuuden parantaminen edellyttää yritystason prosessien kehittämisen lisäksi sitä, että testaajat määrätietoisesti kehittävät omaa ammattitaitoaan myös omien työtehtävien tasolla. PTP olettaa, SPICE -mallia mukaillen, että testauksen laadun ja tehokkuuden parantaminen ei onnistu, elleivät testaajat pysty seuraamaan omaa kehittymistään.

  5. PTP - ammattitaidon kehittäminen • Alla on muutamia autenttisia kohteita, joista testaajat haluavat lisäoppia • Testauksen hallinnan hyvät käytännöt (kokemusperäistä). • Kuinka testausteoriaa sovelletaan käytännössä ja mihin suuntaan käytäntöä tulisi kehittää. • Työmääräarvioista. • Testiautomaatio. • Koodaus for dummys. • Välineosaaminen (Testrail, Clearquest...)

  6. PTP - periaate • PTP -mallissa • Testaajat aluksi mittaavat suoriutumisensa testaustehtävistä nykyisillä työtavoillaan. • Tämän jälkeen he ottavat käyttöönsä PTP -prosessin järjestelmälliset työtavat ja harjoittelevat niitä pienimuotoisissa harjoituksissa. • Lopuksi he vertaavat suoriutumistaan alkuperäisillä työtavoillaan ja uusilla järjestelmällisillä työtavoilla. • Opetellut järjestelmälliset työtavat toimivat pohjana, kun testaajat tämän jälkeen lähtevät kehittämään heille itselleen parhaiten sopivia työtapoja.

  7. PTP - tasot Testaaja on tasolla: • Nolla: Tietää testauksen, ei osaa testata. (tieto) • Yksi: Osaa testata. (ymmärrys) • Kaksi: Hallitsee suorituksen. (sovellus) • Kolme: Henkilökohtainen prosessi. (analyysi) • Neljä: Mittaa ja analysoi prosessia. (synteesi) • Viisi: Asettaa tavoitteita ja kehittää prosessia. (arviointi)

  8. PTP - taso 1 • Tuntee käsitteet. • Tuntee testaustasot, testaustekniikat, testausmenetelmät. • Tuntee ohjelmistokehitysprosessin ja testauksen aseman prosessissa. • Ei välttämättä osaa soveltaa niitä, ei tiedä miten, missä ja milloin niitä käytetään. • Osaa tehdä testitapauksen. • Osaa suorittaa testin. • Osaa tehdä havainnon.

  9. PTP - taso 2 • Osaa testaustyökalut ja niiden hyödyt. • Osaa automaatiotestauksen ja osaa hyödyntää sitä oikein. • Tuntee ohjelmistokehityksen määrittely- ja suunnittelumenetelmät (esim. UML). • Osaaarvioida työmäärän ja luoda aikataulun. • Välinetuki, suorituksen mittaaminen, laadun varmistus, testikattavuus. • Suorituksen katselmointi. • Suorituksen mittaaminen

  10. PTP - taso 3 • Prosessiajattelu syntyy. • Testaus muodostuu toisiaan seuraavista testaajan toimista: testin suunnittelu, testin tekeminen ja testin suoritus. • Testejä suunniteltaessa testaaja ryhmittelee samanlaiset tehtävät kokonaisuuksiksi. • Tunnistaa kokonaisuudet tehtäviksi, ne muodostavat prosessin toiminnot. • Kehittää toiminnot säännöllisiksi. • Muodostaa testitapauksille konstruktion eli rakenteen. • Syntyy tapa tehdä ja toimia eli prosessi: Personal Testing Process - PTP.

  11. PTP - naiivi esimerkki • Näyttö, jolla kaksi testattavaa kenttää, kaksi tapaa testata. • Vaihtoehto 1: • Ensin testaaja suorittaa kaikki positiiviset testit molemmille kentille ja sen jälkeen kaikki negatiiviset testit molemmille kentille. • Vaihtoehto 2: • Testaaja suorittaa kenttäkohtaisesti kaikki kenttään kohdistuvat testit, ensin kentän 1 kaikki testit, sitten kentän 2 kaikki testit. • Testaaja valitsee toimintatapansa tehokkuuden kannalta. Tehokkuutta mitataan. • Kun testin tekee seuraavallakin kerralla samalla tavalla, niin prosessi on syntynyt.

  12. PTP - taso 3 • Prosessiajattelussa testaajalla on aina ”valmis ohje” kuinka toimia. • Yleisen testausprosessin vaiheita ovat esimerkiksi vaatimusmäärittely, testauksen suunnittelu, testien luonti, testien suoritus, raportointi, tulosten analysointi, havaintojen uudellentestaus, regressiotestaus, testauksen lopetus. • Mieti kuinka moneeen vaiheeseen edellinen päätös vaikuttaa – lähes kaikkiin! • Kun vaikutusta tarkastellaan organisaation kannalta, jossa projekteja ja testaajia on useita, niin vaikutus moninkertaistuu.

  13. PTP - taso 4 • Taso 4 on kaksijakoinen: • Testaaja mittaa ja analysoi omaa toimintaansa. • Testaaja antaa palautetta suunnitteluun ja toteutukseen. • Mittaaminen: • Mittaamisesta ja sen tuloksista on hyötyä vain jos mitattava säilyy vakiona, ts. standardeja ja menetelmiä noudatetaan. • Palaute suunnittelulle ja toteutukselle: • Virheiden analysointi, virheiden luokittelu, virheiden analysointi, virhetietokanta • Vaatimukset suunnittelulle ja dokumentaatiolle.

  14. PTP - taso 4 • Tasolla 4 prosessin mittarit mittavat testaajan prosessia, eivät yksittäistä testaajaa. • PTP:n kannalta kvalitatiiviset mittarit ovat tärkeitä. • Organisaatioprosessin laadullisista tavoitteista johdetaan testaajan prosessin laatutavoitteet. • Vertaamalla tuloksia 2. tason tuloksiin nähdään prosessin vaikutus.

  15. PTP - taso 5 • Analyysin avulla testaaja tunnistaa kehityskohteet. • Asettaa kehitystavoitteet ja löytää keinot kehitykseen. • Kykenee muuttamaan toimintatapojaan. • Seuraa muutosten vaikutuksia. • Optimoi ja minimoi prosessia. • Ennakoi tulevaa. • Muutos on jatkuva olotila. • Tehokkaiden menetelmien hyödyntäminen, (analyysi)tiedon hyväksikäyttö, harjoittelu, muilta oppiminen, uusien menetelmien opiskelu.

  16. PTP - esimerkki • Iso julkishallinnon järjestelmä, jossa PTP -prosessia sovellettiin • 150 ikkunakuvaa • 150 käyttötapausta • Tietokannassa miljoonia rivejä • PTP -prosessia käytettiin käyttöliittymä- ja roolitestien tekemiseen

  17. PTP - käyttöliittymätesti • Käyttöliittymätestit aikaisemmin ”makkaratestejä”, jossa kaikki stepit olivat samassa testissä. • Kun joku steppi feilaa, niin ovatko jäljelle jäävät stepit enää valideja? • Tehtiin hakemistorakenne, jossa käyttöliittymän ominaisuudet paloiteltiin • Kentät • Painikkeet • Linkit • jne… • Testejä enemmän, testaus kuitenkin nopeutui, testit lyhyempiä. • Laatu ja kattavuus parani.

  18. PTP - käyttöliittymätesti ennen

  19. PTP - käyttöliittymätesti jälkeen

  20. PTP - roolitestit • Roolitestit, lähtötilanne • Erilaisia loppukäyttäjän rooleja 7 kpl (sovelluksen käyttövaltuudet) • 150 ikkunakuvaa • 150 käyttötapausta • Jos jokaisella roolilla käydään jokaisessa ikkunassa ja käyttötapauksessa • Käyttöliittymätestejä 7 * 150 = 1050 • Käyttötapaustestejä 7 * 150 = 1050 • Oletus testaaja tekee 20 testitapausta päivässä ~ 3 tunnissa • 2100 testiä 20 / päivä => n. 100 pv => n. 5 kk • Ja tähän lisäksi testien ajamiseen kuluva aika

  21. PTP - roolitestit • Jokaista roolia varten luotiin oma testijoukko jokaiselle toimintokokonaisuudelle. • Testit jaoteltiin navigaatiotestein, käsittelysääntötesteihin sekä osoitteenluovutus- ja turvakielto testeihin. • Nämä muodostavat roolitestien PROSESSIN.

  22. PTP - roolitestit • Navigaatiotestit • Testaaja poimii saantipolut ikkunakuvauksen navigaatiokartoista. • Käsittelysääntötestit • Testaaja poimii ikkunakuvauksista rooliin liittyvät käsittelysäännöt • Testaaja poimii käyttötapauksista rooliin liittyvät käsittelysäännöt • Osoitteenluovutus- ja turvakieltotestit • Selvät käsittelysäännöt • Testattavien asioiden poiminta helppoa koska testaaja tietää mitä etsiä - toiminta säännönmukaista - syntyy prosessi.

  23. PTP - roolien käyttövaltuudet

  24. PTP - roolien navigaatiotestit

  25. PTP - roolikohtaiset toiminnot

  26. PTP - roolien käsittelysäännöt

  27. PTP - roolitestit

  28. PTP - roolitestit

  29. PTP - roolitestien analyysi • Testien luonti suoraviivaista ja prosessinomaista. • Testien tekeminen ja suorittaminen nopeaa. Kattavuus erinomainen. • Aikataulun suhteen 2/3 testeistä tehtiin ja suoritettiin 4 kuukaudessa. • PTP 4 tason mitattavuus toteutui (väliaikatilanne) kun vertasimme tekemiemme (tilaaja) testien määrää toimittajan testimäärään. • Tilaaja Passed 639, Failed 66, N/A 16 • Toimittaja Passed 163, Failed 0, N/A 2 • PTP 5 tason optimointi toteutui kun ensin teimme raskaimman roolin testit ja teimme niistä alemman tason roolien testit. • PTP:n toimivuus tuli käytännössä todennetuksi!

  30. PTP - muita soveltamiskohteita • Käyttötapausten käsittelysäännöt ja poikkeukset • Käyttöliittymätestit • Tapahtuma- ja jäljityskirjaukset • Tilasiirtymät ja tilat

  31. PTP ja uudet menetelmät • Tutkiva testaus ja paritestaus • Sinänsä hyvä menetelmä, mutta vaatii testaajalta hyvää sovellusaleen osaamista. • Tähänastisten kokemusten perusteella tutkivaan testaukseen kykenee PTP:n tasolla 3 oleva testaaja. • Ketterät menetelmät • Vaativat myös testaajalta hyvää sovellusalueen tuntemusta.

  32. PTP - lopuksi • Kaksi keskeistä käsitettä: prosessi ja tasomalli • Jokaisella on omat työtavat ilman PTP:täkin. • Testauskonsultti työskentelee eri yrityksissä erilaisissa testausprosesseissa, ainoa yhteinen prosessi on testaajan henkilökohtainen prosessi, jonka mukaan toimia ja kehittyä. • Jos tämä herättää ajatuksia, niin hyvä. • Tunnista oma prosessisi!

  33. Heikki Uusitalo @knowit.fi

More Related