Testausstrategia | Mitä ja miksi?
Testausstrategia (Testing Strategy) on yrityksille ensimmäinen asia, josta kannattaa lähteä liikkeelle, kun halutaan luoda tuotteille tai palveluille laadukas ja tehokas testaus. Strategialla ja pidemmän tähtäimen suunnitelmalla, pyritään saamaan systemaattinen lähestymistapa tuotteiden, palveluiden, ohjelmistojen ja järjestelmien testaamiseen.
Strategian tarkoituksena on määritellä periaatteet, menetelmät ja käytännöt, joita käytetään testauksessa eli määritellään ns. testausprosessi. Testausstrategialla pyritään dokumentoimaan asiat selkeästi ja samalla tarjotaan koko yritykselle korkeamman tason suunnitelma testaukselle.
Testausstrategian pitäisi vastata muutamiin kysymyksiin, jotta sen tarkoitus yrityksessä täyttyisi mahdollisimman tehokkaasti:
1. Mitä testataan?
2. Miksi testataan?
Näihin kysymyksiin, kun saadaan kristallisoitua vastaus, niin yrityksessä kaikki pystyy paremmin sitoutumaan pitkäjänteisesti testaukseen ja sen kehitykseen.
Tarkoituksena ei niinkään ole vastata kysymykseen: Miten testataan? Kysymykseen miten testataan, tulee tarkennettua vastaus, kun strategian pohjalta määritellään testauksen arkkitehtuuria (Architecture of Testing) ja teknistä testaussuunnitelmaa (Testing Plan).
Tärkeä asia testausstrategian luomisessa on, että sen luovat henkilöt, joilla on tarpeeksi ammattitaitoa testauksen parissa, ymmärtävät yrityksen tuotteen tuomat vaatimukset ja rajoitteet. Näin pystytään testausstrategiassa määrittelemään mitä testataan ja mitä jätetään testaamatta.
Alla on listattuna muutamia asioita mitä testausstrategiassa kannattaa huomioida, jotta saadaan tärkeimmät asiat määriteltyä ja vastattua testauksen kulmakivinä toimiviin kysymyksiin.
Testausstrategian hyödyt:
- Testauksen tavoitteet (goals)
Määrittelee, mitä testauksella halutaan saavuttaa. Yleisiä testauksen tavoitteita (Goals) ovat virheiden löytäminen, suorituskyvyn optimointi, turvallisuuden ja vaatimustenmukaisuuden varmistaminen. - Testauksen laajuus (scope)
Ammattilaiset yhdessä määrittelevät, mitkä osat tuotteesta, ohjelmistosta, palvelusta tai järjestelmästä testataan ja mitä ei (In/Out of Scope). Pystytään keskittymään tärkeimpiin kriittisiin osa-alueisiin ja hyvään resurssien käyttöön. - Testaustasot ja menetelmät (levels & methods)
Saadaan kuvattua testauksen eri tasot (Testing Levels) (lue lisää: Testauksen tasot). Testaustasoja voivat olla yksikkötestaus, integraatiotestaus, järjestelmätestaus ja hyväksyntätestaus. Kuvataan myös muut mahdolliset testausmenetelmät, kuten manuaalitestaus, regressiotestaus, kestotestaus, sääolosuhdetestaus, tutkivatestaus jne. - Testauksen ympäristöt ja järjestelmät (environments & setups)
Testausstrategiassa ei välttämättä oteta kantaa testaustyökalujen valintaan. Enemmän strategiassa mietitään ja valitaan testauksessa tarvittavat testausympäristöt (Environments). Tämä sisältää testauslabrat, pilvipalvelut, automaatiot, bugiseurantajärjestelmät, simulaattorit ja emulaattorit. - Riskit, resurssit ja aikataulu (risks, resources & schedule)
Strategiaa määritellessä voidaan tunnistaa hyvissä ajoin myös mahdollisia riskejä ja ongelmia, joilla on vaikutuksia testauksen toteuttamiseen. Määritellään myös testaukseen tarvittavat hankinnat sekä testausaikataulu (Schedule), joka sisältää priorisoidut asiat ja budjetin (Budget) kvartaali, puolivuosittais tai jopa vuositasolla.
Testausstrategian merkitys
Hyvin suunniteltu testausstrategia tarjoaa monia etuja, kuten selkeyden ja suunnan koko yritykselle, erityisesti testauksen parissa työskenteleville henkilöille ja tiimeille. Strategialla pystytään tunnistamaan ja minimoimaan mahdollisia riskejä jo hyvin varhaisessa vaiheessa. Testausstrategia tuo myös uuden tason laadunvarmistukselle ja vähentää testauksen päällekkäisyyttä. Se auttaa tarkastelemaan testattavaa tuotetta tai palvelua yhdessä ja yhtenä kokonaisuutena.
On hyvin yleistä, että yrityksissä on totuttu tekemään testausta tuotekehityksen rinnalla testauksen ja laadunvarmistuksen korostuessa ennen tuotteen julkaisua asiakkaalle. Ajaudutaan helposti tilanteeseen, että tuotteen toimivuus pitää varmistaa ja silloin jokainen henkilö tai pienempi kehitystiimi, tekee testauksen omalle osa-alueelleen parhaalla näkemällään tavalla. Tässähän ei sinänsä ole ongelmaa. Kaikista osa-alueista pitäisi kuitenkin vetää yhteenveto, jolloin sitä on hankala luoda, kun kivijalkaa tai punaista lankaa ns. testausstrategiaa ei ole tehty. Tämä johtaa siihen, että kaikki eivät tiedä mitä toiset testaavat ja miksi. Testauksessa tulee päällekkäisyyksiä, joka tarkoittaa, että samaa asiaa testaa kaksi eri henkilöä tai jopa tiimiä. Ideaalitapauksessa tilanne olisi se, että eri henkilöiden tai tiimien testaus tukisi toisiaan ja vahvistaisi laadunvarmistusta.
- Mitä testauksella halutaan saavuttaa ja miksi.
- Mitkä ovat testauksen rakentamisen ja kehityksen eri asioiden prioriteetit, eli mitä tehdään ja missä järjestyksessä.
- Kuinka paljon resursointia ja hankintoja se vaatii.
- Mikä on kvartaali-, puolivuosittais tai vuosibudjetti.
Hyvin määritelty testausstrategia on siis yritysten kriittinen työkalu. Sen luominen on kivijalka onnistuneelle testaukselle yrityksissä. Se vaatii aluksi kovaa työtä, jatkuvaa strategian seurantaa ja todella pitkäjänteistä sitoutumista sekä työtä.
Testausstrategian luomisessa pitää alusta asti olla mukana henkilöt, jotka ymmärtävät testauksen haasteet, mahdollisuudet ja merkityksen. Strategian luomiseen kannattaa ottaa mukaan testauksen parissa työskentelevät henkilöt, jotta he saavat antaa oman näkemyksensä asioihin, mutta myös ymmärtävät mitä halutaan ja miksi sekä sitoutuvat pitkäjänteisesti sen toteuttamiseen.
Tästä ja monesta muustakin syystä testaus ja testausautomaatio on hyvinkin laaja osa-alue kun sen haluaa tehdä kunnolla ja laadukkaasti. Sitä varten kannattaa olla testaukselle ja sen automatisoinnille erikoistuneet henkilöt.
Wirva Solutions
testausstrategian määrittelyssä
Wirva Solutions auttaa yrityksiä myös testausstrategian määrittelyssä.
Olemme tehneet testauksen ja testiautomaation parissa yhteistyötä isojen yritysten kanssa, joiden tuotteet ovat modulaarisia, turvallisuutta vaativia sekä voivat olla osa isoa järjestelmää.
Mikäli yrityksellänne kenties puuttuu testauksesta punainen lanka ja etsitte myös vahvaa osaamista sekä kumppania niin otathan yhteyttä. Me autamme mielellämme.