Järjestelmätestaus on ohjelmistotestauksen tyyppi, jossa tarkastetaan koko järjestelmä.
Siinä yhdistetään kaikki kehittämäsi ohjelmiston yksittäiset moduulit ja komponentit, jotta voidaan testata, toimiiko järjestelmä yhdessä odotetulla tavalla.
Järjestelmätestaus on olennainen ohjelmistotestausvaihe, jonka avulla testausryhmät voivat varmistaa rakennelman laadun ennen kuin se luovutetaan loppukäyttäjille.
Tässä artikkelissa tarkastelemme järjestelmätestausta: mitä se on, miten se toimii, kuka suorittaa järjestelmätestausta ja mitä lähestymistapoja ja työkaluja testausryhmät voivat käyttää tehdäkseen järjestelmätestauksesta nopeampaa ja luotettavampaa.
Lyhyesti sanottuna löydät täältä kaiken, mitä sinun tarvitsee tietää järjestelmätestauksesta.
Mitä on järjestelmätestaus?
Järjestelmätestaus on eräänlainen ohjelmistotestaus, joka tehdään aina koko järjestelmälle. Se tarkistaa, täyttääkö järjestelmä sille asetetut vaatimukset, olivatpa ne mitä tahansa.
Testaajat suorittavat järjestelmätestauksen arvioidakseen sekä järjestelmän toiminnallisia että muita kuin toiminnallisia vaatimuksia sen jälkeen, kun yksittäiset moduulit ja komponentit on integroitu yhteen.
Järjestelmätestauksessa testataan vain ohjelmiston ulkoisia toimivia ominaisuuksia eikä sovelluksen sisäistä suunnittelua.
Testaajat eivät tarvitse ohjelmistokoodin ohjelmoinnin ja rakenteen tuntemusta voidakseen arvioida ohjelmiston täydellisesti järjestelmätestauksen aikana. Sen sijaan testaajat yksinkertaisesti arvioivat ohjelmiston suorituskykyä käyttäjän näkökulmasta.
1. Milloin meidän on tehtävä järjestelmätestausta?
Järjestelmätestaus suoritetaan integrointitestauksen jälkeen ja ennen hyväksymistestausta. Ohjelmistotestausryhmä suorittaa järjestelmätestausta säännöllisesti varmistaakseen, että järjestelmä toimii niin kuin sen pitäisi kehityksen tärkeimmissä vaiheissa.
Esimerkkejä tapauksista, joissa järjestelmätestausta suoritetaan, ovat:
● Uusien ohjelmistoversioiden kehittämisen aikana.
● Sovelluksen käynnistämisen aikana, kun alfa- ja beta-testaus tapahtuu.
● Kun yksikkö- ja integrointitestaus on valmis.
● Kun järjestelmän rakentamisen vaatimukset on täytetty.
● Kun muut testausehdot täyttyvät.
Kuten muitakin ohjelmistotestauksen muotoja, myös järjestelmätestausta suositellaan tehtäväksi säännöllisesti, jotta voidaan varmistaa, että ohjelmisto toimii niin kuin pitääkin.
Järjestelmätestauksen tiheys riippuu tiimisi resursseista sekä lähestymistavoista ja työkaluista, joita käytät järjestelmäohjelmistojen testaamiseen.
2. Kun et tarvitse järjestelmätestejä
Jos et ole vielä suorittanut alustavia testejä, kuten savu-, yksikkö- ja integrointitestejä, et ole valmis aloittamaan järjestelmätestausta.
On aina tärkeää suorittaa järjestelmätestausta integrointitestauksen jälkeen, mutta jos törmäät virheisiin ja ongelmiin, jotka aiheuttavat järjestelmätestauksen epäonnistumisen, voit lopettaa järjestelmätestauksen ja palata kehitystyöhön ja virheiden korjaamiseen ennen jatkamista.
3. Kuka osallistuu järjestelmän testaukseen?
Järjestelmätestauksesta vastaavat testaajat ja laadunvarmistusryhmät, eivät kehittäjät. Järjestelmätestauksessa otetaan huomioon vain ohjelmiston ulkoiset elementit, toisin sanoen käyttäjien kokemus siitä, miten he yrittävät käyttää ohjelmiston ominaisuuksia.
Tämä tarkoittaa, että järjestelmätestausta suorittavat testaajat eivät tarvitse teknistä tietämystä tietokoneiden koodauksesta, ohjelmoinnista tai muista ohjelmistokehityksen osa-alueista, jotka saattavat vaatia kehittäjiltä panosta.
Ainoa poikkeus tästä on automaattinen järjestelmätestaaminen, joka voi vaatia kehittäjiltä jonkin verran panosta riippuen siitä, miten sitä lähestytään.
Mitä testaamme järjestelmätestauksessa?
Järjestelmätestaus on eräänlainen ohjelmistotestaus, jossa testataan sekä ohjelmiston toiminnallisia että muita kuin toiminnallisia näkökohtia.
Sillä voidaan testata valtavasti erilaisia toiminnallisuuksia ja ominaisuuksia, joista monia käsitellään tarkemmin kohdassa Järjestelmätestauksen tyypit.
Jäljempänä on lueteltu yksityiskohtaisesti eräitä ohjelmistoon liittyviä näkökohtia, joita järjestelmätestauksella todennetaan.
1. Toiminnallisuus
Testaajat käyttävät järjestelmätestausta varmistaakseen, että valmiin järjestelmän eri osat toimivat niin kuin niiden pitäisi.
Ennakkotestauksen avulla voidaan arvioida sisäisen koodin rakennetta ja logiikkaa sekä sitä, miten eri moduulit integroituvat toisiinsa, mutta järjestelmätestaus on ensimmäinen vaihe, jossa testataan ohjelmiston toiminnallisuutta kokonaisuutena tällä tavoin.
2. Integrointi
Järjestelmätestauksessa testataan, miten eri ohjelmistokomponentit toimivat yhdessä ja integroituvatko ne sujuvasti toisiinsa.
Testaajat voivat myös testata ulkoisia oheislaitteita arvioidakseen, miten ne ovat vuorovaikutuksessa ohjelmiston kanssa ja toimivatko ne oikein.
3. Odotettu tuotos
Testaajat käyttävät ohjelmistoa kuten käyttäjä käyttäisi järjestelmätestauksen aikana tarkistaakseen ohjelmiston tuotoksen säännöllisen käytön aikana. Niillä tarkistetaan, onko ohjelmiston kunkin toiminnallisen ja ei-toiminnallisen ominaisuuden tuotos odotusten mukainen.
Jos ohjelmisto ei käyttäydy niin kuin sen pitäisi, on selvää, että se vaatii lisäkehitystyötä.
4. Virheet ja virheet
Järjestelmätestauksen avulla arvioidaan ohjelmiston toimivuutta ja luotettavuutta useilla alustoilla ja käyttöjärjestelmillä.
Järjestelmätestaajat varmistavat, että ohjelmistossa ei ole virheitä, suorituskykyongelmia ja yhteensopivuusongelmia kaikilla alustoilla, joilla ohjelmiston odotetaan toimivan.
Sisään- ja uloskirjautumis- ja poistumiskriteerit
Järjestelmätestauksessa käytetään sisään- ja uloskirjauskriteerejä, joilla varmistetaan, onko järjestelmä valmis järjestelmätestausta varten ja täyttyvätkö järjestelmän testausvaatimukset.
Toisin sanoen sisään- ja uloskirjauskriteerit auttavat testaajia arvioimaan, milloin järjestelmän testaus on aloitettava ja milloin se on lopetettava.
Osallistumisperusteet
Sisäänottokriteereissä määritellään, milloin testaajien tulisi aloittaa järjestelmän testaus.
Sisäänottokriteerit voivat vaihdella eri hankkeissa testauksen tarkoituksen ja noudatettavan testausstrategian mukaan.
Sisääntulokriteereissä määritetään ehdot, joiden on täytyttävä ennen järjestelmän testauksen aloittamista.
1. Testausvaihe
Useimmissa tapauksissa on tärkeää, että testattava järjestelmä on jo saattanut integraatiotestauksen päätökseen ja täyttänyt integraatiotestauksen poistumisvaatimukset, ennen kuin järjestelmätestaus aloitetaan.
Integrointitestauksessa ei olisi pitänyt havaita merkittäviä virheitä tai ongelmia komponenttien integroinnissa.
2. Suunnitelmat ja käsikirjoitukset
Ennen kuin järjestelmän testaus voidaan aloittaa, testaussuunnitelma on laadittava, allekirjoitettava ja hyväksyttävä.
Sinun on myös valmisteltava testitapaukset etukäteen sekä testiskriptit valmiina suoritusta varten.
3. Valmius
Tarkista, että testausympäristö on valmis ja että kaikki testin muut kuin toiminnalliset vaatimukset ovat käytettävissä.
Valmiuskriteerit voivat vaihdella eri hankkeissa.
Poistumisperusteet
Lopetuskriteerit määrittävät järjestelmän testauksen loppuvaiheen ja asettavat vaatimukset, jotka on täytettävä, jotta järjestelmän testaus voidaan katsoa päättyneeksi.
Lopettamiskriteerit esitetään usein yhtenä asiakirjana, jossa vain yksilöidään tämän testausvaiheen tuotokset.
1. Suoritus
Järjestelmätestauksen loppuun saattamisen peruskriteerinä on, että kaikki järjestelmätestaussuunnitelmissa ja sisäänpääsykriteereissä esitetyt testitapaukset on suoritettu asianmukaisesti.
2. Virheet
Tarkista ennen järjestelmän testauksen lopettamista, ettei yksikään kriittinen tai ensisijainen vika ole avoinna.
Keskipitkän ja matalan prioriteetin virheet voidaan jättää avoimiksi, jos ne toteutetaan asiakkaan tai loppukäyttäjän hyväksymällä tavalla.
3. Raportointi
Ennen järjestelmän testauksen päättymistä on toimitettava poistumisraportti. Tähän raporttiin kirjataan järjestelmätestauksen tulokset ja osoitetaan, että testaus on täyttänyt vaaditut poistumiskriteerit.
Järjestelmätestauksen elinkaari
Järjestelmätestauksen elinkaari kuvaa järjestelmän testauksen jokaisen vaiheen suunnitteluvaiheesta raportointiin ja loppuun saattamiseen.
Järjestelmätestauksen elinkaaren kunkin vaiheen ymmärtäminen auttaa sinua ymmärtämään, miten järjestelmätestausta tehdään ja miten se toimii.
Vaihe 1: Luo testaussuunnitelma
Järjestelmätestauksen ensimmäinen vaihe on järjestelmän testaussuunnitelman laatiminen.
Testaussuunnitelman tarkoituksena on hahmotella testitapausten odotukset ja testausstrategia.
Testaussuunnitelmassa määritellään yleensä testauksen tavoitteet ja päämäärät, laajuus, osa-alueet, tuotokset, aikataulu, sisään- ja uloskirjautumiskriteerit, testausympäristö sekä ohjelmistojärjestelmän testaukseen osallistuvien henkilöiden roolit ja vastuualueet.
Vaihe 2: Luo testitapaukset
Järjestelmätestauksen seuraava vaihe on testitapausten luominen.
Testitapauksissa määritellään tarkat toiminnot, ominaisuudet ja mittarit, joita aiot testata järjestelmän testauksen aikana. Voit esimerkiksi testata, miten tietty toiminto toimii tai kuinka pitkä tietty latausaika on.
Määritä kullekin testitapaukselle testitapauksen tunnus ja nimi sekä tiedot siitä, miten tätä skenaariota testataan ja mikä on testitapauksen odotettu tulos.
Voit myös hahmotella kunkin testitapauksen hyväksymis-/hylkäämiskriteerit tässä.
Vaihe 3: Testidatan luominen
Kun olet luonut testitapaukset, voit luoda testitiedot, joita tarvitset testien suorittamiseen.
Testaustiedot kuvaavat syötteet, joita testausryhmä tarvitsee testatakseen, johtavatko sen toimet odotettuihin tuloksiin.
Vaihe 4: Testitapausten suorittaminen
Tämä vaihe on se, mitä useimmat ihmiset ajattelevat järjestelmän testauksesta: testitapausten suorittaminen tai itse testaus.
Testausryhmä suorittaa jokaisen testitapauksen yksitellen ja seuraa samalla kunkin testin tuloksia ja kirjaa kaikki havaitsemansa virheet tai viat.
Vaihe 5: Ilmoita ja korjaa virheet
Testitapausten suorittamisen jälkeen testaajat laativat järjestelmätestiraportin, jossa esitetään yksityiskohtaisesti kaikki testauksen aikana ilmenneet ongelmat ja virheet.
Osa testin paljastamista virheistä saattaa olla pieniä ja helposti korjattavissa, kun taas osa voi hidastaa rakentamista. Korjaa nämä virheet sitä mukaa, kun niitä ilmenee, ja toista testisykli (joka sisältää muunlaista ohjelmistotestausta, kuten savutestausta) uudelleen, kunnes se läpäisee testin ilman suurempia virheitä.
Sekaannuksen selvittäminen: Järjestelmätestaus vs. integraatiotestaus vs. käyttäjän hyväksymistestaus
Monet ihmiset sekoittavat järjestelmätestauksen muihin ohjelmistotestauksen lajeihin, kuten integrointitestaukseen ja käyttäjän hyväksymistestaukseen.
Vaikka järjestelmätestauksella, integrointitestauksella ja käyttäjän hyväksymistestauksella on joitakin yhteisiä piirteitä, ne ovat erityyppisiä testauksia, joilla on eri tarkoitukset, ja kukin testaustyyppi on suoritettava toisistaan riippumatta.
Mitä on integraatiotestaus?
Integrointitestaus on ohjelmistotestauksen tyyppi, jossa ohjelmistomoduuleja ja -komponentteja testataan ryhmänä sen arvioimiseksi, kuinka hyvin ne integroituvat toisiinsa.
Integrointitestaus on ensimmäinen ohjelmistotestauksen tyyppi, jolla testataan yksittäisten moduulien yhteistoimintaa.
Integrointitestauksen suorittavat testaajat laadunvarmistusympäristössä, ja se on välttämätöntä, koska se paljastaa viat, joita voi syntyä, kun erikseen koodatut komponentit ovat vuorovaikutuksessa keskenään.
Mitä eroja on järjestelmätestauksen ja integrointitestauksen välillä?
Vaikka sekä järjestelmätestaus että integrointitestaus testaavat ohjelmiston kokonaisuutta, ne ovat erityyppisiä ohjelmistotestauksia, jotka toimivat eri tavoin.
Integrointitestaus suoritetaan ensin, ja järjestelmätestaus suoritetaan integraatiotestauksen jälkeen. Muita merkittäviä eroja järjestelmätestauksen ja integrointitestauksen välillä ovat:
1. Tarkoitus:
Integrointitestauksen tarkoituksena on arvioida, toimivatko yksittäiset moduulit oikein yhdessä, kun ne on integroitu. Järjestelmätestauksen tarkoituksena on testata, miten järjestelmä toimii kokonaisuutena.
2. Tyyppi:
Integrointitestauksessa testataan pelkästään toiminnallisuutta, eikä se ole hyväksymistestauksen laji.
Sen sijaan järjestelmätestauksessa testataan sekä toiminnallisia että muita kuin toiminnallisia ominaisuuksia, ja se kuuluu hyväksymistestauksen luokkaan (mutta ei käyttäjän hyväksymistestaukseen).
3. Tekniikka:
Integrointitestauksessa käytetään sekä mustalaatikko- että valkolaatikkotestausta arvioitaessa rakennettua ohjelmistoa sekä käyttäjän että kehittäjän näkökulmasta, kun taas järjestelmätestauksessa käytetään puhtaasti mustalaatikkotestausmenetelmiä ohjelmiston testaamiseen käyttäjän näkökulmasta.
4. Arvo:
Integrointitestausta käytetään rajapintavirheiden tunnistamiseen, kun taas järjestelmätestausta käytetään järjestelmävirheiden tunnistamiseen.
Mitä on käyttäjän hyväksymistestaus?
Käyttäjän hyväksymistestaus (User acceptance testing, UAT) on eräänlainen ohjelmistotestaus, jonka loppukäyttäjä tai asiakas suorittaa tarkistaakseen, täyttääkö ohjelmisto halutut vaatimukset.
Käyttäjän hyväksymistestaus on viimeinen testausmuoto, joka suoritetaan ennen kuin ohjelmisto siirtyy tuotantoympäristöön.
Se tapahtuu sen jälkeen, kun toiminnallinen testaus, integrointitestaus ja järjestelmätestaus on jo suoritettu.
Mitä eroja on järjestelmätestauksen ja käyttäjän hyväksymistestauksen välillä?
Käyttäjien hyväksymistestaus ja integrointitestaus varmistavat molemmat, että ohjelmisto toimii niin kuin sen pitäisi, ja molemmissa testaustyypeissä keskitytään siihen, miten ohjelmisto toimii kokonaisuutena.
Järjestelmätestauksen ja käyttäjän hyväksymistestauksen välillä on kuitenkin paljon eroja:
1. Testaajat:
Testaajat (ja joskus myös kehittäjät) suorittavat järjestelmätestauksen, kun taas loppukäyttäjät suorittavat käyttäjän hyväksymistestauksen.
2. Tarkoitus:
Käyttäjien hyväksymistestauksen tarkoituksena on arvioida, täyttääkö ohjelmisto loppukäyttäjän vaatimukset, ja järjestelmätestauksen tarkoituksena on testata, täyttääkö järjestelmä testaajan vaatimukset.
3. Menetelmä:
Järjestelmätestauksessa ohjelmiston yksittäiset yksiköt integroidaan ja testataan kokonaisuutena. Käyttäjän hyväksymistestauksessa loppukäyttäjä testaa järjestelmän kokonaisuutena.
4. Vaihe:
Järjestelmätestaus suoritetaan heti, kun integrointitestaus on saatu päätökseen, ja ennen käyttäjän hyväksymistestausta. Käyttäjien hyväksymistestaus suoritetaan juuri ennen tuotteen julkaisua liian varhaisille käyttäjille.
Järjestelmätestauksen tyypit
On yli 50 erilaista järjestelmätestauksen tyyppiä, jotka voit ottaa käyttöön, jos haluat testata, miten ohjelmiston rakentaminen toimii kokonaisuudessaan.
Käytännössä useimmat testausryhmät käyttävät kuitenkin vain muutamia näistä järjestelmätestauksen tyypeistä.
Käytettävän järjestelmätestauksen tyyppi riippuu monista eri tekijöistä, kuten budjetista, aikarajoituksista, prioriteeteista ja resursseista.
1. Toiminnallisuuden testaus
Toiminnallisuustestaus on eräänlainen järjestelmätestauksen laji, jonka tarkoituksena on tarkistaa ohjelmiston yksittäiset ominaisuudet ja toiminnot ja arvioida, toimivatko ne niin kuin niiden pitäisi.
Tämäntyyppinen järjestelmätestaus voidaan suorittaa manuaalisesti tai automaattisesti, ja se on yksi keskeisimmistä järjestelmätestauksen tyypeistä, joita testausryhmät suorittavat.
2. Suorituskyvyn testaus
Suorituskykytestauksessa testataan, miten hyvin sovellus toimii säännöllisen käytön aikana.
Sitä kutsutaan myös vaatimustenmukaisuustestaukseksi, ja se tarkoittaa yleensä sovelluksen suorituskyvyn testaamista, kun useat käyttäjät käyttävät sitä samanaikaisesti.
Suorituskykytestauksessa testaajat tarkastelevat latausaikoja sekä virheitä ja muita ongelmia.
3. Kuormitustestaus
Kuormitustestaus on eräänlainen järjestelmätestauksen tyyppi, jonka avulla testaajat arvioivat, kuinka hyvin sovellus kestää suuria kuormia.
Testaajat voivat esimerkiksi testata, kuinka hyvin sovellus toimii, kun monet käyttäjät yrittävät suorittaa samaa tehtävää samanaikaisesti, tai kuinka hyvin sovellus suorittaa useita tehtäviä samanaikaisesti.
4. Skaalautuvuuden testaus
Skaalautuvuustestaus on eräänlainen ohjelmistojärjestelmän testaus, jossa testataan, kuinka hyvin ohjelmisto skaalautuu vastaamaan eri projektien ja tiimien tarpeita.
Tämä on eräänlaista ei-toiminnallista testausta, jossa arvioidaan, miten ohjelmisto toimii eri käyttäjämäärillä tai kun sitä käytetään eri paikoissa ja eri resursseilla.
5. Käytettävyystestaus
Käytettävyystestaus on eräänlainen järjestelmätestauksen laji, jossa testataan sovelluksen käytettävyyttä.
Tämä tarkoittaa, että testaajat arvioivat ja arvioivat, kuinka helppoa sovelluksessa on navigoida ja käyttää, kuinka intuitiivisia sen toiminnot ovat ja onko sovelluksessa virheitä tai ongelmia, jotka voivat aiheuttaa käytettävyysongelmia.
6. Luotettavuuden testaus
Luotettavuustestaus on eräänlainen järjestelmäintegraatiotestaus, jossa tarkistetaan, kuinka luotettava ohjelmisto on.
Se edellyttää ohjelmiston toimintojen ja suorituskyvyn testaamista valvotussa ympäristössä, jotta voidaan arvioida, ovatko kertaluonteisten testien tulokset luotettavia ja toistettavissa.
7. Kokoonpanon testaus
Konfiguraatiotestaus on eräänlainen järjestelmätestauksen tyyppi, jossa arvioidaan, miten hyvin järjestelmä toimii erilaisten ohjelmistojen ja laitteistojen rinnalla.
Kokoonpanotestauksen tarkoituksena on tunnistaa paras ohjelmisto- ja laitteistokokoonpano, jolla maksimoidaan koko järjestelmän suorituskyky.
8. Turvallisuuden testaus
Tietoturvatestaus on eräänlainen järjestelmätestauksen tyyppi, jossa arvioidaan, miten ohjelmisto toimii turvallisuuden ja luottamuksellisuuden kannalta.
Tietoturvatestauksen tarkoituksena on tunnistaa mahdolliset haavoittuvuudet ja vaaratekijät, jotka voivat aiheuttaa tietomurtoja ja -rikkomuksia, jotka voivat johtaa rahan, luottamuksellisten tietojen ja muun tärkeän omaisuuden menetykseen.
9. Siirtymätestaus
Siirtymistestaus on eräänlainen järjestelmätestauksen tyyppi, joka suoritetaan ohjelmistojärjestelmille sen arvioimiseksi, miten ne voivat olla vuorovaikutuksessa vanhempien tai uudempien infrastruktuurien kanssa.
Testaajat voivat esimerkiksi arvioida, voidaanko vanhemmat ohjelmisto-osat siirtää uuteen infrastruktuuriin ilman virheitä ja virheitä.
Mitä tarvitset aloittaaksesi järjestelmätestauksen
Ennen kuin järjestelmätestaus voidaan aloittaa, on tärkeää, että sinulla on selkeä suunnitelma resurssien ja työkalujen kokoamiseksi yhteen, jotta järjestelmätestausprosessi onnistuu ja sujuu ongelmitta.
Prosessi on suhteellisen monimutkainen riippumatta siitä, testaatko manuaalisesti, automaattisesti vai käytätkö molempia lähestymistapoja, joten paras tapa vähentää viivästysten ja häiriöiden riskiä testauksen aikana on tietää, mitä tarvitset ennen aloittamista.
1. Vakaa versio, joka on melkein valmis käynnistettäväksi.
Järjestelmätestaus on yksi ohjelmistotestauksen viimeisistä vaiheista, jotka tapahtuvat ennen julkaisua: ainoa testaustyyppi, joka tapahtuu järjestelmätestauksen jälkeen, on käyttäjän hyväksymistestaus.
On tärkeää, että ennen kuin aloitat järjestelmätestauksen, olet jo suorittanut muunlaista ohjelmistotestausta, kuten toiminnallista testausta, regressiotestausta ja integrointitestausta, ja että ohjelmiston rakennustyösi on täyttänyt kunkin ohjelmistotestityypin poistumiskriteerit.
2. Järjestelmän testaussuunnitelmat
Ennen kuin aloitat testauksen, laadi virallinen dokumentaatio, jossa hahmotellaan suoritettavien testien tarkoitus ja tavoitteet sekä määritellään järjestelmätestauksen aloitus- ja lopetuskriteerit.
Voit käyttää tätä suunnitelmaa hahmottelemaan yksittäisiä testiskenaarioita, joita aiot testata, tai määrittelemään odotuksesi järjestelmän suorituskyvystä.
Järjestelmätestaussuunnitelman avulla testaajien olisi voitava suunnitella ja suorittaa järjestelmätestausta helposti suunnitelmaa noudattamalla.
3. Testitapaukset
On tärkeää hahmotella testitapaukset, joita aiot testata järjestelmän testauksen aikana, ennen kuin järjestelmän testaus alkaa.
Testitapaukset eivät välttämättä ole tyhjentäviä, mutta niiden on oltava riittävän kattavia, jotta ne testaavat järjestelmän tärkeimmät toiminnalliset ja muut kuin toiminnalliset ominaisuudet ja antavat tarkan yleiskuvan järjestelmän toiminnasta kokonaisuutena.
4. Taidot ja aika
Varmista, että varaat riittävästi resursseja järjestelmätestaukseen ennen järjestelmätestauksen aloittamista.
Järjestelmätestaukseen voi kulua suhteellisen paljon aikaa, varsinkin kun sitä verrataan muihin testaustyyppeihin, kuten savutestaukseen.
Sinun on määriteltävä, ketkä tiimistäsi suorittavat testauksen ja kuinka kauan heidän on varattava aikaa ennen testauksen aloittamista.
5. Järjestelmän testaustyökalut
Järjestelmätestauksen voi suorittaa manuaalisesti tai automatisoidusti, mutta riippumatta siitä, minkälaisen lähestymistavan valitset testaukseen, on mahdollista virtaviivaistaa ja optimoida järjestelmätestauksen työnkulkuja ottamalla käyttöön työkaluja ja teknologiaa, jotka auttavat testauksen eri osa-alueilla.
Voit esimerkiksi käyttää tekoälytyökaluja joidenkin järjestelmätestausten automatisointiin tai käyttää dokumenttien hallintaohjelmistoa testauksen edistymisen ja tulosten seuraamiseen.
Järjestelmän testausprosessi
Ennen kuin aloitat, on tärkeää ymmärtää järjestelmätestauksen prosessi ja sen vaiheiden suorittaminen.
Tässä vaiheittaisessa suunnitelmassa noudatetaan aiemmin kuvattua järjestelmän testauksen elinkaarta, mutta siinä hahmotellaan yksityiskohtaisemmin järjestelmän testauksen yksittäisiä vaiheita.
Vaihe 1: Luo järjestelmän testaussuunnitelma
Luo järjestelmän testaussuunnitelma ennen järjestelmän testauksen aloittamista. Jokainen järjestelmän testaussuunnitelma on erilainen, mutta suunnitelman tulisi sisältää ainakin pääpiirteittäinen kuvaus testauksen tarkoituksesta sekä asiaankuuluvat sisään- ja uloskirjautumiskriteerit, jotka määrittävät, milloin testaus on aloitettava ja milloin testaus on päättynyt.
Vaihe 2: Testiskenaarioiden ja testitapausten luominen
Seuraava vaihe on testiskenaarioiden ja testitapausten luominen, joissa hahmotellaan tarkasti, mitä aiot testata ja miten aiot testata sen.
Sisällytä mukaan todellisia testiskenaarioita, joilla testataan, miten ohjelmisto toimii tyypillisessä käytössä, ja kerro jokaisesta kirjoittamastasi testitapauksesta yksityiskohtaisesti, mitkä ovat testin hyväksymis- ja hylkäämiskriteerit ja mikä on odotettu lopputulos.
Vaihe 3: Luo tarvittavat testidatat
Luo tarvittavat testitiedot kutakin testiskenaariota varten, jonka aiot suorittaa.
Testidata, jota tarvitset kutakin suunniteltua testiskenaariota varten, on kaikki testidata, joka vaikuttaa kuhunkin testiin tai johon kukin testi vaikuttaa.
Testidataa on mahdollista luoda manuaalisesti, tai voit automatisoida tämän vaiheen, jos haluat säästää aikaa ja sinulla on siihen resursseja.
Vaihe 4: Testausympäristön perustaminen
Seuraava vaihe on testausympäristön perustaminen valmiiksi järjestelmätestejä varten. Saat parempia tuloksia järjestelmätestauksesta, jos perustat tuotannon kaltaisen testausympäristön.
Varmista, että testausympäristösi sisältää kaikki ohjelmistot ja laitteistot, joita haluat testata kokoonpano- ja integrointitestauksen aikana.
Vaihe 5: Testitapausten suorittaminen
Kun olet perustanut testausympäristön, voit suorittaa toisessa vaiheessa luodut testitapaukset.
Voit suorittaa testitapaukset joko manuaalisesti tai automatisoida testitapausten suorittamisen skriptin avulla.
Kun suoritat kunkin testitapauksen, merkitse muistiin testin tulokset.
Vaihe 6: Valmistele vikailmoitukset
Kun olet suorittanut kaikki esitetyt testitapaukset, voit käyttää kunkin testin tuloksia laatiaksesi vikaraportteja, joissa korostetaan yksityiskohtaisesti kaikki järjestelmätesteissä havaitsemasi viat ja puutteet.
Välitä tämä raportti kehittäjille vikojen korjaamista ja korjauksia varten. Vikojen korjausvaihe voi kestää jonkin aikaa, riippuen havaittujen vikojen monimutkaisuudesta ja vakavuudesta.
Vaihe 7: Testaa uudelleen vikakorjausten jälkeen
Kun ohjelmistokehittäjät ovat lähettäneet ohjelmiston takaisin jatkotestausta varten virheiden korjaamisen jälkeen, on tärkeää testata ohjelmistorakennelma uudelleen.
Järjestelmän testausta ei pitäisi pitää loppuun suoritettuna ennen kuin tämä vaihe on läpäisty ilman virheitä tai puutteita.
Ei riitä, että oletetaan, että kaikki virheet on korjattu ja että rakennelma on nyt valmis siirtymään käyttäjän hyväksymistestaukseen.
Vaihe 8: Toista sykli
Viimeinen vaihe on yksinkertaisesti toistaa tämä sykli niin monta kertaa kuin on tarpeen, jotta vaihe seitsemän voidaan läpäistä ilman, että havaitaan mitään vikoja tai puutteita.
Kun järjestelmätesti on läpäisty ja kaikki järjestelmätestaussuunnitelmassa esitetyt poistumiskriteerit on täytetty, on aika siirtyä käyttäjän hyväksymistestaukseen ja lopulta tuotteen julkaisuun.
Manuaaliset vs. automaattiset järjestelmätestit
Muiden ohjelmistotestaustyyppien tapaan järjestelmätestausta voidaan suorittaa joko manuaalisesti ihmistestaajien toimesta tai ainakin osittain automatisoidusti ohjelmistojen avulla. Ohjelmistotestauksen automatisointi sujuvoittaa testausprosessia ja säästää aikaa ja rahaa, mutta joskus on tärkeää tehdä järjestelmätestausta myös manuaalisesti.
Sekä manuaalisessa että automatisoidussa järjestelmätestauksessa on hyvät ja huonot puolensa, ja on tärkeää ymmärtää ne ennen kuin päätät, minkä tyyppistä järjestelmätestausta haluat tehdä.
Manuaalinen järjestelmätestaus
Manuaalisella järjestelmätestauksella tarkoitetaan järjestelmätestauksen suorittamista manuaalisesti automatisoimatta osaa koko testausprosessista.
Manuaalinen järjestelmätestaus vie enemmän aikaa kuin automaattinen testaus, mutta se tarkoittaa myös sitä, että testausprosessissa hyödynnetään inhimillistä näkemystä ja arvostelukykyä.
Manuaalinen testaus yhdistetään usein automaattiseen testaukseen, jotta järjestelmätestauksen ja muunlaisten ohjelmistotestien tehokkuus ja tarkkuus voidaan maksimoida.
1. Manuaalisen järjestelmätestauksen edut
Manuaalisella järjestelmätestauksella on monia etuja, ja nämä edut selittävät, miksi monet testausryhmät jatkavat manuaalista testausta ja automatisoitua testausta myös testausskriptien automatisoinnin jälkeen.
Monimutkaisuus
Manuaalinen testaus soveltuu monimutkaisten testiskenaarioiden testaamiseen, joita ei aina ole helppo automatisoida.
Jos järjestelmätestauksen vaatimukset ovat monimutkaisia tai yksityiskohtaisia, voi olla helpompaa testata näitä skenaarioita manuaalisesti kuin kirjoittaa niille automaattisia testiskriptejä.
Tutkiva testaus
Kun automatisoit minkä tahansa ohjelmistotestin, testi noudattaa käsikirjoitusta ja testaa vain juuri niitä ominaisuuksia, joita olet ohjelmoinut testin arvioimaan.
Sitä vastoin manuaalista testausta suorittaessasi voit tutkia eri ominaisuuksia sitä mukaa kuin ne herättävät kiinnostuksesi, esimerkiksi jos huomaat, että jokin asia ei näytä ohjelmiston käyttöliittymässä siltä, miltä sen pitäisi näyttää.
Yksinkertaisuus
Kun olet kirjoittanut automaattiset testiskriptit, automaattinen testaus on helppoa. Testiskriptien kirjoittaminen vaatii kuitenkin yleensä kehitystyön asiantuntemusta, ja pienillä testausryhmillä ei välttämättä ole resursseja tähän.
Manuaalinen testaus ei vaadi teknistä asiantuntemusta tai koodauksen tuntemusta.
2. Manuaalisten järjestelmätestausten haasteet
Manuaalinen testaus tuo myös omat haasteensa. Ohjelmistotestausryhmät, jotka suorittavat ainoastaan manuaalista järjestelmätestausta ilman automaattisen testauksen elementtejä, voivat joutua epäedulliseen asemaan verrattuna ryhmiin, jotka käyttävät molempia lähestymistapoja.
Aikaa vievä
Kuten arvata saattaa, manuaalinen järjestelmätestaus on aikaa vievämpää kuin automaattinen järjestelmätestaus. Tämä on heikko kohta erityisesti silloin, kun tarvitaan ketterää testausta.
Tämä tarkoittaa, että järjestelmätestejä ei ole yhtä käytännöllistä tehdä säännöllisesti tai erittäin perusteellisesti, mikä puolestaan voi vaikuttaa tulosten luotettavuuteen ja laajuuteen.
Inhimillinen erehdys
Kun ihmiset suorittavat manuaalista testausta, inhimillisille virheille on aina tilaa. Ihmiset tekevät virheitä, kyllästyvät tai häiriintyvät, ja tämä on erityisen todennäköistä, kun tehdään toistuvia, aikaa vieviä testejä, jotka saattavat väsyttää testaajia.
Testauksen kattavuus
Manuaaliset testit eivät tarjoa yhtä laajaa kattavuutta kuin automaattiset testit.
Koska testaajat joutuvat suorittamaan manuaaliset testit itse, manuaalisesti testattaessa on mahdotonta kattaa yhtä paljon aluetta kuin automatisoidussa testauksessa, ja tämä voi johtaa vähemmän kattaviin testituloksiin.
Milloin käytetään manuaalista ohjelmistotestausta
Automaattinen testaus ei ole korvannut manuaalista ohjelmistotestausta, ja manuaalinen testaus on edelleen tärkeä vaihe järjestelmän testausprosessissa.
Manuaalinen testaus soveltuu pienemmille ohjelmistotiimeille, joilla ei välttämättä ole resursseja automatisoida järjestelmätestausta itsenäisesti, ja jopa automatisoidun testauksen käyttöön ottaneiden tiimien tulisi käyttää manuaalista testausta monimutkaisempien testiskenaarioiden tai testitapausten arvioimiseen, joissa tutkiva testaus tarjoaa lisäarvoa.
Järjestelmätestauksen automatisointi
Järjestelmätestausta on mahdollista automatisoida joko kirjoittamalla testiskriptejä itse tai käyttämällä hyperautomaatiotyökaluja ja -prosesseja, joilla järjestelmätestausprosessi voidaan automatisoida osittain tai kokonaan.
Useimmiten automatisoitu järjestelmätestaus yhdistetään manuaaliseen järjestelmätestausmenetelmään, jotta kattavuus, tehokkuus ja tarkkuus saadaan parhaaseen mahdolliseen tasapainoon.
1. Järjestelmätestauksen automatisoinnin hyödyt
Automaattisen järjestelmätestauksen suosio kasvaa osittain siksi, että automaattisia testausvälineitä on saatavilla laajalti, ja niiden avulla ohjelmistojärjestelmien testaus on helppo automatisoida.
Automaattisesta järjestelmätestauksesta on paljon hyötyä, etenkin kun se yhdistetään manuaaliseen testaukseen.
Tehokkuus
Automatisoitu testaus on manuaalista testausta tehokkaampaa, koska automatisoituja testejä on mahdollista suorittaa taustalla samalla, kun testaajat ja kehittäjät suorittavat muita tehtäviä.
Näin automatisoitua testausta on käytännöllisempää suorittaa säännöllisemmin ja vähentää tarvetta siirtää suuri määrä resursseja testaamaan sen jälkeen, kun automatisoidut testit on otettu käyttöön.
Suurempi testien kattavuus
Automatisoidut testit voivat usein kattaa suuremman osan ohjelmiston rakentamisesta kuin manuaaliset testit, mikä johtuu suurelta osin niiden suuremmasta tehokkuudesta.
Kun testaajat suorittavat järjestelmän testauksen manuaalisesti, heidän on valittava tärkeimmät testitapaukset arvioitaviksi, kun taas automaattinen testaus antaa ohjelmistotiimeille joustavuutta testata enemmän skenaarioita lyhyemmässä ajassa.
Inhimillisten virheiden poistaminen
Automaattiset testit eivät ole alttiita inhimillisille virheille samalla tavalla kuin manuaaliset testit.
Kun suoritetaan toistuvia, aikaa vieviä testejä, jotka voivat väsyttää manuaaliset testaajat, automatisoidut testit jatkavat ohjelmiston testaamista samalla nopeudella ja tarkkuudella.
Ihmiset keskittyvät myös todennäköisemmin helppojen kuin vaikeiden virheiden löytämiseen, mikä voi aiheuttaa sen, että tärkeitä mutta vähemmän ilmeisiä virheitä jää huomaamatta.
Vakioidaan testaus
Kun kirjoitat skriptin järjestelmän testauksen automatisoimiseksi, luot ohjeistuksen, jota ohjelmiston testaustyökalusi voi noudattaa.
Tämä standardoi tehokkaasti suorittamasi ohjelmistotestit ja varmistaa, että joka kerta kun suoritat testin, suoritat saman testin ja testaat ohjelmiston samojen standardien mukaisesti.
2. Järjestelmätestauksen automatisoinnin haasteet
Automaattinen järjestelmätestaaminen ei ole täydellistä, minkä vuoksi se suoritetaan usein manuaalisen testauksen rinnalla parhaiden tulosten saavuttamiseksi. Se on manuaalista testausta tehokkaampaa, mutta ei välttämättä tarjoa yhtä paljon syvyyttä tai laadullista tietoa.
Joustavuus
Koska automatisoitu testaus noudattaa aina skriptiä, ei ole mahdollista testata muita mekanismeja tai ominaisuuksia kuin ne, jotka on kirjoitettu testausskriptiin.
Vaikka tämä johtaa johdonmukaisuuteen, se tarkoittaa myös sitä, että virheet ja puutteet voivat jäädä huomaamatta, jos niitä ei ole otettu huomioon suunnitteluvaiheessa.
Resurssit
Automaattisten testien tekeminen vie aikaa ja resursseja.
Vaikka järjestelmätestausta on mahdollista automatisoida valmiilla ohjelmistoilla ja työkaluilla, useimmiten ne vaativat kuitenkin ohjelmistovaatimusten mukauttamista.
Perinteisesti automatisoitu testaus on tarkoittanut teknisten resurssien käyttämistä automatisoitujen testien kirjoittamiseen ja kunnolliseen suorittamiseen, vaikka yhä useammat työkalut, kuten ZAPTEST, tarjoavat kehittynyttä tietokonenäköohjelmistojen automatisointia koodittomassa käyttöliittymässä.
Monimutkaiset testitapaukset
Useimmissa tapauksissa ei ole mahdollista automatisoida järjestelmätestausta 100-prosenttisesti ilman manuaalista testausta.
Tämä pätee erityisesti silloin, kun on testattava monimutkaisia testiskenaarioita, joita useimmat automaatiotyökalut eivät pysty testaamaan.
3. Milloin automatisoitu järjestelmätestaus kannattaa ottaa käyttöön
Jos testaustiimilläsi on resursseja automatisoidun testauksen toteuttamiseen joko kirjoittamalla mukautettuja testiskriptejä tai käyttämällä automatisointityökaluja niiden kirjoittamiseen, automatisoitu testaus voi tehdä järjestelmätestauksesta sekä tehokkaampaa että luotettavampaa.
On kuitenkin aina tärkeää jatkaa manuaalista testausta, vaikka olisitkin varma automatisoitujen testien laadusta ja kattavuudesta, sillä automatisoitu testaus ei pysty toistamaan sitä syvyyttä ja näkemystä, jota vain manuaalinen testaus voi tarjota.
Johtopäätökset: Automaattinen järjestelmätestaaminen vs. manuaalinen järjestelmätestaaminen
Automaattinen ja manuaalinen järjestelmätestaaminen ovat molemmat tärkeitä ohjelmistokehityksen testausvaiheessa.
Vaikka pienemmät yritykset saattavat aloittaa pelkästään manuaalisella järjestelmätestauksella, koska automatisoitu testaus vaatii lisäinvestointeja tai -resursseja, useimmat testausryhmät omaksuvat yhdistetyn lähestymistavan, johon sisältyy automatisoitu testaus heti, kun se on käytännössä mahdollista.
Yhdistämällä automatisoidun testauksen manuaaliseen testaukseen testaustiimit voivat maksimoida tehokkuuden, tarkkuuden ja joustavuuden tinkimättä mistään järjestelmätestauksen tuloksista.
Parhaat käytännöt järjestelmätestausta varten
Jos haluat optimoida järjestelmätestauksen työnkulut mahdollisimman tehokkaiksi ja tarkoiksi, paras tapa tehdä se on noudattaa järjestelmätestauksen parhaita käytäntöjä.
Parhaiden käytäntöjen avulla voit varmistaa, ettet jätä mitään huomaamatta järjestelmän testausvaiheessa, ja varmistaa, että järjestelmätestit ovat aina tasaisen korkeatasoisia.
1. Suunnittele järjestelmätestit asianmukaisesti
Kaikki järjestelmätestaukset olisi aloitettava virallisella testaussuunnitelmalla, jossa hahmotellaan selkeästi testitapaukset ja testauksessa käytettävät lähestymistavat.
Virallisen suunnitelman laatiminen vähentää testauksen aikana tapahtuvien viivästysten riskiä ja estää epäselvyyksistä johtuvat häiriöt.
Sillä varmistetaan, että kaikki osapuolet tietävät, mikä heidän roolinsa on ja mistä he ovat vastuussa.
2. Laadi aina yksityiskohtaisia ja tarkkoja raportteja
On tärkeää, että järjestelmätestaus dokumentoidaan aina hyvin, sillä muuten testaajien ja ohjelmistokehittäjien ei välttämättä ole helppo toimia testien tulosten perusteella.
Laadi jokaisesta testauksesta selkeät ja perusteelliset raportit, joissa kerrotaan yksityiskohtaisesti kaikki löytämäsi virheet, näytetään tarkasti, miten virheet voidaan toistaa, ja kerrotaan, miten ohjelmiston pitäisi käyttäytyä, kun se on korjattu.
Varmista, että vikailmoituksesi ovat yksiselitteisiä ja helposti seurattavia.
3. Testaa todellisilla laitteilla
Usein testausryhmät haluavat kopioida eri laitteita testausympäristössä testaamatta ohjelmistoa eri laitteilla.
Jos rakennat ohjelmistoa käytettäväksi eri alustoilla, kuten kännyköissä, esim. Android-, iOS- ja muut tabletit, verkko- ja pöytäkoneet, ts. Windows, Linux jne., varmista, että testaat niitä näillä laitteilla, jotta voit arvioida, miten ne toimivat eri kuormituksilla tai voivatko verkkoyhteysongelmat aiheuttaa ongelmia tietyillä alustoilla.
4. Automatisoi testaus mahdollisuuksien mukaan
Parhaan tuloksen saamiseksi on yleensä parasta yhdistää manuaalinen järjestelmätestaaminen ja automaattinen järjestelmätestaaminen.
Jos et ole vielä kokeillut automatisoitua järjestelmäintegraatiotestausta, kokeile RPA + ohjelmistotestaus -työkaluja, joiden avulla voit automatisoida ainakin osan järjestelmätesteistäsi, voit lisätä kattavuutta ja tehokkuutta tinkimättä tulosten tarkkuudesta.
5. Testaa yksi ominaisuus per tapaus
Kun kirjoitat testitapauksia, keskity mahdollisuuksien mukaan testaamaan vain yhtä ominaisuutta tapausta kohden.
Tämä helpottaa näiden testitapausten uudelleenkäyttöä tulevissa testeissä ja antaa kehittäjille mahdollisuuden ymmärtää selkeämmin, miten virheet syntyvät ja mitkä ominaisuudet ne laukaisevat.
Järjestelmätestauksen tulostyypit
Kun suoritat järjestelmätestejä, on tärkeää tietää, millaisia tuloksia voit odottaa testeistäsi ja miten voit käyttää näitä tuloksia tulevan kehityksen ja testauksen pohjana.
Testaustulokset ovat tosiasiassa hyödykkeitä ja tietoja, joita saat järjestelmän testauksen avulla.
1. Testitulokset
Testitulokset sisältävät tietoja siitä, miten ohjelmisto toimi kussakin suorittamassasi testitapauksessa, sekä vertailun siitä, miten odotit ohjelmiston toimivan.
Näiden tulosten avulla voidaan määrittää, läpäiseekö kukin testitapaus vai ei, sillä jos ohjelmisto toimii tavalla, jota et odottanut sen toimivan, se tarkoittaa yleensä, että se on epäonnistunut.
2. Vikapäiväkirja
Vikapäiväkirjat ovat päiväkirjoja kaikista järjestelmän testauksen aikana havaituista virheistä ja puutteista.
Vikapäiväkirjassa luetellaan kaikki löydetyt virheet sekä muita tärkeitä tietoja, kuten kunkin virheen prioriteetti, vakavuus, oireet ja kuvaus.
Merkitse muistiin myös vian havaitsemispäivä ja muita tietoja, jotka auttavat kehittäjiä toistamaan vian uudelleen.
3. Testiraportti
Testausraportti on yleensä osa järjestelmän testauksen päättämiskriteerejä, ja se sisältää yleensä yhteenvedon suoritetusta testauksesta, GO/No-Go-suositukset, vaihe- ja iteraatiotiedot sekä testauksen päivämäärän.
Voit myös liittää mukaan muita tärkeitä tietoja testituloksista tai liittää raporttiin kopion vikaluettelosta.
Esimerkkejä järjestelmätesteistä
Järjestelmätestit on suunniteltu testaamaan järjestelmää kokonaisuutena, mikä tarkoittaa, että ne testaavat kaikki eri ohjelmistoyksiköt, jotka toimivat yhdessä järjestelmänä.
Esimerkit järjestelmätesteistä voivat auttaa sinua ymmärtämään paremmin, mitä järjestelmätesti on ja mitä sillä testataan.
1. Toiminnallisuuden testaus
Ohjelmistoinsinöörien ryhmä on kokoamassa uutta ostosovellusta, joka auttaa ruokakauppoja poimimaan ja pakkaamaan verkkotilaukset tehokkaammin.
Sovellus koostuu useista eri moduuleista, joista jokainen on jo testattu itsenäisesti yksikkötestauksessa ja testattu yhdessä muiden moduulien kanssa integrointitestauksessa.
Järjestelmätestaus on ensimmäinen kerta, kun kaikki moduulit testataan yhdessä, ja testaajat suunnittelevat testitapaukset, joiden avulla arvioidaan sovelluksen kutakin yksittäistä toimintoa ja tarkistetaan, toimivatko ne odotetulla tavalla, kun kaikki moduulit toimivat yhdessä.
2. Kuormitusaikojen testaaminen
Ohjelmistotestaajien ryhmä testaa, kuinka nopeasti sovellus latautuu eri kohdissa eri rasitustasoilla.
He luovat testitapauksia, joissa kuvataan, millaista stressiä sovellukseen kohdistuu (esimerkiksi kuinka monta käyttäjää käyttää sitä samanaikaisesti) ja mitä toimintoja ja ominaisuuksia käyttäjä yrittää ladata.
Järjestelmätestauksen aikana kuormitusajat kirjataan testausraporttiin, ja liian hitaiksi todetut kuormitusajat käynnistävät uuden kehitysvaiheen.
3. Testauskonfiguraatio
Kun rakennetaan videopeliä, jota voidaan käyttää monien eri oheislaitteiden, kuten tietokonehiiren, VR-kuulokkeiden ja pelialustan, kanssa, ohjelmistotestaajat suorittavat konfiguraatiotestauksen testatakseen, kuinka hyvin kukin näistä oheislaitteista toimii pelin kanssa.
He käyvät läpi jokaisen testiskenaarion testaamalla kutakin oheislaitetta erikseen ja yhdessä ja merkitsevät muistiin, miten kukin oheislaite toimii pelin eri vaiheissa ja onko suorituskyky jopa odotettua huonompi.
Järjestelmätestauksessa havaitut virheet ja viat tyypit
Kun suoritat järjestelmätestausta, voit suorittaa testejä, joiden avulla voit tunnistaa ohjelmistossa olevia virheitä ja vikoja, joita ei ole löydetty yksikkö- ja integrointitestauksessa.
Järjestelmätestauksen aikana on mahdollista havaita monenlaisia virheitä, joskus siksi, että ne ovat jääneet aiemmin huomaamatta, tai yleensä siksi, että ne ilmenevät vasta, kun järjestelmä toimii kokonaisuutena.
1. Suorituskykyvirheet
Järjestelmätestaus voi tuoda esiin suorituskykyvirheitä ohjelmiston nopeudessa, johdonmukaisuudessa ja vasteajoissa.
Testaajat saattavat arvioida, miten ohjelmisto toimii eri tehtäviä suoritettaessa, ja merkitä muistiin mahdolliset käytön aikana ilmenevät virheet tai viiveet. Nämä ovat suorituskykyyn liittyviä puutteita, joita voidaan pitää niin vakavina, että ne vaativat jatkokehitystä.
2. Turvallisuusvirheet
Järjestelmätestauksen aikana on mahdollista havaita tietoturvavirheitä, jotka tuovat esiin järjestelmän tietoturvakerroksen haavoittuvuuksia.
Tietoturvatestaus suoritetaan järjestelmän testausvaiheessa, ja sen avulla voidaan tunnistaa ohjelmiston salausvirheet, loogiset virheet ja XSS-haavoittuvuudet.
3. Käytettävyysvirheet
Käytettävyysvirheet ovat virheitä, jotka vaikeuttavat sovelluksen käyttöä tarkoitetulla tavalla. Ne voivat aiheuttaa käyttäjille haittaa, mikä puolestaan voi johtaa siihen, että käyttäjät hylkäävät sovelluksen.
Esimerkkejä käytettävyysvirheistä ovat monimutkainen navigointijärjestelmä tai ulkoasu, jossa ei ole helppo navigoida kaikilla alustan osa-alueilla.
Käytettävyystyökalujen avulla virheet voidaan tunnistaa testausprosessin aikaisemmassa vaiheessa, mutta ne voivat tulla esiin myös järjestelmätestauksen aikana.
4. Viestintävirheet
Tietoliikennevirheitä esiintyy, kun osa ohjelmistosta yrittää kommunikoida toisen moduulin kanssa ja virhe aiheuttaa tämän kommunikoinnin epäonnistumisen.
Jos ohjelmisto esimerkiksi kehottaa käyttäjää lataamaan uuden päivityksen, mutta kun käyttäjä napsauttaa päivityksen latauspainiketta, päivitystä ei löydy, kyseessä on viestintävirhe.
5. Virheiden käsittelyvirheet
Virheitä esiintyy joskus, vaikka ohjelmisto toimisi niin kuin sen pitäisi. Ehkä siksi, että komponenttia ei ole asennettu oikein tai että käyttäjä ei käytä sitä oikein.
Järjestelmän on kuitenkin pystyttävä käsittelemään nämä virheet oikein tavalla, joka auttaa käyttäjiä tunnistamaan ja korjaamaan ongelman.
Jos virheilmoitukset eivät sisällä riittävästi tietoa virheestä, käyttäjät eivät pysty korjaamaan virhettä.
Järjestelmätestauksen yleiset mittarit
Kun suoritat järjestelmätestausta, saatat seurata tiettyjä testausmittareita, jotta testaustiimisi voi seurata, kuinka tehokasta järjestelmätestausta on, kuinka usein virheitä löydetään ja tapahtuuko järjestelmätestausta oikeassa vaiheessa testaussykliä.
Jos esimerkiksi seuraat läpäisevien ja epäonnistuvien testien määrää ja huomaat, että suuri osa järjestelmätesteistä epäonnistuu, voit päätellä, että perusteellisempi testaus on tarpeen testausjaksoa varhaisemmassa vaiheessa vikojen ja virheiden havaitsemiseksi ennen järjestelmätestauksen aloittamista.
1. Absoluuttiset mittarit
Absoluuttiset luvut ovat sellaisia mittareita, jotka yksinkertaisesti antavat absoluuttisen luvun eikä suhdelukua tai suhdelukua.
Absoluuttiset mittarit voivat olla hyödyllisiä, mutta koska ne ovat absoluuttisia lukuja, niiden merkitystä ei ole aina helppo tulkita.
Esimerkkejä absoluuttisista mittareista ovat järjestelmätestauksen kesto, järjestelmätestauksen suorittamiseen kuluva aika ja järjestelmätestauksen aikana havaittujen vikojen kokonaismäärä.
2. Testauksen tehokkuusmittarit
Testauksen tehokkuusmittarit auttavat testaustiimejä ymmärtämään, kuinka tehokkaita niiden nykyiset järjestelmätestauksen menettelyt ovat, mutta ne eivät anna mitään tietoa järjestelmätestauksen laadusta.
Esimerkkejä testien tehokkuuden mittareista ovat läpäistyjen testien prosenttiosuus ja korjattujen virheiden prosenttiosuus.
Läpäistyt testit voivat kertoa, läpäisetkö liikaa testejä ja jätätkö sen vuoksi virheitä huomaamatta, erityisesti jos näet korkean läpäistyjen testien määrän ja korkean virheiden välttämisprosentin rinnakkain.
3. Testauksen tehokkuuden mittarit
Testauksen tehokkuusmittarit kertovat testaajille jotain heidän suorittamiensa järjestelmätestausten laadusta.
Niillä mitataan, kuinka tehokkaasti järjestelmätestit tunnistavat ja arvioivat järjestelmässä olevia vikoja ja puutteita.
Kokonaisvirheiden rajoittamisen tehokkuus on esimerkki testauksen tehokkuusmittarista, joka osoittaa testausvaiheessa löydettyjen virheiden suhdeluvun verrattuna julkaisun jälkeen löydettyihin virheisiin.
4. Testauksen kattavuusmittarit
Testauksen kattavuusmittarit auttavat testaajia ymmärtämään, kuinka kattava kattavuus on koko testattavassa järjestelmässä.
Voit esimerkiksi mitata, kuinka monta prosenttia järjestelmätesteistä on automatisoitu tai kuinka monta vaadituista testeistä on tähän mennessä suoritettu.
Vaatimusten kattavuusmittari auttaa testaajia myös seuraamaan, mikä osuus vaadituista ominaisuuksista on katettu testauksella.
5. Virheitä koskevat mittarit
Vikamittarit ovat mittareita, jotka mittaavat vikojen esiintymistä eri tavoin. Joissakin vikamittareissa saatetaan keskittyä vikojen vakavuuteen, kun taas toisissa voidaan keskittyä vikojen tyyppiin tai perimmäiseen syyhyn.
Yksi esimerkki yleisestä vikamittarista on vikatiheys, joka mittaa vikojen kokonaismäärää koko julkaisun aikana.
Virhetiheys ilmoitetaan yleensä virheiden lukumääränä 1000 koodiriviä kohti.
Järjestelmän testitapaukset
Järjestelmätestitapaukset ovat testiskenaarioita, joita käytetään järjestelmätestauksessa testaamaan, miten ohjelmisto toimii ja täyttääkö se kehittäjien, testaajien, käyttäjien ja sidosryhmien odotukset.
1. Mitä testitapaukset ovat järjestelmätestauksessa?
Testitapaukset ovat lähinnä ohjeita, joissa määritellään, mitä testataan ja mitä vaiheita testaajan on suoritettava kunkin yksittäisen tapauksen testaamiseksi.
Kun kirjoitat testitapauksia järjestelmätestejä varten, on tärkeää sisällyttää niihin kaikki tiedot, joita testaajat tarvitsevat kunkin testin suorittamiseen. Liitä mukaan kunkin testitapauksen tunnus ja tiedot siitä, miten testi suoritetaan ja mitä tuloksia odotat, sekä tarvittaessa kunkin testitapauksen hyväksymis- ja hylkäämiskriteerit.
2. Miten kirjoitetaan järjestelmän testitapauksia
Jos testitapausten kirjoittaminen on sinulle uutta, voit kirjoittaa järjestelmätestausta varten testitapauksia alla olevien ohjeiden mukaisesti. Testitapausten kirjoittaminen muunlaista ohjelmistotestausta varten on hyvin samankaltainen prosessi.
- Määrittele alue, jonka haluat testitapauksen kattavan.
- Varmista, että testitapaus on helppo testata.
- Sovelletaan asiaankuuluvia testisuunnitelmia kuhunkin testitapaukseen.
- Määritä jokaiselle testitapaukselle yksilöllinen testitapauksen tunnus.
- Sisällytä selkeä kuvaus siitä, miten kukin testitapaus suoritetaan.
- Lisää ennakkoehdot ja jälkiehdot kullekin testitapaukselle.
- Määritä tulos, jota odotat jokaiselta testitapaukselta.
- Hahmottele käytettävät testaustekniikat.
- Pyydä kollegaa vertaisarvioimaan jokainen testitapaus ennen kuin jatkat.
3. Esimerkkejä järjestelmän testitapauksista
Esimerkkitestitapausten käyttäminen voi auttaa sinua kirjoittamaan omia testitapauksia. Alla on kaksi esimerkkiä järjestelmätestitapauksista, joita testaajat voivat käyttää sovelluksen tai ohjelmiston toiminnan testaamiseen.
Ruokakaupan skannaussovelluksen hinnan vahvistaminen
Testin ID: 0788
Testitapaus: Vahvista kohteen hinta
Testitapauksen kuvaus: Testi: Skannaa tuote ja tarkista sen hinta.
Odotetut tulokset: Skannatun hinnan pitäisi vastata osakkeen nykyistä hintaa.
Tulos: Tulos: Kohde skannattiin 1 dollarilla, mikä vastaa osakkeen nykyistä hintaa.
Hyväksytty/hylätty: Hyväksytty.
Hallintaohjelmiston transaktiovasteaika alusta loppuun
Testin ID: 0321
Testitapaus: Aloitusnäytön latausajat
Testitapauksen kuvaus: Testi: Varmista, että sovelluksen latausnäyttö latautuu hyvissä ajoin.
Odotetut tulokset: Näytön pitäisi latautua enintään neljässä sekunnissa.
Tulos: Näyttö latautui 6 sekunnissa.
Hyväksytty/hylätty: Hävinnyt.
Parhaat järjestelmätestaustyökalut
Järjestelmätestaustyökalujen käyttö on yksi yksinkertaisimmista tavoista tehostaa testausprosessia ja vähentää aikaa, jonka testausryhmät käyttävät aikaa vieviin manuaalisiin tehtäviin.
Järjestelmätestaustyökalut voivat joko automatisoida järjestelmän testausprosessin osia puolestasi tai helpottaa testitapausten kirjoittamista ja testauksen edistymisen seurantaa.
Viisi parasta ilmaista järjestelmätestaustyökalua
Jos et ole valmis käyttämään suurta osaa budjetistasi järjestelmätestaustyökaluihin, mutta haluat tutkia, mitä on tarjolla, ja ehkä samalla parantaa järjestelmätestauksen tehokkuutta, hyvä uutinen on, että verkossa on saatavilla paljon ilmaisia testaustyökaluja.
Ilmaiset testaustyökalut eivät tarjoa kaikkia samoja toimintoja kuin maksulliset testaustyökalut, mutta ne voivat tarjota pienemmille yrityksille kustannustehokkaan tavan tutustua ohjelmistoautomaatioon ja RPA:han.
1. ZAPTEST FREE Edition
ZAPTEST on ohjelmistotestaustyökalupaketti, jota voidaan käyttää järjestelmätestaukseen ja muunlaiseen ohjelmistotestaukseen.
ZAPTEST on saatavana sekä ilmaisena että maksullisena yritysversiona, mutta ilmainen versio on täydellinen johdatus automatisoituun järjestelmätestaukseen pienemmille yrityksille ja yrityksille, jotka haluavat ottaa ensimmäiset askeleet kohti testausautomaatiota.
ZAPTEST voi automatisoida järjestelmätestejä sekä työpöytä- että kämmenlaitteille, ja sen avulla testaajat voivat automatisoida testejä ilman koodausta.
2. Seleeni
Selenium on yksi markkinoiden tunnetuimmista avoimen lähdekoodin testaustyökaluista.
Seleniumin ilmaisversio tarjoaa automaatiotestaustyökaluja, joita voidaan käyttää järjestelmätestauksessa, regressiotestauksessa ja vikojen toistamisessa, ja sen avulla voit luoda omia testiskriptejäsi monille erilaisille testiskenaarioille.
Se on kuitenkin yksinkertaisuuden ja helppokäyttöisyyden kustannuksella, ja se voi olla melko vaikea oppia muille kuin teknisille käyttäjille.
3. Appium
Appium on ilmainen järjestelmätestaustyökalu, joka soveltuu käytettäväksi erityisesti mobiilisovellusten kanssa.
Appiumin avulla voit automatisoida iOS- ja Android-älypuhelimilla ja -tableteilla käytettäväksi suunniteltujen sovellusten järjestelmätestauksen.
Tämä ilmainen työkalu ei sovellu käytettäväksi työpöytäsovellusten kanssa, mikä on yksi sen suurimmista heikkouksista.
3. Testlink
Jos haluat vain helpottaa järjestelmätestauksen suunnittelua, valmistelua ja dokumentointia, Testlink on loistava ilmainen työkalu, joka tekee testidokumentaation hallinnasta helppoa.
Testlinkin avulla voit helposti lajitella raportit osioihin, jotta löydät tarvitsemasi tiedot juuri silloin, kun niitä tarvitset.
Testlink on arvokas testaustyökalu riippumatta siitä, teetkö järjestelmätestausta, savutestausta tai mitä tahansa muuta ohjelmistotestausta.
5. Loadium
Loadium on ilmainen testityökalu, joka on suunniteltu erityisesti suorituskyvyn testaamiseen ja kuormitustestaukseen.
Sen keskittyminen suorituskyky- ja kuormitustestaukseen on kuitenkin merkittävä heikkous niille käyttäjille, jotka haluavat automatisoida koko valikoiman päästä päähän -testejä.
4 parasta yrityksen järjestelmätestaustyökalua
Yrityksesi kasvaessa saatat huomata, että ilmaiset testaustyökalut eivät enää vastaa tarpeitasi. Monet ilmaiset työkalut, kuten ZAPTEST, tarjoavat sekä yritysversioita että ilmaisia versioita.
1. ZAPTEST Enterprise edition
ZAPTEST tarjoaa testaustyökalustaan yritysversion, jossa on samat helppokäyttöiset ominaisuudet ja intuitiivinen käyttöliittymä kuin ilmaistyökalussa, mutta se skaalautuu paremmin suuremmille tiimeille, jotka saattavat tarvita intensiivisempää testausta tai jotka haluavat testata monimutkaisempia ohjelmistoja.
ZAPTESTin yritysversio tarjoaa rajoittamattoman suorituskykytestauksen ja rajoittamattoman määrän iteraatioita sekä ZAP-sertifioidun asiantuntijan, joka toimii osana asiakastiimiä (tämä on jo itsessään merkittävä etu verrattuna muihin saatavilla oleviin automaatiotyökaluihin).
Sen rajoittamattomat lisenssit -malli on myös markkinoiden johtava ehdotus, joka takaa yrityksille kiinteät kustannukset aina, riippumatta siitä, kuinka nopeasti ne kasvavat.
2. SoapUI
SoapUI on testaustyökalu, jonka avulla on mahdollista hallita ja suorittaa järjestelmätestejä erilaisilla verkkopalvelualustoilla ja sovellusliittymillä.
Testausryhmät voivat käyttää SoapUI:ta minimoidakseen aikaa vieviin tehtäviin käyttämänsä ajan ja kehittää perusteellisempia ja tehokkaampia testausstrategioita.
3. Testigma
Testsigma on ohjelmistotestausalusta, joka toimii valmiina. Sen avulla tuotetiimit voivat suunnitella ja suorittaa ohjelmistotestejä automaattisesti verkkosivustoille, mobiilisovelluksille ja sovellusrajapinnoille.
Alusta on rakennettu Javalla, mutta se toimii yksinkertaisella englanninkielellä kirjoitetuilla testiskripteillä.
4. TestingBot
TestingBot on suhteellisen edullinen yritysratkaisu yrityksille, jotka haluavat kokeilla tätä alaa ilman suuria rahasummia alusta alkaen. TestingBot tarjoaa testaajille yksinkertaisen tavan testata sekä verkkosivustoja että mobiilisovelluksia 3200 selain- ja mobiililaiteyhdistelmän avulla.
Siitä puuttuu suurempien Enterprise-työkalujen toiminnallisuus, mutta se on hyvä vaihtoehto yrityksille, joilla on pienempi budjetti.
Milloin kannattaa käyttää yrityksen ja milloin ilmaisia järjestelmätestaustyökaluja?
Se, valitsetko yrityksen vai ilmaisen järjestelmätestaustyökalun, riippuu tiimisi tarpeista, budjetistasi, prioriteeteistasi ja työaikataulustasi.
On sanomattakin selvää, että yritystyökalut tarjoavat enemmän ominaisuuksia ja toimintoja kuin ilmaiset työkalut, mutta pienemmille yrityksille, joiden budjetissa ei ole paljon tilaa, ilmaiset työkalut ovat loistava vaihtoehto.
Jos liiketoimintasi kasvaa tai jos huomaat, että testaustiimisi käyttää enemmän aikaa kuin haluaisit järjestelmätestaukseen ja muunlaiseen ohjelmistotestaukseen, päivittäminen yritystestaustyökaluihin ja näiden työkalujen täysimääräisen hyödyntämisen opetteleminen voi auttaa sinua skaalaamaan liiketoimintaasi vastaamaan kasvavaan kysyntään.
Käyttämällä ZAPTEST Enterprisen kaltaisia työkaluja, jotka tarjoavat innovatiivisia ohjelmisto + palvelu -malleja ja rajoittamattomia lisenssimalleja, voit taatusti kuroa umpeen teknisen osaamisvajeen ja pitää kustannuksesi kiinteinä riippumatta siitä, kuinka nopeasti kasvat ja kuinka paljon käytät työkaluja.
Järjestelmätestauksen tarkistuslista, vinkkejä ja temppuja
Ennen kuin aloitat järjestelmätestauksen, käy läpi alla oleva järjestelmätestauksen tarkistuslista ja noudata näitä vinkkejä optimoidaksesi järjestelmätestauksen tarkkuuden, tehokkuuden ja kattavuuden.
Järjestelmätestauksen tarkistuslista voi auttaa varmistamaan, että olet ottanut huomioon kaiken tarvittavan järjestelmän testauksen edetessä.
1. Ota testaajat mukaan suunnitteluvaiheeseen
Vaikka testaajat eivät yleensä työskentele ohjelmiston parissa ennen kuin kehitys- ja suunnitteluvaihe on päättynyt, testaajien on helpompi ymmärtää, miten eri komponentit toimivat yhdessä, ja ottaa tämä huomioon testauksessa.
Tämä johtaa usein oivaltavampaan kokeilevaan testaukseen.
2. Kirjoita selkeät testitapaukset
Kun kirjoitat testitapauksia, varmista, että ne ovat selkeitä ja yksiselitteisiä.
Testaajien pitäisi pystyä lukemaan testitapauksia ja ymmärtämään välittömästi, mitä on testattava ja miten se testataan.
Selitä tarvittaessa, mistä testausta vaativa ominaisuus löytyy ja mitä vaiheita järjestelmän testausprosessin aikana on toteutettava.
3. Maksimoi testien kattavuus
Järjestelmätestauksessa ei yleensä ole mahdollista saavuttaa 100 prosentin testauskattavuutta, vaikka käyttäisitkin automaatiotyökaluja.
Mitä suurempi testien kattavuus on, sitä todennäköisemmin voit kuitenkin tunnistaa ja korjata virheet ennen julkaisua.
Pyri saavuttamaan vähintään 90 prosentin testikattavuus tai mahdollisimman lähellä sitä.
4. Analysoi tulokset perusteellisesti
Analysoi jokaisen järjestelmätestauksen tulokset perusteellisesti ja raportoi virheet ja puutteet selkeästi dokumentaatiossasi.
Mitä enemmän yksityiskohtia voit antaa virheistä, sitä helpompi kehittäjien on myöhemmin jäljentää virheet.
Jos sinulla on ideoita siitä, miksi virheitä esiintyy ja miten ne voidaan korjata, liitä ne testituloksiin.
5. Mene vaatimustestausta pidemmälle
Älä vain testaa sovelluksiasi nähdaksesi, tekevätkö ne sen, mitä niiden pitäisi tehdä.
Testaa, miten ohjelmistosi toimii vaatimusten ulkopuolella, jotta näet, miten se reagoi käyttötarkoituksen ulkopuolisiin tehtäviin ja toimintoihin. Tämä voi auttaa sinua tunnistamaan virheitä ja puutteita, jotka muuten jäisivät huomaamatta.
7 virhettä ja sudenkuoppaa, joita kannattaa välttää järjestelmätestejä toteutettaessa
Kun järjestelmätestejä toteutetaan ensimmäistä kertaa, on tärkeää olla tietoinen yleisistä virheistä ja sudenkuopista, joita testausryhmät usein tekevät.
Kun tiedät, mitä nämä virheet ovat, on helppo välttää niiden tekemistä, mikä lisää oman järjestelmätestauksesi tehokkuutta ja tarkkuutta.
1. Aloittaminen ilman testaussuunnitelmaa
On tärkeää laatia yksityiskohtainen testaussuunnitelma ennen järjestelmän testauksen aloittamista.
Jos aloitat integrointitestauksen ilman suunnitelmaa, unohdat helposti joitakin testitapauksia, jotka aiot suorittaa, tai testitapauksia, jotka eivät kuulu testaussuunnitelman piiriin.
Useimmat ihmiset eivät muista testaussuunnitelman kaikkia yksityiskohtia, ellei sitä ole dokumentoitu selkeästi, ja se estää tiimejä siirtämästä sitä muille testaajille.
2. Järjestelmätestauksen laajuuden määrittelemättä jättäminen
Järjestelmätestauksessa on kyse moniulotteisesta tehtävästä, jossa testataan monia eri osa-alueita yksittäisen ohjelmiston rakentamisessa.
Riippuen kehitettävän ohjelmiston tyypistä ja siitä, mitä olet tähän mennessä testannut, järjestelmätestauksen laajuus voi vaihdella suuresti eri testien välillä.
On tärkeää määritellä testauksen laajuus ennen testauksen aloittamista ja varmistaa, että kaikki testausryhmän jäsenet ymmärtävät laajuuden.
3. Väärien positiivisten ja väärien negatiivisten tulosten huomiotta jättäminen
Väärät positiiviset tulokset syntyvät, kun järjestelmätestit menevät läpi, vaikka testiskenaariot eivät todellisuudessa toimi odotetulla tavalla.
Samoin vääriä negatiivisia tuloksia voi esiintyä, kun testi epäonnistuu, vaikka se toimii odotetusti.
Joskus voi olla vaikeaa havaita vääriä positiivisia ja vääriä negatiivisia tuloksia, varsinkin jos vain tarkastelet testituloksia perehtymättä testin todellisiin tuloksiin. Väärät positiiviset ja negatiiviset tulokset ovat erityisen todennäköisiä ja jäävät helposti huomaamatta automaattisessa järjestelmätestauksessa.
4. Testaus samantyyppisillä testidatoilla
Jos käytät useita erityyppisiä testidatoja, vaihtelemalla mahdollisimman paljon käyttämiesi testidatojen ominaisuuksia voit lisätä järjestelmätestauksen kattavuutta.
Tämä tarkoittaa, että virheitä ja puutteita jää harvemmin huomaamatta, ja se tuo lisäarvoa suorittamallesi testaukselle.
Kattaamalla erityyppisiä testitietoja saat tarkemman kuvan siitä, miten tuote käyttäytyy julkaisun jälkeen.
5. Tutkivan testauksen huomiotta jättäminen
Vaikka testaussuunnitelman noudattaminen on tärkeää, on myös tärkeää varata tilaa kokeilevalle testaukselle ja antaa testaajien kokeilla eri ominaisuuksia ja toimintoja sitä mukaa kuin he löytävät niitä testauksen aikana.
Tutkiva testaus voi usein paljastaa uusia virheitä, jotka muuten jäisivät huomaamatta, tai virheitä, jotka on jo jäänyt huomaamatta muissa testausvaiheissa.
Voit jopa ajoittaa tutkivan testauksen istuntoja järjestämällä testihilloistuntoja, joissa kaikki testaajat tekevät suunnittelematonta järjestelmätestausta tietyn ajanjakson ajan.
6. Testauksen automatisoinnin tulosten säännöllinen tarkastelematta jättäminen
Jos ohjelmistojärjestelmien testaus ja erityisesti automaattinen testaus on sinulle uutta, saatat ajatella, että voit vain käynnistää testin ja jättää sen tekemättä.
On kuitenkin tärkeää tarkistaa testiautomaation tulokset säännöllisesti ja tehdä tarvittaessa muutoksia testiautomaatiokoodiin.
Jos esimerkiksi teet muutoksia testaamaasi ohjelmistoon, niiden pitäisi näkyä automaattisten testien koodissa.
Lue automatisoidun testin tulokset huolellisesti, jotta ymmärrät kaikki testin tulokset, etkä vain hyväksytty/hylätty -tuloksia.
7. Väärän automaatiotyökalun käyttö
Nykyään on saatavilla paljon automatisointityökaluja, joista osa on ilmaisia ja osa kuukausimaksullisia.
Vaikka aloittelevat käyttäjät valitsevat yleensä avoimen lähdekoodin työkalut, on tärkeää varmistaa, että valitsemasi työkalu vastaa tarpeitasi ja tarjoaa tarvitsemasi ominaisuudet.
Esimerkiksi avoimen lähdekoodin työkalut ovat tunnetusti tunnettuja rajoitetusta toiminnallisuudestaan, ei-intuitiivisesta käyttöliittymästä ja erittäin vaikeasta oppimiskäyrästä. Sen sijaan ZAPTEST Free Editionin kaltaiset täysimittaiset testaustyökalut tarjoavat huipputason testaus- ja RPA-toiminnallisuuksia, kuten 1SCRIPT, Cross Browser, Cross Device, Cross Platform Technology, helppokäyttöisessä koodittomassa käyttöliittymässä, joka sopii sekä ei-teknisille että kokeneille testaajille.
Joskus kannattaa investoida hieman kalliimpaan, yritystason automaatiotyökaluun, jos sen tarjoamat toiminnot sopivat paljon paremmin projektiisi.
Päätelmä
Järjestelmätestaus on tärkeä ohjelmistotestauksen vaihe, jossa tarkistetaan järjestelmä kokonaisuutena ja varmistetaan, että jokainen yksittäinen komponentti toimii sujuvasti ja tehokkaasti.
Se on ohjelmistotestauksen vaihe, joka tulee integrointitestauksen jälkeen ja ennen käyttäjän hyväksymistestausta, ja se on yksi viimeisistä virallisista ohjelmistotestauksen vaiheista, jotka tapahtuvat ennen ensimmäistä julkaisua.
Järjestelmätestauksen avulla testaajat voivat tunnistaa erilaisia virheitä, kuten toiminnallisia ja muita kuin toiminnallisia virheitä sekä käytettävyysvirheitä ja konfiguraatiovirheitä.
Järjestelmätestaus on mahdollista suorittaa manuaalisesti tai automatisoida, mutta useimmissa tapauksissa on suositeltavaa käyttää hybridilähestymistapaa tehokkuuden maksimoimiseksi, mutta samalla on mahdollista tehdä tilaa tutkivalle testaukselle.
Noudattamalla parhaita käytäntöjä ja välttämällä järjestelmätestauksen yleisiä sudenkuoppia testaustiimit voivat tehdä tarkkoja ja tehokkaita järjestelmätestejä, jotka kattavat useimmat rakennuksen keskeiset osa-alueet.
Usein kysytyt kysymykset ja resurssit
Jos järjestelmätestaus on sinulle uutta, verkossa on paljon resursseja, joiden avulla voit oppia lisää järjestelmätestauksesta ja järjestelmätestien suorittamisesta.
Seuraavassa on tietoja joistakin hyödyllisistä online-järjestelmätestausresursseista sekä vastauksia joihinkin järjestelmätestejä koskeviin usein kysyttyihin kysymyksiin.
1. Parhaat järjestelmätestauksen kurssit
Järjestelmätestauksen tai ohjelmistotestauksen verkkokurssit voivat auttaa laadunvarmistusalan ammattilaisia kehittämään ymmärrystään järjestelmätestauksesta ja hankkimaan pätevyyden, joka osoittaa osaamisen.
Verkkokoulutussivustot, kuten Coursera, Udemy, edX ja Pluralsight, tarjoavat maksuttomia ja maksullisia ohjelmistotestauksen ja -automaation kursseja ammattilaisille ja aloittelijoille.
Esimerkkejä järjestelmätestauksen verkkokursseista ovat:
- Täydellinen 2023 ohjelmistotestauksen bootcamp, Udemy
- Ohjelmistotestauksen ja automaation erikoistuminen, Coursera
- Automatisoitu ohjelmistotestaus, edX
- Automaattinen ohjelmistotestaus Pythonilla, Udemy
- Liiketoiminta-analyytikko: Ohjelmistotestausprosessit ja -tekniikat, Udemy
Etsi verkkokursseja, jotka vastaavat kokemustasoasi ja sopivat budjettiisi. Jos työskentelet laadunvarmistuksen parissa, voit ehkä pyytää työnantajaasi tukemaan sinua akkreditoidulla ohjelmistotestauksen kurssilla.
2. Mitkä ovat 5 tärkeintä haastattelukysymystä järjestelmätestauksesta?
Jos valmistaudut haastatteluun tehtävään, johon saattaa liittyä järjestelmätestausta tai muunlaista ohjelmistotestausta, vastausten valmisteleminen yleisimpiin haastattelukysymyksiin etukäteen voi auttaa sinua suoriutumaan haastattelusta.
Yleisimpiä järjestelmätestausta koskevia haastattelukysymyksiä ovat muun muassa:
- Miten järjestelmätestaus eroaa integrointitestauksesta?
- Mitkä ovat automaattisen järjestelmätestauksen hyvät ja huonot puolet?
- Kuinka monta järjestelmätestauksen tyyppiä osaat nimetä?
- Miten maksimoisit testien kattavuuden järjestelmätestauksen aikana?
- Millaisia vikoja ja puutteita odotat löytyväsi järjestelmätesteistä?
Voit käyttää näitä kysymyksiä valmistellaksesi STAR-rakenteen mukaisia vastauksia ennen haastattelua ja käyttää aiempia esimerkkejä uraltasi osoittaaksesi tietämyksesi järjestelmätestauksesta ja muista ohjelmistotestauksen tyypeistä.
3. Parhaat YouTube-oppaat järjestelmätestauksesta
Jos olet visuaalinen oppija, saatat ymmärtää helpommin, mitä järjestelmätestaaminen on ja miten se toimii yhdessä muiden ohjelmistotestaustyyppien kanssa, katsomalla järjestelmätestausta käsitteleviä videoita.
YouTubessa on paljon opetusvideoita, joissa selitetään, mitä järjestelmätestaaminen on ja miten järjestelmätestaaminen aloitetaan riippumatta siitä, haluatko tehdä sen manuaalisesti vai automaatiotyökalujen avulla. Joitakin parhaita YouTube-oppaita järjestelmätestauksesta ovat muun muassa:
- Mitä on järjestelmän testaus?
- Hyväksymistestaus ja järjestelmätestaus
- Mikä on järjestelmätestausta ja miten se toimii?
- Järjestelmän integrointitestaus reaaliaikaisen esimerkin avulla
- Mitä on järjestelmätestaus ohjelmistotestauksessa?
4. Kuinka ylläpitää järjestelmätestejä
Testien ylläpito on prosessi, jossa järjestelmätestejä ja muita ohjelmistotestejä mukautetaan ja ylläpidetään, jotta ne pysyvät ajan tasalla, kun ohjelmistoon tehdään muutoksia tai koodia muutetaan.
Jos esimerkiksi suoritat järjestelmätestauksen ja löydät virheitä ja puutteita, lähetät ohjelmiston takaisin kehittäjille korjauksia varten. Testausryhmien on tällöin ehkä ylläpidettävä testausskriptejä varmistaakseen, että ne testaavat uuden ohjelmistorakennuksen asianmukaisesti, kun on aika testata uudelleen.
Testauksen ylläpito on tärkeä osa ohjelmistotestausta, ja testaajat voivat varmistaa, että ohjelmistot pysyvät kunnossa noudattamalla parhaita ylläpitokäytäntöjä.
Näihin kuuluvat:
1. Yhteistyö:
Kehittäjien ja testaajien olisi tehtävä yhteistyötä varmistaakseen, että testaajat tietävät, mitä koodin osia on muutettu ja miten tämä saattaa vaikuttaa testiskripteihin.
2. Suunnittelu:
Suunnittele testausskriptit ennen kuin aloitat testien automatisoinnin. Näin varmistetaan, että automatisoidut testit ovat aina tarkoituksenmukaisia.
3. Prosessi:
Ota ohjelmistotestauksen ylläpito huomioon suunnitteluprosessin aikana. Muista, että sinun on ylläpidettävä testejä, ja ota tämä huomioon aikataulutuksessa, testaussuunnitelmissa ja testaussuunnittelussa.
4. Mukavuus:
Päivitä kaikki testit, mukaan lukien järjestelmätestit ja terveystestit, mahdollisuuksien mukaan yhdeltä kojelaudalta.
Tämä tarkoittaa, että testien päivittäminen on paljon nopeampaa ja kätevämpää, ja se minimoi riskin siitä, että tietyn testin päivittäminen unohtuu, kun ohjelmistokehitykseen on tehty muutoksia.
Onko järjestelmätestaus white box- vai black box -testausta?
Järjestelmätestaus on eräänlaista mustan laatikon testausta.
Mustan laatikon testaus eroaa valkoisen laatikon testauksesta siinä, että siinä tarkastellaan vain ohjelmiston ulkoisia toimintoja ja ominaisuuksia. Valkoisen laatikon testauksella testataan, miten ohjelmisto toimii sisäisesti, esimerkiksi miten koodi toimii ja toimii yhdessä.
Mustan laatikon testaus ei edellytä järjestelmän sisäisen toiminnan tai koodin tuntemusta, vaan sen sijaan se edellyttää, että testaajat testaavat ohjelmistosovelluksen tuotokset ja toiminnot ja arvioivat niitä suhteessa asetettuihin kriteereihin.
Järjestelmätestaukseen kuuluu sekä toiminnallista että ei-toiminnallista testausta, mutta testaajat käyttävät mustan laatikon tekniikkaa testatakseen myös rakentamisen ei-toiminnallisia osia.
Tästä syystä järjestelmätestausta pidetään yleisesti eräänlaisena mustan laatikon testauksena.