23.11.2021Mitä on ohjelmistotestaus ja mihin ohjelmistotestausta tarvitaan?

Maailma on täynnä tuotteita ja vaihtoehtoisia palvelun tarjoajia. Miten sinä varmistat asiakaspidon? Jo yksi pettymys voi saada asiakkaan vaihtamaan sovellusta tai digitaalisten palveluiden tarjoajaa. Kuinka montaa huonosti toteutettua digitaalista palvelua olet itse käyttänyt ja miltä se tuntui?  Mitä muita seuraamuksia ohjelmistosi virheistä voi koitua? Äärimmillään kyse voi olla elämästä tai kuolemasta.

Ohjelmistotestaus on osa ohjelmistojen laadunvarmistusta ja avain varmatoimisten digitaalisten tuotteiden luontiin. Ohjelmistotestauksessa ohjelmistoa tai sen osaa ajetaan pyrkimyksenä löytää ohjelmasta virheitä. Ohjelmistotestaus on investointi, joka maksaa itsensä takaisin säästöissä sekä käytetyn ajan että rahallisten kulujen kautta mitattuna.

Tämä teksti käsittelee ja jäsentää ohjelmistotestauksen keinovalikoimaa. Tavoitteena on maalata kokonaiskuvaa testaukseen liittyvistä käsitteistä, kuten testauksen tasoista ja eri testityypeistä tiiviissä muodossa.

 

Oikein mitoitettu laatu on välttämätön edellytys menestymiselle

Oikein mitoitettu laatu on välttämätön edellytys menestymiselle perustuipa strategiasi tuotedifferointiin tai kustannusjohtajuuteen. Voit toimia proaktiivisesti varmistaaksesi tuotteesi tai palvelusi laadun. Tietoisesti laadittu testausstrategia ja testaukseen panostetut resurssit ovat hyviä mittareita koko ohjelmistokehitysprosessin kypsyydelle. Hyvä tuuri on huono business strategia.

Ohjelmiston laatu tulee testattua joka tapauksessa. Joko ohjelmistotestaus suoritetaan osana ohjelmistokehitystä tai sitten sovellus jätetään maksavien asiakkaiden testattavaksi. Bugi on huomattavasti hankalampi ja kalliimpi korjattava, mitä myöhemmässä vaiheessa kehityskaarta se korjataan.

Parhaassa tapauksessa viat saadaan kiinni jo suunnitteluvaiheessa. Esimerkiksi oma toimitusprosessimme on suunniteltu tämä tavoite mielessä. Toteutusvaiheessa korjattu bugi on 6,5 x kalliimpi kuin suunnitteluvaiheessa. Testausvaiheessa vikojen korjaaminen on jo noin 15 x kalliimpaa, mutta silti huomattavasti mukavampaa ja taloudellisempaa kuin virheellisen ratkaisun lanseeraaminen. Ylläpitovaiheeseen asti uinut virhe on huimat 100 x kalliimpi korjattava kuin suunnittelupöydälle jäänyt virhe. Julkaisuun päässyt vika on myös laajemman yleisön arvosteltavana kuin kehitysvaiheessa kiinni saadut bugit.

Käyttökokemusta haittaava vika huonontaa asiakaspitoa, heikentää brändiä ja pahimmassa tapauksessa asettaa palveluntarjoajan korvausvelvollisuuteen. Laatupuutteet ja odottamattomat korjaustarpeet torpedoivat yrityksen rutiinit sekä toiminnan ennustettavuuden ja tehokkuuden. Näihin ongelmiin saadaan ote ohjelmistotestauksen ammattilaisten avulla.

 

Mitä on ojelmistotestaus?

Ohjelmistotestaus on kokoelma erilaisia menetelmiä, joilla varmistetaan esimerkiksi:

  • Ohjelmiston odotusten mukainen ja virheetön toiminta
  • Ohjelmiston suorituskyky ja kuorman kesto
  • Ohjelmiston tietoturvan taso
  • Päivitysten yhteensopivuus vanhan koodin kanssa
  • Koodin laatu ja ylläpidettävyys (esimerkiksi yrityskaupan yhteydessä)

Parhaimmillaan ohjelmistotestaus nivoutuu osaksi ohjelmistokehitystä. Testausta tehdään sekä työn alla olevalle koodille että valmiille ohjelmistolle (tai sen osille). Osan testauksesta voivat suorittaa ohjelmistokehittäjät ohjelmointityön ohessa. Ohjelmistojen kehittäminen ja ohjelmistojen testaus ovat kuitenkin kaksi siinä määrin eroavaa toimenkuvaa, että laajemmissa ja kriittisissä sovelluksissa on käytettävä ohjelmistotestaukseen ja sen suunnitteluun erikoistuneita ammattilaisia.

Ohjelmistokehityksen eri vaiheisiin ja eri tarkoituksiin tehtäviä erilaisia testejä on kymmenittäin. Osa testaustiimin ammattitaitoa onkin ymmärtää, mitkä testit ovat apu juuri sinun laatutavoitteisiisi pääsemiseksi. On eri tapoja jäsentää testausmenetelmien kirjoa. Käytetty terminologia ja prosessit voivat vaihdella organisaatiosta toiseen. Hyvin tyypillisesti testauskäsitteiden jäsentämisessä huomioidaan eri testauksen tasot ja eri testityypit. Lisäksi testaustapoja voidaan jaotella esimerkiksi manuaaliseen ja automaattiseen testaukseen tai niin sanotun laatikkomallin mukaisesti (Black Box, White Box & Grey Box testing).

Testitasoista puhuttaessa ne voidaan jakaa neljään eri kategoriaan. Eri tasoilla viitataan suurimmasta kokonaisuudesta pienempään listattuna joko pienen ohjelmistoyksikön, osakomponentin tai koko systeemin testaamiseen.

 

Ohjelmistotestauksen tasot: Yksikkötestaus, Integraatiotestaus, Järjestelmätestaus, Hyväksyntätestaus

 

 

Eri päämääriä varten on olemassa lukuisia eri testityyppejä. Eri testityypit keskittyvät esimerkiksi kyberturvallisuuteen, ohjelmiston suorituskykyyn, muutosten yhteensopivuuteen, käytettävyyteen tai lokalisointiin.

Esimerkkejä eri testityypeistä:

  • Black Box testaus
  • White Box testaus
  • Grey Box testaus
  • Suorituskykytestaus
  • Regressiotestaus
  • Alpha testaus
  • Beta testaus
  • Saavutettavuustestaus
  • Käytettävyystestaus
  • Kuormitustestaus
  • Stressitestaus
  • Palautustestaus
  • Kyberturvatestaus
  • Systeemitestaus
  • Lokalisointitestaus

 

Ohjelmistotestaus on välttämätön osa ohjelmiston laadunvarmistusta

Ohjelmistotestaus on osa ohjelmiston laadunvarmistusta. Ohjelmiston laadunvarmistus (SQA / Software Quality Assurance) on käsitteenä ohjelmistotestausta laajempi. Ohjelmiston laadunvarmistukseen liittyvät oleellisesti esimerkiksi hyvät koodauskäytännöt, laatustrategia ja yleinen laadun kulttuuri.

Ohjelmistotestaus ei ole maksimoimista tai minimoimista vaan optimointia. Niin viallisten tuotteiden valmistaminen kuin yliprosessointi ja ylilaatu ovat molemmat lean-terminologiaa lainaten hukkaa. Hyvä ohjelmistotestaukseen erikoistunut palveluntarjoaja auttaa asettamaan riman oikealle korkeudelle. Ohjelmistotestaus on myös tasapainoilua laadunvarmistuskustannusten ja ohjelman virheettömän toiminnan välillä.

Ohjelmistotestauksen asianmukainen järjestäminen osana sovelluskehitystä tai viimeistään ennen lanseerausta on helpompi ja halvempi tapa kuin luottaa tuuriin. Jos tarvitset apua testauksen organisointiin tai toteutukseen liittyen, niin asiantuntijamme ovat parin klikkauksen päässä.

 
 

Evästeistä

Tervetuloa! Sivustomme käyttää evästeitä, jotta voimme tallentaa asetuksesi ja tarjota yksilöllisen käyttökokemuksen. Ensimmäisellä käyttökerralla sivusto luo lyhyen tekstipätkän koneellesi, johon nämä tiedot tallentuvat. Mikäli tämä ei sinulle sovi, niin voit estää evästeiden käytön selaimesi asetuksissa tai olla kokonaan käyttämättä evästeitä hyödyntäviä sivuja.

SELVÄ