Kilometrikisa ja Testimaten tiimi Poronpolun polkaisussa
31.10.2019Robocon 2021 – Robot Frameworkin uusimmat tuulet virtuaalisesti verkossa
19.3.2021Verkkokauppa putoaa polvilleen keskellä kiireisintä myyntipäivää. Tuntikirjausten tekeminen kestää kymmeniä minuutteja joka perjantai-iltapäivä. Mobiilisovellus jumittaa ja näyttää jatkuvaa latausruutua.
Suorituskykytestaus on täsmätyökalu edellä mainittujen ongelmien ennaltaehkäisemiseen. Kun palvelun käyttäjäkuorman ja liikennehuippujen piilevät pullonkaulat poistetaan hyvissä ajoin ennen julkaisua, käyttäjät pysyvät tyytyväisinä ja palvelu tuottaa arvoa omistajalleen.
Vaikka ohjelmistotestauksen ammattilainen vastaa varsinaisesta suorituskykytestauksesta,, voit palvelun ostajan ominaisuudessa varmistaa testauksen sujuvuuden muutamalla toimenpiteellä.
Tässä siis viisi vinkkiämme suorituskykytestauksen ostajalle!
1. Aseta suorituskyvylle vaatimukset jo hankkeen alussa
Palvelun suorituskyvyn varmistaminen alkaa jo ennen kuin ainuttakaan koodiriviä on kirjoitettu.
Huolimatta siitä, kehittääkö palvelua oma tiimisi vai ohjelmistokumppanisi, ja perustuuko ratkaisu valmiiseen ohjelmistotuotteeseen, käy kehittäjän kanssa riittävän tarkka keskustelu vaatimuksistasi palvelun suorituskyvylle.
Montako yhtäaikaista käyttäjää palvelulla voi olla, ja paljonko kuormaa ja liikennettä he voivat generoida? Mihin palvelun käyttöhuiput ajoittuvat ja kauanko ne kestävät? Paljonko dataa palvelussa liikkuu? Mitkä ovat toivottavat ja pisimmät sallitut vasteajat – kuinka kauan käyttäjien voi olettaa odottavan vaikkapa verkkosivun latautumista?
Kun tosielämän suorituskykyvaatimukset kirjataan ylös jo alkuvaiheessa, palvelun kehittäjä osaa varautua niihin hyvissä ajoin. Näin myös palvelun laatuun vaikuttavat tavoitteet ovat alusta asti koko tiimin tiedossa, eikä niitä tarvitse alkaa miettiä mahdollisten ongelmien ilmaantuessa.
Suorituskykyvaatimusten lisäksi ennakkoon kannattaa suunnitella se, mitä ongelmatilanteessa tapahtuu. Miten palvelu toipuu ongelmasta, mitä hälytyksiä järjestelmä lähettää ja millainen ilmoitus käyttäjälle näytetään.
Jos et tiedä, mistä keskustelu ohjelmistotoimittajan kanssa kannattaisi aloittaa, Testimate voi auttaa myös suorituskykyvaatimusten määrittelyssä.
2. Aikatauluta suorituskykytestaus osaksi hanketta
Suurin osa käytännön suorituskykytestauksesta ajoittuu tyypillisesti kehitysprojektin viimeiselle neljännekselle, kun ohjelmisto alkaa olla jo melko valmis ja sillä voidaan suorittaa kaikki tärkeimmät käyttötapaukset.
Suorituskykytestauksen kesto vaihtelee luonnollisesti projektin laajuuden mukaan, mutta yleisesti ottaen testaukselle kannattaa varata kalenteriaikaa noin neljä viikkoa.
Testauksen alussa testausasiantuntija luo testausskenaariot haluttujen käyttötapausten ja vaatimusten pohjalta. Sitten testaaja tuottaa testauksen vaatimat automaatioskriptit ja aloittaa testauksen.
Testaus pääsee parhaiten käyntiin, kun testaajan tarvitsemat tiedot ovat helposti saatavilla ja myös kehitystiimi on valmistautunut testaukseen.
3. Valmistele testauksen tarvitsema data ja pääsy järjestelmiin
Jos verkkopalvelua halutaan testauksessa kuormittaa sadoilla eri käyttäjillä tai suurella määrällä dataa, kyseiset testikäyttäjät ja -data kannattaa luoda ennen testauksen aloittamista. Testauskonsultilla ei useinkaan ole mahdollisuutta luoda testausdataa automaattisesti, ja manuaalinen tunnusten luominen vie paljon aikaa.
Keskustele siis testaajan kanssa tarvittavasta testausdatasta ja sen luomisesta ennen varsinaisen testauksen aloittamista. Näin pysytään myös parhaiten asetetussa aikataulussa ja kustannuksissa.
Mikäli testaus tehdään etäyhteyden kautta, testaajalla täytyy olla pääsy tuotekehitysympäristöön yrityksen verkon ulkopuolelta. Tämä onnistuu esimerkiksi ottamalla VPN-yhteys testaukseen käytettävälle tietokoneelle. Tarkista etäyhteyksien käyttö etukäteen IT-osastoltasi.
4. Ole käytettävissä testauksen aikana
Suorituskykytestaus ei tapahdu umpiossa, vaan se tehdään yhdessä muun tiimin kanssa. Työtä tehdään yhteistyössä asiakkaan tai ohjelmistotoimittajan edustajan kanssa. Keskustelua käydään testauksen suunnittelun sekä toteutuksen aikana, jos mahdollisia ongelmia ilmenee.
Varmista siis, että esimerkiksi projektin tunteva ja teknisesti orientoitunut projektipäällikkö tai palvelinpuolen asiantuntija on tavoitettavissa. Yhteys tiimin ohjelmistokehittäjiin nopeuttaa myös ongelmanratkaisua.
5. Valmistaudu reagoimaan löydöksiin
Parhaassa tapauksessa kuormitustestaus menee kerralla läpi ongelmitta. Joskus testauksessa ilmenee kuitenkin havaintoja, joihin kehitystiimin täytyy reagoida.
Havaittuihin suorituskykyhaasteisiin voidaan vastata tapauksesta riippuen eri tavoilla. Ratkaisuvalikoimaan kuuluvat esimerkiksi palvelinkapasiteetin nostaminen, tietokantojen optimointi tai koodin viilaus.
Korjaustoimenpiteille sekä mahdolliselle testauksen uusintakierrokselle kannattaakin varata aikaa.
Testimate on vaativan ohjelmistotestauksen konsulttitalo. Ota meihin yhteyttä niin katsotaan, kuinka voimme auttaa juuri sinua!