Miten testaustaidot tekivät minusta paremman automaatiokehittäjän

By Najwa Riyaz

Jos olet testiautomaation kehittäjä tai harkitset sitä urana, oletko koskaan miettinyt, ovatko testaustaidot työssäsi välttämättömiä?

Jos olet testiautomaation kehittäjä tai harkitset uraa tällä alalla, oletko koskaan pohtinut, ovatko testaustaidot työssäsi välttämättömiä? Tämä artikkeli auttaa vastaamaan tähän kysymykseen.

Näin ”testaajan ajattelutavan” oppiminen auttoi minua kehittymään paremmaksi automaatiokehittäjäksi.

Tarinani: työskentely samanaikaisesti automaatiokehittäjänä ja testaajana

Ensimmäinen työpaikkani yliopiston jälkeen oli IBM:llä testausasiantuntijana. Olin innoissani pääasiassa siksi, että olin päässyt unelmayritykseeni. Jossain syvällä sisimmässäni tunsin kuitenkin, että jotain puuttui. Pian tajusin sen johtuvan siitä, että intohimoni oli aina ollut koodin kehittäminen opiskeluvuosinani.

Niinpä tavoitellakseni päämäärääni koodarina puhuin ensimmäisinä työpäivinäni projektipäällikölleni mahdollisuudesta osallistua testiautomaation kehittämiseen. Ilokseni hän suostui heti! Hän kuitenkin lisäsi, että minun tulisi edelleen harkita työskentelyä myös testausasiantuntijan roolissa.

Järjestely oli seuraavanlainen: työskentelin testausasiantuntijana yhden komponenttijoukon parissa ja automaatiokehittäjänä toisen merkittävän tuotekomponentin parissa.

Muutamaa päivää myöhemmin tein hämmästyttävän havainnon!

Huomasin, että testaajana toimiminen oli auttanut minua kehittämään ohjelmointitaitojani. Koodia kehittäessäni aloin ajatella kuin testaaja. Aloin pohtia testikattavuutta, useita testipolkuja, käytettävyyteen liittyviä näkökulmia, luettavuutta ja paljon muuta!

Ensimmäinen kokenut testausmentorini

Ensimmäisinä työpäivinäni sain myös mahdollisuuden työskennellä testausasiantuntijan kanssa saavutettavuustestausta käsittelevän teknisen artikkelin parissa. Artikkeli oli tarkoitus esittää kansainvälisessä teknologia-alan konferenssissa.  

Kun laadimme artikkelia aiheeseen liittyvien kokemustemme ja oppiemme pohjalta, löysin ensimmäisen testausmentorini.

Koska olin uusi testausalalla, minulla oli paljon kysymyksiä. Mentorikollegani auttoi minua kysymyksissäni ohjaamalla minua parhaalla mahdollisella tavalla. Hän suhtautui testaukseen intohimoisesti! Tuo rakkaus testausta kohtaan tarttui minuunkin!

Verkostoitumista testauksen ystävien kanssa

Arvatkaa, mitä tapahtui seuraavaksi – osallistuimme teknologiakonferenssiin, jossa artikkelimme oli valittu esitettäväksi!

Teknologiakonferenssissa tapasimme mentorini kaltaisen intohimoisen testauksen ystävien yhteisön. Ihailin sitä, miten ihmiset arvostivat testausta ja miten he suunnittelivat uransa kehittämistä. Tapasimme ihmisiä, vaihdoimme kokemuksia ja opimme testaukseen liittyviä vinkkejä ja niksejä!

Get Free Access
Get regular tech leadership wisdom for delivering better software and systems.
Get Free Access

Have an account? Log In

Kertaus

Kohtalo johdatti minut ensimmäisessä työpaikassani testauksen pariin, vaikka automaation kehittäminen oli alkuperäinen intohimoni.

Vähitellen huomasin, miten testaaminen oli auttanut minua kehittymään paremmaksi kehittäjäksi! Lopulta ymmärsin, miten ”testausajattelutapa” auttoi minua kehittämään laadukkaita automaatiotestausskriptejä.

Olin onnekas, koska sain oppia tämän näkökulman työskentelemällä samanaikaisesti testaajana ja testiautomaation kehittäjänä.

Testaa koodisi: kehity erinomaiseksi kehittäjänä

Työskennellessäni samanaikaisesti testaajana ja automaatiokehittäjänä huomasin, että kehittäjä, joka kehittää testaustaitojaan, oppii lopulta kirjoittamaan ”parempaa” koodia.

Loppujen lopuksi mitä aikaisemmin virheet havaitaan koodissa, sitä edullisempaa niiden korjaaminen on. Jos siis kehittäjänä pystyt havaitsemaan virheen ennen kuin toimitat koodin testaustiimille, säästät vaivaa.

Kun alat ajatella ihanteellisen testaajan tavoin, asetat tuotteen liiketoimintakäytön näkökulman etusijalle, mikä on erittäin tärkeää. Alat ajatella ”laatikon ulkopuolelta”.

Esimerkiksi:

Ennen kuin kehittäjät luovuttavat koodinsa laadunvarmistustiimille, heidän tulisi suorittaa hyvin suunnitellut yksikkötestit. Näin vältetään tarpeettomien virheiden päätyminen järjestelmään integrointi- tai järjestelmätasolla. 

Yksikkötestauksessa kehittäjät testaavat lähdekoodin yksittäisiä yksiköitä nähdäkseen, noudattavatko ne vaatimuksia ja toimiiko koodi tarkoitetulla tavalla.

Lisäksi kehittäjä voi osallistua integraatiotestaukseen.

Integraatiotestaus on testaamisen muoto, jossa kehittäjät testaavat toisiinsa liittyviä järjestelmiä tai koodiyksiköitä varmistaakseen, että kehyksen eri osa-alueet toimivat hyvin yhdessä, kun ne integroidaan.

Miksi kehittäjät usein sivuuttavat testaustaidot?

 Syitä voi olla esimerkiksi jokin seuraavista:

1. Aiempi uskomus siitä, että testaaminen kuuluu vain testaajille

He saattavat ajatella, ettei ohjelmistotestauksella ole juurikaan tekemistä heidän kanssaan tai ettei heillä ole juurikaan tekemistä ohjelmistotestauksen kanssa.

2. He olettavat, että heidän tulisi keskittyä vain kehyksen hiomiseen

Kehittäjät, jotka keskittyvät vain kehyksen ja dokumentaation hiomiseen ohjelmiston virheiden etsimisen sijaan, joutuvat yleensä myöhemmin ikävään yllätykseen.

Jos kehittäjä ei huomaa ”ilmeistä” virhettä ja testaaja havaitsee sen, virheen korjaaminen edellyttää aikaa koodin muokkaamiseen. Tämä ei ole toivottava tilanne.

Ja kuten tiedät – kehittäjä tuntee parhaiten itse kirjoittamansa koodin. Eikö siis olisi parasta, että hän löytäisi virheen itse mahdollisimman varhaisessa vaiheessa? Tämän seurauksena testaajat voisivat käyttää aikansa ja vaivansa tärkeämpien ja kriittisten virheiden käsittelyyn.

3. Ongelman ratkaisemisen lykkääminen sen havaitsemisen jälkeen

Kehittäjät saattavat olettaa, että virheenkorjaus on myöhemmin tehokkaampaa. Todellisuudessa virheenkorjaus on helpompaa, kun kehittäjä löytää virheen varhain.

Kun kehittäjä huomaa virheen ensimmäisen kerran, epäonnistumisen virheenkorjaus sekä virheen aiheuttaneen rivin numero näytetään epäonnistuneessa skenaariossa.

Jos virheen korjaamista kuitenkin ”siirretään” myöhemmäksi, se edellyttää virheiden tarkastelua, perusteellista virheenkorjausta ja aikaa uudelleentyöstöön.

Viisi vinkkiä testausajattelun kehittämiseen automaatiotestauksen kehittäjänä

1. Ilmoittaudu vapaaehtoiseksi testaustehtävään

Olisi hyvä ilmoittautua vapaaehtoiseksi testaustehtävään käytännön kokemuksen kartuttamiseksi. Näin kehittäjät voivat kehittää testaustaitojaan.

Ja miten voit päästä testaustehtävään?

Vastaus on yksinkertainen: etsiessäsi tällaista tehtävää voit opiskella itsenäisesti ja ymmärtää, miten tehokas testaaja ”ajattelee”.

2. Opiskele itsenäisesti

Lue, keskustele, ideoi ja esitä kysymyksiä! 

Selitän myöhemmin tässä artikkelissa, miten voit tehdä sen.

3. Verkostoidu

Työpajat ja konferenssit ovat erinomaisia paikkoja löytää testausalan asiantuntijoita. Voit keskustella siellä tärkeimmistä ideoistasi ja huolenaiheistasi, ja olen varma, että löydät sieltä jonkun, joka voi auttaa sinua.

4. Etsi mentori

Kuten aiemmin mainitsin, olin onnekas löytäessäni mentorin, joka sai minut rakastamaan testausta. On erittäin arvokasta löytää testauksesta innostunut mentori, joka ohjaa sinua.

5. Ole ennakkoluuloton ja kuuntele automaatiotestaajiesi palautetta

Tulee tilanteita, joissa automaatiokoodiasi suorittavat testaajat kohtaavat ongelmia ja kertovat huolenaiheistaan. Kuuntele heitä myönteisesti ja toimi ehdotusten mukaisesti, jos koet niiden olevan perusteltuja.

Toiset testaajat avaavat uusia näkökulmia ajatteluusi ja auttavat lopulta sinua parantamaan tapaasi kirjoittaa koodia automaatiotestausta varten.

Miten voit opiskella testausta itsenäisesti?

More Articles

Lue blogeja ja tutkimusartikkeleita

Lue paljon testauksesta ja harjoittele oppimaasi. Olemme onnekkaita eläessämme aikakaudella, jolloin kaikki tieto on saatavillamme internetissä.

Voit lukea blogeja ja jopa tutkimusartikkeleita saadaksesi laadukasta oppimateriaalia. Voit myös jakaa oppimaasi!

Osallistu seminaareihin ja työpajoihin sekä hanki sertifikaatteja

Voit osallistua testausta käsitteleviin seminaareihin, työpajoihin ja konferensseihin. Ne ovat erinomaisia paikkoja oppia, jakaa tietoa ja ideoida. Lisäksi tapaat ihmisiä, jotka suhtautuvat testaukseen intohimoisesti.

Voit myös hankkia testaussertifikaatteja, kuten ISTQB- ja CSTM-sertifikaatin, sekä muita vastaavia sertifikaatteja. Näin opit testausmenetelmiä, työkaluja, vinkkejä ja tekniikoita ymmärtääksesi testauksen maailmaa kokonaisuudessaan.

Yhteenveto

Testaajan ajattelutapa sekä testausmenetelmien, työkalujen, vinkkien ja tekniikoiden tuntemus ovat välttämättömiä, jotta voi menestyä automaatiotestauksen kehittäjänä. Jokaiselle kehittäjälle on hyödyllistä ymmärtää, miksi, milloin ja miten testataan.

Kun kehitystiimi testaa koodinsa tehokkaasti ennen sen toimittamista QA-tiimin testattavaksi, tiimin toiminta paranee huomattavasti. 

Tämä muutos hyödyttää kaikkia. Kehittäjät voivat julkaista laadukasta koodia, ja testaajat voivat keskittyä kriittisten virheiden löytämiseen, jotka kehittäjät voivat korjata myöhemmin.

Lopputuloksena asiakas saa korkealaatuisen tuotteen.

Kaikki tämä on mahdollista oppimalla lisää testauksesta, vaikka olisitkin kehittäjä. Jos et ole vielä aloittanut, älä huoli – koskaan ei ole liian myöhäistä oppia!  Aloita tutustumalla podcast-kirjastoomme! Tässä yksi sinulle valitsemamme jakso: ITSENÄISEN AUTOMAATION KEHITTÄMINEN JA MILTÄ SE NÄYTTÄÄ (BERTOLD KOLICS MABLILTA)

Aiheeseen liittyvää luettavaa: AUTOMAATION PARHAAT KÄYTÄNNÖT DIGITAALISESSA MUUTOKSESSA

Najwa Riyaz
Najwa Riyaz is an experienced automation developer, business analyst, tester, and project manager. She has worked with clients across multiple sectors including banking, travel/transport, and storage management. She is passionate about traveling around the world and enjoys photography.

You may also like