Monday, December 15, 2008

Seminar: tarkvara automatiseeritud testimine - kokkuvõte

15. detsembril 2008 toimus Eesti Testijate Liidu eestvedamisel tarkvara testimise automatiseerimist käsitlev seminar. Sel korral oli meie lahkeks võõrustajaks Swedbank.

Sellest lähtuvalt algaski sisukas õhtu võimalusega kuulata-vaadata-arutada võõrustajate kogemusi testimise automatiseerimise vallas. Marek Kusmin ja Aadu Adok Swedbank'i elektrooniliste kanalite valdkonnast tutvustasid oma valdkonna arendustestimise automatiseerimist ning andsid põhjaliku ülevaate ka agiilsest tarkvaraarendusest ning testimisest selle kontekstis. Seejuures on oluline eristada arendajate, testijate ning kliendi tegevusi - kõigil on oma kindel roll kvaliteetse tulemi loomisel.

Et teooria ja praktika oleksid tasakaalus, siis tutvustas järgmiseks Harles meile TPI (Test Process Improvement) mudeli ja testimise automatiseerimise suhteid. Kõige olulisem on seejuures ehk silmas pidada, et edukas testimise automatiseerimine põhineb hästi korraldatud testimisprotsessil, sealhulgas oskusest disainida head testid. Ehk lühidalt - kaose automatiseerimisega saavutame ainult väledama kaose.

Olles ära kuulanud vahepõike teooriasse, tutvustas ETLi liige Anton Šiškov üht võimalikku viisi testikoodi haldamiseks ja seda, kuidas tagada modulaarne ja hästi hallatav testikood.
Siinkõneleja arvates oli Antoni ettekanne hea näide eelnevalt tutvustatud teooria rakendamise kohta: testikood peab juba algama süstematiseeritud mõtlemisest, sest ainult läbimõeldud ning modulaarne testidisain tagab hästi hallatava ning võimalikult suures osas taaskasutatava testikoodi.

Kui planeeritud ettekanded olid kuulatud, avanes võimalus diskussiooniks, mida ka agaralt kasutati. Arutlusteemasid jätkus nii agiilse arenduse, testimisprotsessi ja selle parendamise kui ka testivahendite kohta.

Kokkuvõtlikult võib öelda, et seekordne seminar täitis oma eesmärgi isegi kahekordselt - lisaks huvitavale arutelule automaattestimise osas saime osa ka praktikute kogemusest agiilses tarakvaraarenduses ja -testimises.


Täname Swedbank'i elektrooniliste kanalite arenduse esindajaid ja kõiki osalejaid sisuka diskussiooni eest!

Järgmisel seminaril jaanuaris räägime juba sellest, kuidas testida tarkvara vastavust mittefunktsionaalsetele nõuetele.

Sunday, December 14, 2008

Muljeid ISTQB Test Managament koolituselt

Juhtus siis nii, et eelmise nädala pühapäeval (7. detsembril) võtsime Magnusega ette tee Londonisse, et seal viis päeva teadmisi omandada ja väljamaa kolleegidega tutvust teha. 8-12. detsembril toimus ISTQB Advanced level koolitus Test management ja Test Analysis valdkonnas. Järgnevalt tahangi välja tuua mõned olulisimad punktid, mis on minu meelest olulised.
Faktid
Koolitaja: Grove Consultants (Clive, Mark, Julie, Lloyd). Kogenud praktikud, sagedased esinejad mitmetel testimisalastel konverentsidel (nt. EuroSTAR, STAREast, STARWest jne.). Pikaajaline taust koolituste läbiviimisel ISEB erinevatel tasemetel ja ISTQB Foundation level-l.
Toimumise koht: London, Thistle Marble Arch hotell. Väga mugav, hea teeninduse ja söögiga koht. Kuna koolitus toimus seal, siis sai ka seal ööbitud. Üks olulisimaid asju on toa valgustus ja selle hotelli toa valgustus oli väga hea. Vabalt võis lugeda nii voodil lesides kui ka laua taga. Kes hotelli hindu vaadates ära ehmatab, siis võite end rahustada sellega, et 2 inimest ühes toas on sama hinnaga, kui 1 inimene ühes toas. Kuna hotell asus kesklinnas ja Hyde parki vahetus läheduses, siis oli väga mõnus end peale pingsat päevatööd veidike õhutada ja pargis jooksmas käia.
Koolitus ise: tegemist on väga uue koolitusega. Akrediteeritud koolitajaid on hetkel veel vähe. Nt. Grove on minu teada teine firma UK-s, kes seda õigust omab ja neile oli see esimene koolitus ISTQB Test Management ja Test Analysis osades. Koolitus toimus 2-päevase Core-moodulina, millele järgnes 3-päevane spetsialiseerumine. See on väga mugav, kui on soovi end mitmes valdkonnas arendada. Piisab korra Core mooduli läbimisest ja edaspidi saab ainult spetsialiseerumismooduleid võtta.
Osalejad
Väga erineva taustaga: huvitavamatest 'firmadest' võib välja tuua NATO ja Capgemini (üks suurimaid testimisalaseid teenuseid pakkuvaid firmasid maailmas). Väljastpoolt UK-d pärit osalejad viisid enamuses ise ISTQB Foundation level koolitusi läbi.
Meenutusi koolitusest
Keskendun siin Test Management moodulile.
Kogu vajalik teooria osa on kirja pandud ISTQB Foundation level ja ISTQB Advanced level Syllabuses. Olulisimad teemad, mida Test Management-s käsitleti, olid:
a) testimisalane dokumentatsioon;
b) testimistulemuste analüüs ja raporteerimine vastavalt info tarbijate huvidele;
c) riskide hindamine ja maandamine;
d) ressursi planeerimine.
Teadmiste omandamine toimus läbi teooria ja praktiliste ülesannete, milleks oli nii iseseisev töö kui grupitöö. Tulemused analüüsiti läbi ja koolitajad esitasid ka enda nägemuse. See, mida antud teemadel teada sai, on tõesti muljetavaldav - võid enda arvates head tööd teha ja siis koolitusel selgub, et oled redeli esimesel astmel. Väga palju on veel arenguruumi. Ühe näitena võib välja tuua just selle, kuidas panna kokku ja presneteerida testimisega seotud infot. Lihtne märksõna: graafikud!
Meenutusi eksamist
Aega 2 tundi + 20min. neile, kellel inglise keel pole emakeel. Max 100 punkti, 65 küsimust, küsimused vastavalt raskusastmele 1,2 ja 3-punktised. Küsimused põhinevad stsenaariumitel (olukorra kirjeldus, kokku oli neid umbes 4-5).
Täna ma ei oska ennustadagi, kuidas eksam läks. Küsimused olid enamuses suhteliselt keerulised, valikvastustena (vastavalt ülesandele pidi valima 1-4 variandi vahel). Paljudes küsimustes pidi valima nt. 4 parimat 7 võimaliku seast jne. Praktilised kogemused riskide analüüsimisel ja maandamisel on kindlasti kasuks. Nt. hinnata lennuki juhtimissüsteemi projektiriske ja tuua neist välja 3 olulisimat on ühest küljest lihtne, sest safe critical süsteemide testimist mõnevõrra käsitleti, samas on suht keeruline ära arvata, mis küsimuse koostaja aspektist olulisimad on.
Kokkuvõte
Minu jaoks oli tegemist väga väärtusliku koolitusega. Kavatsen saadud kogemusi kindlasti ära kasutada igapäevases töös ja ka ETL tegemistes. Kõigile neile, kes sel teemal eneseharimisest huvitatud on, soovitan enne koolitusele minekut syllabus-ga tutvuda ja saadud teadmisi rakendada igapäevases töös juba enne võimalikku koolitust. Ja miks mitte luua Test management workgroup ETL-s, et üheskoos teadmiste redelil ülespoole sammuda!

Tuesday, December 2, 2008

Mõtteid EuroSTAR-i mõttekojast

Läinud reedel võttis seltskond aktiviste ette teekonna Aqris Software kontorisse, kus Mart meid vastu võttis ja lahkelt kostitas. Külastuse eesmärgiks oli siiski kuulata Raivo muljeid EuroSTAR-l kuuldust-nähtust ja sellele oma vaatenurgast hinnang anda. Olles ise eelnevalt kolmel korral EuroSTAR-l osalenud, oli ette aimata, et tulemas on huvitav õhtupoolik.
Omast kogemusest võin öelda, et peale nelja päeva konverentsil on tagasi tulles väga raske vastata küsimustele nagu "Noh, said nüüd targaks?" või "Mis head teada said?". Samas on vägagi loogiline, et arvestades konverentsi hinda sealt lausa peab midagi väärtuslikku kaasa haarama. Olgu selleks siis mõni uus idee, mida saab kohe realiseerima hakata, või lihtsalt kinnitus sellele, et liigud õiges suunas. Olen endale pannud nö. normiks saada igalt külastatud ürituselt vähemalt kolm nimetatud kriteeriumitele vastavat ideed.
Järgnevalt toon välja mõtted, mida sain antud ürituselt.
Esiteks. See, kuidas me testime, ja kui motiveerituna me end tunneme, sõltub ainult meist endist. Me võime teha seda igavalt ja samas väga huvitavalt. Exploratory testimise propageerijate vaatenurgast lähtudes oli nende meelisviis nö. 'hele tulevik', kus põhiliseks märksõnaks on loomingulisus. 'Tumeda tulevikuna' nähti pingsat teooriast ja tehnikatest kinnipidamist, mis kõik testijad ühesuguseks pidavat muutma. Mida sellest arvata? Maailm ei ole ainult must ja valge, enamuses on siiski hallid toonid (kui järgida must-valget skaalat). On väga oluline, et me ei võtaks ühte konkreetset teooriat absoluutse tõena, vaid omades laia kogemuste ja teadmiste pagasit, oskaksime vajalikul momendil valida just õige lähenemisviisi. Keegi meist ei taha ju sõita lennukiga, mille tarkvara on testitud ainult loomingulisest vaatenurgast. Teisest küljest ei saa internetipanga kasutusmugavuse kohta rangete testimistehnikate abil ka midagi asjalikku öelda.
Teiseks. Mõelgem enne testima asumist, miks me seda teeme. Mis on see lisandväärtus, mida me oma klientidele pakume? Kas lihtsalt sõnake 'OK', mis väljendab meie arvates tarkvara valmisolekut toodangukeskkonda installeerimiseks? Või on see ülevaade tarkvara vastavusest kirjalikult dokumenteeritud nõudmistele? Või hoopis midagi uut selle kohta, kuidas tarkvara saab kasutada ja kuidas see võiks kliendile sobida? Tuli meelde vanasõna, et seitse korda mõõda, üks kord lõika. Kas just seitse korda mõõtma peab, aga enne lõikamist peame igal juhul teadma, miks me midagi teeme, ja mis on lõpptulemus. Motivatsioonile aitab kaasa ka see, kui teame, mis otsuseid klient meilt saadud info alusel teeb. Kui hiljem näeme, et sellest kasu oli, on ka testimise vajalikkus selgelt mõistetav.
Kolmandaks. Milline näeb välja testija roll tulevikus? Oleme harjunud mõtlema, et ühes õiges tarkvaraprojektis on esindatud projektijuht, analüütik, arendaja, testija ja kui hästi mõelda, siis leiab mõne vajaliku rolli veel. Siiski, järjest enam tulevad kasutusele agiilsed arendusmetoodikad ja enam ei ole võimalik eristada nö. puhtaid rolle. Pigem suudavad projektis osalejad teisi teatud määral katta ja vajadusel on võimalik rohkem jõudu suunata sinna kuhu vaja. Juhtivat rolli selles tegevuses etendab vastava ala kõige paremini tundev projektirühma liige. See viitab ka sellele, et testija ei saa olla ainult persoon, kes arenduse lõppfaasis funktsionaalsuse ekraanil läbi klikib, vaid heade tehniliste teadmistega spetsialist, kes testimist väga hästi tundes, suudab mitte vigu ainult võimalikult kiiresti peale nende tegemist leida, vaid analüüsi käigus asjalikke küsimusi küsides ja riske analüüsides suisa ennetada. Vähetähtis ei ole ka teiste projektirühma liikmete juhendamise oskus ning suutlikkus oma tegevusplaani põhjendada.
Mida kokkuvõtteks öelda - on, mille üle mõelda. Liiga tihti langeme laiskuse ohvriks ja pakume oma klientidele ainult seda, mida meilt küsida osatakse. Või teisest küljest - tutvudes mõne uue teooriga, hakkame seda kiiresti ellu viima mõtlemata sellele, mis kasu see kokkuvõttes annab. Hoidkem oma silmad ja kõrvad tahti, mõelgem selle peale, mida ja kuidas teeme. Ja teeme seda nii, et oleks Fun! Head testimist!

Tuesday, November 25, 2008

Workshop teemal "EuroSTAR: The Future of Software Testing"

Selleaastane EuroSTAR toimus ühes kenas väikeses Hollandi linnas nimega Haag. Konverentsi peateemaks oli "The Future of Software Testing" ehk siis läbivaks teemaks oli: Mis meist, testijatest, tulevikus saab?

Selles küsimuses jagunes testijate kogukond kaheks koolkonnaks. Ühed kummardasid mõõdetavat, korratavat ja reglementeeritud testimist ning teised loomingulist, uurivat ja pidevalt küsimusi esitavat testimist. Argumendid olid veenvad mõlemal poolel (lähemalt neist workshopil), kuid isiklikult arvan, et tõde, nagu ikka, on kuskil seal vahepeal.

Testimist mõjutab tugevalt see, kuidas tooteid arendatakse ning seega olid konverentsil luubi all erinevad arendusmeetodid. Märksõnadest tooks ära Agiilne arendus (koos Exploratory testing'uga), SOA ja Model-based Testing, millest üheks vastasseisu paariks näib kujunevat Model-based testing ja Exploratory testing.
Reedel (28. november) toimuval workshopil annangi lühiülevaate mainitud teemadest ning pööran põhilise tähelepanu mulle isiklikult sümpatiseerinud testimise tuleviku nägemusele: Exploratory testing.

Loodan teid kõiki workshopil kohata!

Wednesday, November 5, 2008

Kuidas hinnata testija töö väärtust? Selles on küsimus (I)

Nagu Urmo eelnevas postituses kirjutas, oleks hea aruteludele järgnevalt teha kokkuvõtteid ning sõnastada iseenda ja teiste jaoks kõige olulisemad järeldused. Teen sellega ise kohe algust ning soovitan sama ka teistele!

Üks minu eesmärkidest workshopile tulles oli saada selgust ning teiste osalejate arvamusi teemal, kuidas testija töö headust hinnata eelkõige "ette", juba testimise protsessi käigus - enne kui ilmnevad mingid tagajärjed toodangus. Antud infot vajab hädasti näiteks testijuht, kes projekti käigus peab hoidma silma peal testijate töö kvaliteedil ning vajadusel suunama testijaid paremini testima (oluline on ju ikkagi tulemus mitte lihtsalt töö ärategemine!). Lihtsad mõõdikud, näiteks leitud vigade arv ei ütle tegelikult palju selle kohta, kui palju ja kui kriitilisi (!) vigu veel leidmata võib olla. Etteruttavalt ütlen, et sellele küsimusele ei saanud ma päris aktsepteeritavat vastust ka arutelu käigus.

Siiski sõnastaksin enese jaoks kõige kasulikumad ja kasutatavamad järeldused meie arupidamisest järgnevalt:

1. Testimise väärtust on ilmselt küllalt edukalt võimalik hinnata tagantjärele (pärast vigade leidmist arenduse käigus või toodangus) - tuleb kokku arvutada kõigi vea haldamise ja parandamisega seotud inimeste töötunnid (alustades helpdeskist, lõpetades arenduse, kordustestimise ja toodangusse panemisega). "Pehmete" kulude nagu inimeste (klientide ja arendusega seotud) närvid, kahjud mainele, saamata jäänud tulu mõõtmine ei pruugi olla nii lihtne, kuid ka sel juhul on meetrika kasutatav.

2. Väärt testija puhul on oluline oskus valida konkreetsesse arendusolukorda sobiv lähenemine (plaanist, sh testimise maht, meetodite ja vahenditeni) ning osata seda usutavalt põhjendada. See annab kindlust, et testija on professionaal ja olulised aspektid saavad piisavalt testitud. Eellest lähtuvalt on info, mis on testija töö tulemiks, kvaliteetne ning selle põhjal on võimalik teha õigeid otsuseid.
Kui järele mõelda, siis tegelikult selle järgi saab mingil määral hinnata testija töö headust ka "ette". See hindamine aga on pigem subjektiivne, kui mitte öelda intuitiivne.

Igal juhul püüan edaspidi antud järeldusi ka praktikas testida ja soovitan seda teistelegi huvitatutele - see tagab, et mõne aja pärast saame selle teema juurde jälle tagasi tulla. Sel korral aga kogemuse võrra rikkamana.

Head testimist!

Toimus esimene workshop teemal "Kuidas hinnata testija töö väärtust?"

Teisipäeval, 4. novembril toimus esimene Eesti Testijate Liidu liikmetele mõeldud workshop, kus püüti selgust saada testija töö väärtusest.

Testija tööd ja selle kvaliteeti on tihti keerukas hinnata. Küllap me seetõttu olemegi kõik kuulnud kahtlusi - "testimine ei tee tulemit paremaks - pärast testimise lõpetamist on tulem ikka sama vigane/korrektne kui enne testimist", "tagantjärele toodangus ilmnevate vigade lugemine ei ole meetrika vaid tagantjärele tarkus" jne. Kuid mis ikkagi on see, mis testimise väärtuslikuks teeb ning kuidas seda nii enese kui teiste jaoks mõõdetavatesse raamidesse panna?

Workshopil oli esindatud 9 liiget. Arvatavasti pani iga osaleja midagi uut ja kasulikku endale kõrva taha ning suutis workshopi käigus oma olemasolevaid mõtteid korrastada. Loodetavasti saame siin samas blogs peatselt lugeda worshopist inspireeritud mõtteavaldusi testijate töö väärtustamise teemal.

Saime üldjoontes kokku lepitud ka järgmise worksopi teema, milleks on „Testimise automatiseerimine - mis juhul, mis ulatuses ning kuidas“. Järgmine Workshop toimub detsembri alguses, koht ja täpne aeg selguvad paari nädala jooksul.

Sunday, October 26, 2008

Tere tulemast Eesti Testijate liidu blogisse

Eesti Testijate Liit (ETL) asutati 31.märtsil 2008 testimisest ning sellega seonduva informatsiooni jagamisest huvitatud eraisikute poolt. ETL-i missiooniks on teadvustada testimise kui distsipliini olemust ning aidata kaasa erialase oskusteabe levitamisele ja kompetentside arendamisele. Täpsem info on leitav aadressilt http://www.testijateliit.ee/

Oma veebipäeviku käivitame koondamaks testimisalaseid mõtteavaldusi ning pakkumaks keskkonda testimisteemadel arutlemiseks. Veebipäeviku kaudu plaanime hakata andma ülevaadet ETL-i tegemistest ning testimisalastest üritustest Eestis ja välismaal.


Siin võivad sõna võtta nii liidu liikmed kui ka kõik teised valdkonnast huvitatud. Testimise või tarkvaraarenduse kvaliteeditagamise teemalisi arvamusavaldusi blogis avaldamiseks ootame aadressile blog@testijateliit.ee.

Ootame aktiivset kaasalöömist!

Eesti Testijate Liidu juhatus