Author: ohjelmistotestaus

  • Prosessien wänkkäyksen työjärjestys

    Prosessien wänkkäyksen työjärjestys

    Minulla lyö aina tyhjää kun näen testauksesta laaditun prosessikaavion. Erityisesti siinä tilanteessa, kun kaavio on ensin laadittu ja sitten se pitäisi saada toteutumaan.

    Tämä pitäisi nyt viedä käytäntöön

    Ei onnistu. Yleensä kaavio on laadittu arjesta vieraantuneesta ajattelusta tai testaukseen ostetun työkalun rajoitteista käsin. Testauksen työtapojen virittäminen tapahtuu vaarallisen usein mallilla “ylhäältä alas”.

    Käsikirjoitin toimivamman tavan.

    1. Valitse projekti.
    2. Tee hypoteesi paremmista työtavoista yhdessä projektin kanssa.
    3. Tehkää lyhyt testi. Todista teoria käytännössä.
    4. Jos toimii, monista muihinkin projekteihin.
    5. Jos ei toimi, tuunatkaa teoriaa ja testaa uudestaan.

    Alhaalta ylös -malli toimii lähes poikkeuksetta paremmin ja lisäksi jengikin on mukana muutoksessa.

    Wänkkäys on aina mukavampaa, kun käärii hihat ja alkaa hommiin. Visiointi on vain vaatimaton korvike.

  • Robot Framework, wxPython & OSX

    Robot Framework, wxPython & OSX

    NOTE: For the english version. See below.

    Olen pinttynyt Mäkkimies. Myynyt sieluni jo vuosia sitten, voisi joku sanoa.

    Halusin Robot Frameworkin ja asensin ohjeen mukaan. Mutta RIDE toimii helposti vain wxPythonin versiolla 2.8.12.1. Turhauduin, sillä virallinen wxPythonin paketti ei OSX:llä edes asennu. Sanoo, että paketti on vahingoittunut. ARGH!

    Kävi ilmi, että OSX:n pakettimanageri on muuttunut eikä tue enää vanhoja filejä. Onneksi pgk -filen voi paketoida uudestaan. Oheisella videolla pääsin purkamaan tuntojani ja lupasin laittaa blogiin ohjeen homman hoitamiseksi komentoriviltä, joten here we go.

    In case you’d prefer english: Robot Framework paired up with RIDE is easy to install on OSX by following the original installation instructions. There is just one problem that has not been documented. wxPython 2.8.12.1 is a component that is a must to run RIDE. New versions won’t do.

    Latest OSX does not support old .pkg packages to install the necessary wxPython and the file needs to be repackaged to succeed. You can either download a file I have re-packaged or do it yourself by following these instructions.

    DOWNLOAD HERE

    This is how you repack a .pkg file on command line with OSX:

    #Find your way into a directory of your choosing and follow these steps.
    $ mkdir repack_wxpython
    $ cd repack_wxpython

    #Now you place the original .pkg -file of your choosing into the repack_wxpython directory on your computer.
    $ mkdir pkg_root
    $ cd pkg_root
    $ pax -f ../wxPython2.8-osx-unicode-universal-py2.7.pkg/Contents/Resources/wxPython2.8-osx-unicode-universal-py2.7.pax.gz -z -r
    $ cd ..
    $ mkdir scripts
    $ cp wxPython2.8-osx-unicode-universal-py2.7.pkg/Contents/Resources/preflight scripts/preinstall
    $ cp wxPython2.8-osx-unicode-universal-py2.7.pkg/Contents/Resources/postflight scripts/postinstall
    $ rm -r wxPython2.8-osx-unicode-universal-py2.7.pkg
    $ pkgbuild --root ./pkg_root --scripts ./scripts --identifier com.wxwidgets.wxpython wxPython2.8-osx-unicode-universal-py2.7.pkg

    #And this is what you should see as an output from the terminal.
    pkgbuild: Inferring bundle components from contents of ./pkg_root
    pkgbuild: Adding top-level preinstall script
    pkgbuild: Adding top-level postinstall script
    pkgbuild: Wrote package to wxPython2.8-osx-unicode-universal-py2.7.pkg

  • Antti Niittyviita

    Antti Niittyviita

    Jos viisari ei värähdä työsi tulosten äärellä, onko sillä arvoa?

    Toimitusjohtaja, testausguru ja kirjoittaja Antti Niittyviita uskoo, että paska softa on vakava mielenterveysuhka. Se on sitä sekä asiakkaille, että tekijöille. Suomeksi sanottuna testaajan työ on siis mielenterveystyötä.

    Työnsä Antti tekee metsästämällä bugeja Prove Expertise Oy:ssä ja jakamalla ohjelmistotestauksen ilosanomaa ohjelmistotestaus.fi -blogissa. Testaukseen Antti suhtautuu intohimoisesti ja ehkä juuri siksi mies on valittu myös vuoden testaajaksi.

    Vuosien varrella Antti on tavannut yli 1000 organisaatiota ja voi siksi sanoa suurella varmuudella, että puheet “parhaista käytännöistä” ovat pötyä. Se on sama kuin kysyisi shakkimestarilta, mikä on maailman paras siirto?

    Nykyisin Antti kouluttaa satoja asiantuntijoita vuodessa kohti kestäviä tasonkorotuksia. Tulisitko sinäkin mukaan?

  • Jussi Niittyviita

    Jussi Niittyviita

    Jussi kouluttaa testaustyöstä arvokkaampaa

    Jussi Niittyviita on testausprofeetta. Hänen ristiretkensä tavoitteena on varmistaa, että softatuote palvelee bisnestarkoitustaan. Oletko koskaan ihmetellyt, miksi testaajat tekevät mitä he tekevät? Ymmärrätkö, mitä testaustulokset sinulle tarkoittavat ja mihin kirjoittamattomiin arvoihin ne perustuvat? Oletko tuijottanut punaisia ja vihreitä prosentteja niin kauan, että näet kaiken harmaana ja viet projektit loppuun sormet selän takana ristittynä? Ääritilanteissakin Jussilla on kirkas visio siitä, miten testaus tulee hoitaa.

    Testauslaboratoriossa työskennellessään Jussi on päivittäin tiiviissä yhteistyössä testaajien aateliston kanssa, joten kiistämättömästi parhaat käytännöt ovat tarttuneet mieheen kuin purkka tukkaan. Ei turhaa peukaloiden pyörittelyä, ei napinaa teknisistä ongelmista, ei ylimääräistä prosessilässytystä, vaan testauksen tilaajan tarpeen täyttämistä ja vielä enemmän. Ojenna kätesi, niin Jussi johdattaa sinut askeleen pitemmälle.

  • Jani Haikala

    Jani Haikala

    Jani “Tuna” Haikala on tottunut uimaan testauksen syvissä vesissä ilman pelastusliivejä. Joka kerta mies nostaa päänsä pintaan. Lopputuloksena on timanttiset bugiraportit ryyditettynä selkeääkin selkeämmällä testausraportilla. Oman osansa huomiosta saavat niin loppukäyttäjän mielenterveys kuin yrityksen rahavirratkin.

    Jani palkittiin Vuoden Testaaja 2016 -tittelillä. Äänestäjät kommentoivat Jania monin mairittelevin sanoin, mm. seuraavasti.

    Olen henkilökohtaisesti päässyt seuraamaan Janin toimia useammassakin projektissa ja mies on erittäin vastuuntuntoinen sekä osaava testauksen ammattilainen. Hän aidosti välittää lopputuloksesta, eikä istu käsiensä päällä tahi säästä sanojaan jos projektirekka on menemässä metsään. Tunan proaktiivinen ote testaukseen on ihailtavaa, ja se herättää suurta kunnioitusta tätä miestä kohtaan! Hänen timanttinen kosketuksensa asiakkaisiin ja nopea tilannetaju laittaa haukkomaan lisähappea. Mestaritestaaja, joka on ollut myös huippu opettaja ja ohjastaja uusille testaajille!

  • Jaakko Sakaranaho

    Jaakko Sakaranaho

    Jaakko kouluttaa testaajista ideoiden myyjiä

    Jaakko Sakaranahon päivätyönä on auttaa testaajia, koodareita ja tuotepäälliköitä hahmottamaan testauksen taloudelliset näkökulmat ja testaamatta jättämisen riskit. Bugien löytymisestä ei tarvitse olla huolissaan! Ne löytyvät kyllä, joko ennemmin testauksen toimesta tai myöhemmin asiakkaiden toimesta. Kuinka paljon asiakkaalle päätyvät virheet tuottavat tappiota?

    Kuinka paljon testaukseen kannattaa sijoittaa? Miten testaukseen käytettävästä rahasta revitään mahdollisimman suuri hyöty irti? Manuaalisesti vai automaatiolla? Jaakko haastaa ja haluaa tulla haastetuksi testauksen, rahan ja tulosten välisestä kolmiyhteydestä.

  • Jarkko Tauriainen

    Jarkko Tauriainen

    Bugien metsästys on intohimoni. Hoidan hommani vehkeillä, jotka sopivat tarkoitukseen parhaiten. Joskus teen työni paljain käsin, joskus käytän järeitä aseita.

  • Juhani Teirikangas

    Juhani Teirikangas

    Silloin kun testaan, ajattelen enimmäkseen testausta. Silloin kun en testaa, ajattelen testausta, ihmisiä, järjestelmiä, testausta, ihmisenä olemista, elämää, autoja, ihmisen käyttäytymistä ja testausta.

    Vaikka hyvin suunniteltu saattaa olla puoliksi tehty, niin paraskaan suunnitelma ei säily ehjänä kohdattuaan todellisuuden ja muita ihmisiä. Siispä altistaakseni testausaiheiset ajatuskulkuni todellisuudelle ja ihmisille, kirjoitan välillä testausaiheisia mietteitäni blogeiksi teidän luettavaksenne.

    Joskus ajatukseni saa vastakaikua, joskus tyrmäyksen, usein väistämättä kumpaakin. Mutta jos edes silloin tällöin ajatukseni on jossakussa saanut aikaan uuden, paremman tavan katsoa testausta, järjestelmiä, ihmisiä tai elämää, on yhteistyöstämme syntynyt jotain korvaamatonta.

    Olen Juhani Teirikangas, työskentelen Provella. Testaan työkseni, kirjoitan jakaakseni, elän kehittyäkseni.

  • Rakkauden ammattilainen

    Rakkauden ammattilainen

    Oletkos koskaan käynyt treffisivustoilla? Tai lukenut treffi-ilmoituksia paperilehdestä? Minä ehkä olen, ehkä en. So not?

    Näissä ilmoituksissa aika usein lähdetään liikkeelle vaatimusmäärittelyistä. Pitää olla raitis ja huumorintajuinen. Harrastaa samanlaisia asioita. Pituus ja ikä on tärkeitä numeroita. Ja niin edelleen. Olivatpa nämä ominaisuudet mitä tahansa, niin lopputuloksena on kasa vaatimuksia tulevalle kumppanille. Osa ominaisuuksista on listattuna, mutta osa saattaa jäädä tuomatta esille ilmoituksessa.

    Seuraavaksi viestitellään. Jos viestitellään. Ehkä todetaan jo varhain, että ei tämä tästä. Jossain vaiheessa käy niin, että treffit saadaan sovittua. Tutustutaan. Kerätään lisää tietoa vastapuolesta. Tehdään vikaskannausta. Mitä nyt itse kukainenkin tekee. Vastaan tulee varmasti myös ennemmin tai myöhemmin ominaisuuksia, joista ei niin välitä. Nämä joko muodostuvat esteeksi suhteen jatkumiselle tai sitten niiden kanssa opitaan elämään. Toisaalta saatat huomata, ettei jokin alkuperäinen vaatimus lopulta niin tärkeä ollutkaan. Tiedätte varmasti miten tämä etenee. Testaamisestahan siinä on kyse.

    Kysymys kuuluu, kuinka moni olisi valmis muodostamaan parisuhteen pelkän alkuperäisen vaatimusmäärittelyn pohjalta? Onko tosiaan niin, että lista vaatimuksista on aina varmasti kaiken kattava, eikä mitään yllätyksiä ja uusia näkökulmia tule matkalla vastaan? Tuskin kukaan ajattelee näin. Miksi siis kukaan olettaisi, että pelkkä vaatimusmäärittelyiden läpikäynti riittäisi ohjelmistojen testaamiseksi?

    Ei välttämättä ole eduksi mainostaa tulleensa rakkauden ammattilaisen testaamaksi. Mutta testauksen ammattilainen käy puolestasi läpi ne yllättävätkin tekijät. Testaa paljon muutakin, kuin vain vaatimusmäärittelyt. Onhan sinulla käytössäsi testauksen ammattilainen?

  • Organisaation kuolinvuoteella

    Organisaation kuolinvuoteella

    Kaiken nerokkaana ja erityisenä pitämämme ajattelumme alla olemme eläimiä. Eläiminä olemme taipuvaisia muodostamaan yhteisöjä. Se on ollut elinehtomme aina siitä hetkestä lähtien, kun ensimmäinen tietoisuuden valo välähti sen elämänmuodon himmeissä silmissä, jota kutsumme kantaisäksemme. Olemme yksilöinä vähäisiä olentoja luonnon kiertokulussa, mutta joukkona luomme voimia, jotka kirjaimellisesti muokkaavat maailmaa ympärillämme. Yhteinen luomistyömme sisältää kaiken sen potentiaalin, mitä niin kutsutun luojammekin potentiaali on.

    Jossain matkan varrella olemme kuitenkin unohtaneet sen.

    Saavutuskeskeinen ajattelumme, yksilöiden palkitsemiseen tähtäävä ja ikuiseen portaiden kiipeämiseen viritetty yhteiskuntamme on vuosien mittaan alkanut rapauttamaan ympäristöämme ja ennen kaikkea meitä itseämme. Valtapelit, varmuuden tavoittelu, säännöt, suunnitelmat, ehdot ja vaatimukset ovat alkaneet määritellä meitä sen sijaan, että me määrittelisimme niitä. Ihmisestä on tullut osa mekaanista koneistoa. Osa, joka on tarpeen vaatiessa helposti vaihdettavissa, jotta koneisto pysyy liikkeessä. Olemme luoneet hirviön, joka imee energiaamme oman maailmansa ylläpitämiseksi. Koska kaikki haluavat olla jollain tavalla tärkeitä ja pitää kiinni omasta menestyksestään ja turvallisuudestaan, yksinkertaisista asioista kasautuu nopeasti ylettömän monimutkaisia.

    Merkittävä osa monimutkaisista asioista yhteisöissämme ovat todella merkittävän yksinkertaisia.

    Ne asiat, jotka eivät objektiivisen tarkastelunkaan jälkeen ole vielä yksinkertaisia, ovat luonnostaan kompleksisia. Luonnolla on kuitenkin omat tapansa hoitaa asiat siten, kuin ne vaativat hoitamista. Luonnollisessa organisaatiossa jokainen yksilö asettuu mielellään sille paikalle, joka hänen todelliselle luonnolleen sopii. Paikalle, joka palvelee vilpittömästi kokonaisuutta hänen omilla taidoillaan. Toiset ovat koodaajia, kolmannet testaajia, neljännet myyjiä ja viidennet johtajia… Harva kuitenkaan muistaa päivänsä aikana ajatella sitä, mitä me kaikki olemme ensimmäisinä. Olemme eläimiä, jotka tukeutuvat toisiinsa, jotka heijastavat oman kuvansa toisistaan, joiden elämänlaatu on suoraan suhteessa niiden ihmisten elämänlaatuun, kenen kanssa he jakavat samoja uskomuksia ja viettävät aikaansa.

    Managerit, pomot, päällepäsmärit ja kaiken maailman turhantärkeiksi määritellyt asemat ja tittelit ovat menneen talven lumia. Perinteinen organisaatio makaa kuolinvuoteellaan, odottaen viimeistä henkäystään. Sen tuhkista on kuitenkin mahdollista nousta jotain paljon hienompaa, paljon arvokkaampaa ja paljon todellisempaa. Yhteisön ja yksilöiden todellinen arvostus ja hyväksyminen – yksilön toiminta ilman pyrkimyksiä olla enemmän oikeassa kuin toinen – luo maaperän entistä kauniimpien kukkien kasvamiseen. Kuten allekirjoittaneen suosikkisarjan Doctor Who:n päähenkilö Tohtori itse asian ilmaisee:

    Ihmisen edistystä ei mitata teollisuudella, vaan elämän arvostuksella. Tarpeettoman elämän. Elämän vailla etuoikeuksia.

    Tarpeettomimman elämän arvo on sama kuin tarpeellisimmankin. Se määrittää aikakauden. Se määrittää lajin.

    Seuraavalla kerralla kun mietit, kenen vastuulla jonkin asian onnistuminen softaprojektissasi (tai missä tahansa elämäsi osa-alueella) on, voit olla huoletta koska kerron sinulle nyt suurimman salaisuuden, mitä yhteiskuntamme ei sallisi kenenkään kertovan: Sinun vastuullasi, rakas ystävä. Tee täydellisen omavoimaisesti se mikä on oikein, palvelee arvottamatta kaikkia muita ja on myös tarpeen tehdä, vieläpä kyselemättä keneltäkään lupaa. Toisin kuin sinulle on aina uskoteltu, yksikään toinen ihminen ei ole minkäänlaisessa valta-asemassa sinuun nähden, etkä myöskään sinä toisiin nähden. Saatat kokea voimakasta vastatuulta tehdessäsi sen minkä teet, mutta voit ehkä samalla tuntea raikkaan tuulahduksen kasvoillasi jostain sellaisesta, jota myös elämäksi kutsutaan.