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!