Ohjelmistokehityksessä kaikki testausaktiviteetit voidaan jakaa useisiin vaiheisiin. Samoin kuin ohjelmistokehityksen elinkaarimallissa (SDLC), on myös ohjelmistotestauksen elinkaarimalli (STLC). Kaikkien vaiheiden noudattaminen voi olla ratkaisevan tärkeää prosessin onnistumiselle ja johtaa huomattavasti korkeampaan testien tehokkuuteen ja siten myös huomattavasti korkeampaan lopputuotteen laatuun. Lue lisää saadaksesi lisätietoja.
STLC:n 6 vaihetta – sisällysluettelo:
- Vaihe 1: Vaatimusanalyyssi
- Vaihe 2: Testaussuunnittelu
- Vaihe 3: Testitapausten kehittäminen
- Vaihe 4: Ympäristön asennus
- Vaihe 5: Testin suorittaminen
- Vaihe 6: Testin päättäminen
- STLC:n 6 vaihetta – yhteenveto
Vaihe 1: Vaatimusanalyyssi
Tämä on ensimmäinen askel syklissä. Testitiimi tarkistaa huolellisesti tuotteen vaatimukset. Jos on ristiriitoja, puutteita, epätarkkuuksia tai väärinkäsityksiä, testitiimi keskustelee niistä eri projektin sidosryhmien, kuten liiketoiminta-analyytikon tai ohjelmistoinfrastruktuurin asiantuntijan, kanssa.
Vaatimuskriteerit:
- Liiketoimintavaatimusten määrittely (BRS)
- ohjelmistoinfrastruktuuriasiakirja
Tehtävät:
- määritä suoritettavat testit
- asettaa prioriteetit testin suorittamiselle
- tarkistaa, mitkä testit on suoritettava manuaalisesti ja mitkä on automatisoitava
Poistumiskriteerit:
- testausta varten tarvittavien vaatimusten lista
- automaattiset testit
Vaihe 2: Testaussuunnittelu
Tässä vaiheessa validointitiimi suunnittelee kaikki testausaktiviteetit laatimalla testaussuunnitelman. Tämä asiakirja määrittelee:
- saavutettavat tavoitteet
- toteutettavat prosessit ja menetelmät
- käytettävä ympäristö ja työkalut
- testattavat tai ei-testattavat elementit
- tiimin organisaatio ja tehtävien jako
- välitavoitteet eri aktiviteeteille
- mahdolliset riskit
Testaussuunnitelman laatimisen lisäksi tässä vaiheessa laaditaan myös kustannusarvio.
Vaihe 3: Testitapausten kehittäminen
Tässä vaiheessa — joka tunnetaan myös nimellä Testisuunnittelu — on neljä vaihetta, joita seurata:
1. Valmistele testiskenaariot
Testipäällikkö tai testijohtaja valmistelee testiskenaarion, jota käytetään testitapausten luomiseen.
2. Luo testitapaukset
Jokaiselle skenaariolle testaajat kirjoittavat testitapaukset varmistaakseen, että ohjelmiston toiminnallisuus täyttää vaatimukset. Testiautomaation tapauksessa testiskriptit kirjoitetaan tässä vaiheessa.
3. Valmistele testidataa
Testitiimin on valmisteltava joukko tietoja, joita käytetään testitapausten suorittamisessa. Tämä voi olla positiivista tai negatiivista dataa, jolla testataan toiminnon suorituskykyä oikeiden tai virheellisten tietojen tapauksessa.
4. Valmistele RTM
Testitiimi valmistaa avainvaatimusten jäljitettävyyden matriisin (RTM). Tätä asiakirjaa käytetään seuraamaan, mitä testejä tarvitaan vaatimusten täyttämisen varmistamiseksi. Ennen testauksen aloittamista sidosryhmät suorittavat tarkistuksia ja validoivat, mitä yllä olevissa aktiviteeteissa on kehitetty.
Vaihe 4: Ympäristön asennus
Tämä on vaihe, jossa testitiimi ei ole mukana. Erillinen tiimi hoitaa ympäristön valmistelun ja konfiguroinnin. Testaajille ilmoitetaan, miten ympäristö on asetettu ja mikä ohjelmistoversio on ajantasalla.
Ainoa aktiviteetti, jota testitiimiltä vaaditaan, on savutestien valmistelu varmistaakseen, että asennettu versio on sopiva testattavaksi. Jos savutestit epäonnistuvat, versio hylätään ja testaus keskeytetään, kunnes ilmoitetut ongelmat on korjattu.
Vaatimuskriteerit:
- testaussuunnitelma
- testauspäivämäärä
- savutesti
Tehtävät:
- testausympäristön valmistelu
- testausympäristön asennus
- testidatan asettaminen
- savutestien suorittaminen koodin kokoamisen yhteydessä
Poistumiskriteerit:
- käytettävä testausympäristö
- käytettävä testidata
- positiiviset savutestitulokset
Vaihe 5: Testin suorittaminen
Tämä on yksinkertaisesti testien suorittaminen. Tämän vaiheen aikana testaajat voivat tunnistaa mahdollisia poikkeavuuksia ja testata ohjelmoijien kehittämiä parannuksia. Testausryhmän tehtävät ovat:
- suorittaa aiemmin kehitetyt testitapaukset ja verrata odotettua tulosta saatuun tulokseen
- ylläpitää testiskriptiä
- tunnistaa, havaita, kirjata ja raportoida havaitut viat
- testata vian korjaukset uudelleen
Vaatimuskriteerit:
- toimiva testausympäristö
- oikea testidata
- testaussuunnitelma
- suoritettavat testitapaukset
Tehtävät:
- suorittaa testit testaussuunnitelman mukaan
- asiakirjoittaa testitulokset
- hallita vikojen elinkaarta
Poistumiskriteerit:
- kaikkien MTR:ään liittyvien testien suorittaminen
- päivitetyt testitapaukset tuloksineen
- vikaraportit
Vaihe 6: Testin päättäminen
Ohjelmisto otetaan käyttöön. Validointitiimi kokoontuu analysoimaan tuloksia ja tunnistamaan parannuskohteita tulevissa projekteissa. Testipäällikkö laatii testin päättämisraportin, joka tehdään päivittäin (DSR – päivittäinen tilanneraportti) tai viikoittain (WSR – viikoittainen tilanneraportti) sidosryhmien sopimuksen mukaan.
Lopuksi testitiimi kokoontuu analysoimaan testitapauksia, havaittuja vikoja, käytettyä aikaa, aikarajoja jne. Tällä tavoin voidaan määrittää, mitä on parannettava seuraavassa testisyklissä.
Vaatimuskriteerit:
- testin suorittamisraportit
- vikaraportit
Tehtävät:
- analysoida, mitä on testattu
- laatia testin päättämisraportti
Poistumiskriteerit:
- prosessin päättäminen ilman avoimia vikoja
- testin päättämisraportti
STLC:n 6 vaihetta – yhteenveto
Ohjelmistokehitys ei voisi olla olemassa ilman testausvaihetta. Oikea valmistautuminen tähän prosessiin tuo mukanaan useita etuja, mukaan lukien, mikä tärkeintä, ajan ja rahan säästämisen mahdollisissa tulevissa tarkistuksissa. Toivomme, että tämä artikkeli auttoi sinua oppimaan lisää ohjelmistotestauksen elinkaarimallista (STLC).
Olet juuri lukenut STLC:n 6 vaihetta. Tutustu myös muihin sarjoihimme Pythonista ja Javascriptista!
Jos pidät sisällöstämme, liity vilkkaaseen mehiläisyhteisöömme Facebookissa, Twitterissä, LinkedInissä, Instagramissa, YouTubessa, Pinterestissä.
Robert Whitney
JavaScript-asiantuntija ja opettaja, joka valmentaa IT-osastoja. Hänen päämääränsä on nostaa tiimin tuottavuutta opettamalla muille, kuinka tehdä tehokasta yhteistyötä koodauksen aikana.