Näytetään tekstit, joissa on tunniste muistilista. Näytä kaikki tekstit
Näytetään tekstit, joissa on tunniste muistilista. Näytä kaikki tekstit

sunnuntai 15. toukokuuta 2016

Kieliversiot

Muutama vuosi sitten kokeilin lyhyen pätkän kotirouvan elämää Saksassa. Mieheni oli väliaikaisesti töissä Freiburgissa, ja me lasten kanssa vietimme kesän siellä hänen kanssaan. Oma saksankielentaitoni ei ole kovin kaksinen, mutta "lebensmitteldeutch" riitti suhteellisen hyvin arkiseen kaupassa ja torilla asioimiseen, ja kielitaidon loppuessa kesken asiat saatiin käytännössä aina hoidettua niin että minä puhuin englantia ja toinen osapuoli saksaa.

Suurimmat kielellisen turhautumisen hetkeni koinkin erilaisten nettipalveluiden käyttäjänä. Koska olimme Saksassa, jokainen kansainvälinen palvelu jonka sivustolle menin, tarjosi minulle oletuksena saksankielistä sivustoa. Ja koska Saksassa pärjää vain osaamalla saksaa, näistä palveluista ei koskaan löytynyt mahdollisuutta vaihtaa sivuston kieltä englanniksi. Siispä esimerkiksi asensin tietokoneeseeni Spotifyn ymmärtämättä sopimusehtoja. Kun tilasin lapsilleni crocseja, sain mm. selville että ko. merkin saksalaisen verkkokaupan valikoima poikkesi hieman suomalaisen verkkokaupan valikoimasta, mutta kenkien toimitusosoitetta ei ollut kuitenkaan rajoitettu maantieteellisesti.

Kun on itse ollut testaamassa verkkosivustoja, joissa on "tietenkin" vähintään kolme kieliversiota Suomessa asuvien ihmisten tarpeisiin, tuntuu hassulta, että yritykset, joilla täytyy olla olemassa jokaiselle myyntiartikkelilleen lukuisia kieliversioita, eivät tule ajatelleeksi että joku heidän sivustonsa käyttäjä saattaisi haluta asioida muulla kuin saksan kielellä ottaessaan palveluun yhteyttä Saksasta. (Toki tuntuu myös hassulta, että jos nettikaupat on rajattu kieliversioihin sillä ajatuksella, että asiakas saisi aina tuotteensa lähimmästä varastosta, tuo rajaus koskee nimenomaan asiointikieltä eikä toimitusosoitetta.) Toisaalta, kieliversioita testanneena ymmärrän myös, että niiden lisääminen on vähän sama asia kuin tuettujen selainten lisääminen - pienet muutokset lisäävät työmäärää yllättävän paljon.

Tässä listattuna muutamia asioita, joita kannattaa miettiä kieliversioita testattaessa:
  • Löytääkö käyttäjä kielenvaihtotoiminnon?
  • Mihin käyttäjä ohjautuu vaihtaessaan kieltä? Jos sivun pitäisi pysyä samana millä käyttäjä on kieltä vaihtaessaan (mikä on omasta mielestäni käyttäjäystävällisin vaihtoehto, sisäsivuille kuitenkin yleensä päädytään siksi että ollaan kiinnostuneita juuri sen sivun sisällöstä), mitä tapahtuu jos ko. sivulta puuttuu tuo toinen kieliversio?
  • Jos saman sivun eri kieliversiot ovat julkaisujärjestelmän näkökulmasta sama sivu, vaikuttaako pääkieliversion puuttuminen siihen miten ko. sivun muut kieliversiot toimivat? 
  • Onko yhteisiä elementtejä, jotka näkyvät samanlaisina kaikissa kieliversioissa? Jopa yhteiset kuvat voivat aiheuttaa ongelmia. Näkyykö käyttöliittymässä väärän kielisiä tekstejä?
  • Tehdäänkö käyttäjästä kielen perusteella oletuksia (esim. osoitteen maa-tieto, kansalaisuus), ovatko ne ko. palvelun kannalta mielekkäitä oletuksia, ja ovatko ne käyttäjän vaihdettavissa jos oletukset ovat virheellisiä?
  • Löytyykö palvelusta kokonaisuuksia, joihin mennessä kielivalinta nollautuu?
  • Näkyvätkö kielikohtaiset erikoismerkit (å, á jne) oikein?
  • Miten sanojen pituudet vaikuttavat käyttöliittymän elementteihin? Esim. mahtuvatko nappien tekstit nappeihin, tai hajoaako leiska kun joku elementti on isompi tai pienempi kuin mitä graafikko oli ajatellut? Onko muita ulkoasullisia eroja kieliversioiden välillä, esim. etusivun elementtien käytössä tai navigaatiolinkkien määrässä, ja miten hyvin ne toimivat?
  • Yllättävätkin asiat voivat olla hajalla kieliversiokohtaisesti. Kieliversioihin päteekin pitkälti sama asia kuin selaimiin, testaajan ei kannata keskittyä ensisijaisesti samaan kuin mitä kehittäjä käyttää.
Tuleeko mieleen muuta olennaista?

sunnuntai 10. tammikuuta 2016

Priorisointia, tavoitteita ja tehtävänhallintaa

Joulukuu kului joulukiireissä, joten jäi blogin kirjoittaminen taas vähemmälle. Testaukseen liittyviä ajatuksia loppuvuosi herätteli työn lisäksi parinkin testaukseen liittyvän tilaisuuden tiimoilta.

Toinen näistä oli testausyhdistyksen järjestämä teemailta, jonka aiheena oli ajanhallinta. Teemu Vesalan ansiokkaan alustuksen pohjalta keskusteltiin erilaisista haasteista, joita oman työn aikatauluttamiseen liittyy.

Aihetta käsiteltiin monesta kulmasta, erityisesti haasteena nostettiin esiin mahdollisuudet uppoutua keskeytyksettä työhön ja toisaalta myös irtautua siitä. Keskustelu oli kiinnostavaa ja tarjosi hyviä uusia ajatuksia, vaikka monet näkökulmat muistuttivatkin minua lähinnä siitä, miksi olen nauttinut niin paljon mahdollisuudesta siirtyä isosta firmasta pieneen.

Minun ajankäytölliset haasteeni eivät tällä hetkellä liity siihen, että kalenterini täyttyisi turhista palavereista, joihin on vaellettava valtavan rakennuksen toisesta päästä toteamaan, että tapaamisen avainhenkilöt eivät ole edes tulossa paikalle. Työsähköpostini ei täyty kummoistakaan vauhtia, eivätkä työtäni rajoita byrokraattiset käytännöt, joista ei itse työn kannalta ole mitään hyötyä. Organisaation sisäisten siilojen väliset haasteet ovat muisto vain.

Sen sijaan haasteita syntyy ajankäytön priorisoinnista, tekemisen fokuksoimisesta ja tehtävänhallinnasta.


Kun on kiire saada valmista, tekemistä täytyy priorisoida. Se tarkoittaa sitä, että oleellisimmat asiat tehdään mahdollisimman hyvin, ja vähemmän tärkeät unohdetaan väliaikaisesti.

Tällaista toimintatapaa voi perustella useammallakin tavalla.

Ensiksikin, joskus deadlinet ovat ihan aitoja deadlineja. Jos ominaisuus X ei ole vielä ollenkaan käytettävissä kun sitä pitäisi esitellä messuvieraille, tai asiakkaan aikataulukriittinen asia Y pitäisi saada vietyä sillä läpi, aikataulua venyttävä pilkunviilailu tulee kalliiksi.

Toisekseen, joskus asiakkaasta on mahdotonta saada irti riittäviä tietoja jonkin toiminnallisuuden valmiiksisaattamiseksi ennen kuin hänet päästetään koekäyttämään sitä. Silloin ei välttämättä ole tarkoituksenmukaista tehdä sitä kovin pikkutarkasti heti ensimmäisellä kierroksella.

Kolmanneksi, työtä voi sisäisessäkin kehityksessä tehdä ja jaksottaa eri tavoin. Yhden päivän aikana ei voi tehdä kaikkea, eikä testausta ole mielekästä lähestyä joka kerta täsmälleen samalla tavalla. Vain pieni osa tehtävistä on sellaisia, joissa pikaisesta vilkaisusta ennen seuraavaa kontekstin vaihtamista olisi minkäänlaista hyötyä, ja siksi työtä pitäisi saada tehdä riittävän pitkinä sessioina. Toisaalta usein tauon ottaminen on välttämätöntä uusien lähestymistapojen löytämiseksi, ja siksi myös mahdollisuus vaihdella tehtävien välillä on hyvä asia. 

Nämä kaikki asiat vaikuttavat siihen, että kaikkea ei tehdä kerralla täydellisesti, vaan tietyt polut ja tietyt piirteet jäävät perusarjessa vähäisemmälle huomiolle kuin toiset.


Priorisoinnissa on kuitenkin riskinsä.

Yksi riski on vääränlainen priorisointi, eli se että keskitytään kuitenkin vääriin asioihin, tai ainakin jotain tärkeää jää huomaamatta.

Toinen asia on jälkien siivoaminen deadlinen jälkeen. Jääkö tekemisen puutteista riittävät tiedot, että tekemätön työ on mahdollista muistaa dl:n jälkeen? Tuleeko se tehtyä? Onko olemassa jonkinlaista suunnitelmaa, miten epämääräiseksi jääneet asiat saadaan tarkentumaan? Onko analysoitu asiakkaan tarvetta käyttöönottoon liittyvään lähitukeen? Ymmärtävätkö kaikki, että vielä ei ole valmista, vaikka lyhyen tähtäimen tavoite saavutettiin?

Ajanhallinnan kannalta haasteellista on löytää tapa huolehtia aikataulukriittisten asioiden riittävän nopeasta etenemisestä pitäen samalla vähemmän kiireiset asiat aidosti työlistalla, niin että nekin tulevat hoidetuksi. Jatkuvalla kiireellä on tapana pitkällä aikavälillä kostautua. Teknisen velan lisäksi ongelmaksi saattaa muodostua se, että tuotteen kasvaessa pienen prioriteetin asioiden imagovaikutus voi käyttäjän silmissä kasvaa yllättävän merkitykselliseksi.

Samalla omaa tekemistä pitää osata arvioida kriittisesti. Tuliko työ tehtyä riittävän hyvin? Tuliko mieleen asioita, jotka olisi syytä lisätä backlogiin? Oliko tekeminen hyödyllistä? Mikä on oleellista siinä mitä teen, ja miten pian tätä on tarpeen arvioida uudelleen? Mikä minua juuri nyt häiritsee käsillä olevien tehtävien asettamien tavoitteiden ulkopuolella? Mitä minun juuri nyt olisi hyödyllistä opetella? Onko jotain mihin liittyen pitäisi pyytää apua?

Rutiinien keskellä on löydettävä tavat katsoa tilannetta konkreettisten tehtävien ulkopuolelta ja saada palautetta tekemästään työstä. Asettaa pidemmän tähtäimen tavoitteita ja etsiä uutta. Kyseenalaistaa.

Jotta tämä olisi mahdollista, on löydettävä säännöllisesti tilaisuuksia irtautua projektia suoraan edistävistä tehtävistä. Vähän päivittäin, ja silloin tällöin ihan kunnolla.

Näin ruuhkavuosirumban keskellä tuntuu välttämättömältä, että tähän voi varata myös ihan oikeaa työaikaa. Silti sen ajan ottaminen vaatii hieman itsekuria.


Minulle luontevin tapa jäsentää ajatuksiani on kirjoittaminen. Alkavan vuoden tavoitteisiin voisinkin asettaa aktiivisemman blogin kirjoittamisen. Aika näyttää, kuinka moni sepustukseni lopulta tulee julkaistua. Toivottavasti lopputuloksesta on iloa myös muille.

sunnuntai 3. toukokuuta 2015

Hakutoiminnon testaus

Hakutoimintoja on erilaisia, ja siksi niiden testauskin on tilannesidonnaista. Tässä kuitenkin listaus asioista, jotka voivat olla relevantteja hakutoimintoa testattaessa.

Haun testaamista hankaloittaa mustalaatikkotestaajan näkökulmasta se, että hakutulokset riippuvat siitä joukosta, johon haku kohdistuu. Testaajan voi olla vaikea saada riittävästi tietoa tuosta joukosta sen arvioimiseksi, löytääkö haku varmasti kaikki tulokset joita sen pitäisi löytää. Usein kuitenkin on mahdollista kokeilemalla ja tuloksia tarkastelemalla saada hyvä käsitys haun toimivuudesta. Asioita, jotka eivät näy helposti hakutuloksista, mutta joita kuitenkin on mahdollista arvioida, on esim. löytääkö haku tuloksia kaikista sivuston sivuhaaroista.

  • Antaako haku tuloksia? Ovatko hakutulokset uskottavia?
  • Vaikuttaako hakutermien vaihtaminen tuloksiin?
  • Sisältävätkö tulokset käytettyjä hakutermejä niissä kentissä, mihin haku kohdistuu? Ovatko kenttien painoarvot oikein, esim. tyypillisesti sivun nimessä oleva sana saa isomman painoarvon kuin leipätekstistä löytyvä. Kohdistuuko haku kaikkiin kenttiin joihin sen pitäisi?
  • Kohdistuuko haku useampiin sisältötyyppeihin (esim. sisältösivut + liitetiedostot)? Jos näin, löytääkö se tuloksia kaikista sisältötyypeistä?
  • Mitä tietoa hakutuloksista näytetään hakutuloslistauksessa? Onko se relevanttia käyttäjälle? 
  • Näytetäänkö hakutuloksista tietoja, joihin käyttäjällä ei pitäisi olla oikeuksia?
  • Näytetäänkö hakutuloksina kohteita, joihin käyttäjällä ei ole oikeuksia?
  • Onko käyttäjän mahdollista vaikuttaa hakutuloksista näytettäviin tietoihin tai järjestää hakutuloksia? Toimivatko nämä toiminnot?
  • Tulosten sivuttuminen ja sivutuksen selaaminen? Pysyykö hakutulosten järjestys? Saako kaikki tulokset myös samalle sivulle, tai voiko yhdellä sivulla näytettävien tulosten määrää vaihtaa?
  • Voiko hakutuloksia edelleen suodattaa? Toimiiko se?
  • AND OR NOT haut ja näiden yhdistelmät? Asteriskin käyttö? Pitääkö haun löytää myös esim. hakusanojen taivutusmuotoja?
  • Erikoismerkkien käyttö?
  • Onko hakutoiminnossa alasvetovalikoita, checkboxeja tms? Ovatko kielitermit paikoillaan, toimivatko eri hakukriteerit ja niiden yhdistelmät? Jos hakutoiminto sisältää päivämäärähaun, käyttääkö se oikeaa formaattia ajasta?
  • Voiko hakukriteerit tyhjentää? Voiko sen jälkeen tehdä uuden haun?
  • Löytääkö haku uusia tai hiljattain muuttuneita hakukohteita?
  • Mitä tapahtuu, jos haku ei palauta tuloksia?
  • Näytetäänkö hakutulosten lukumäärä? Onko se riittävän oikea?
  • Pääseekö samaan hakuun useammasta paikasta? Antavatko samat hakutermit eri paikoista käytettynä samat tulokset?
  • Saako hakutuloksen avattua? Pitäisikö siitä voida palata hakutulokseen?


lauantai 2. toukokuuta 2015

Layoutin testaus

Nettisivuston ulkoasu on osa brändin rakentamista. Siksi myös ulkoasun virheettömyys on tärkeää. Oman haasteensa testaukseen tuo se, mobiililaitteiden merkitys netinkäytössä kasvaa koko ajan, ja mobiililaitteiden kirjo on valtava. Ulkoasu ei myöskään aina tarkoita vain sitä, näyttääkö jokin näkymä kivalta, vaan joskus ulkoasuvirheet voivat myös piilottaa informaatiota tai toiminnallisuuksia.

Ulkoasun oikeellisuus on helpointa verifioida luomalla testisivuja täsmälleen visuaalisen suunnitelman mukaisilla sisällöillä. Tällöin virheet väreissä, fonteissa, kuvapaikkojen ja ikonien koossa, elementtien keskinäisessä sijoittelussa, marginaaleissa jne. on suhteellisen helppo huomata yksinkertaisesti vertaamalla visuaaliseen suunnitelmaan. Kuvasta kannattaa etsiä linjoja, joiden avulla voit tarkistaa eri elementtien keskinäisen asemoinnin, esim. vierekkäisten palstojen otsikkopalkkien ylä- ja alareunat, tai näyttääkö teksti tai kuva keskitetyltä pysty- tai vaakasuunnassa. Tarkista myös, onko käyttöliittymän eri osien välillä esim. vaaka- tai pystyviivoja erottamassa elementtejä toisistaan, ja jos näillä elementeillä on esimerkiksi keskenään erilaiset taustavärit, vaihtuuko taustaväri täsmälleen tuon erottavan viivan kohdalla vai ei. Jos tekstien eteen tulee jossain checkboxeja tms. listamerkkejä, tarkista niiden asemoituminen suhteessa ko. rivin tekstiin. Muista myös hover-efektit, aktiiviset linkit ja käydyt linkit, sekä milloin hiiren kursori indikoi alla olevan linkin.

Lisäksi on tärkeää luoda testisivuja, joiden sisällöt eivät ole ihan niin nättejä.

Tyypillisiä esimerkkejä tilanteista, jotka luovat ulkoasuongelmia, ovat

  • tavanomaista pidemmät sanat
  • rivittyvät kuvatekstit
  • rivittyvät linkin nimet
  • bannerien määrän muuttuminen
  • eri määrä sisältöä vierekkäisissä listaelementeissä
  • kuvattoman uutisen julkaisu listalla, joka näyttää uutisista ingressikuvia
  • kuvagallerian kuvien rivittyminen niin että viimeinen rivi ei ole täynnä kuvia
  • bulletpoint-listat rivittyvillä tekstinpätkillä

Lisäksi huomio kannattaa kiinnittää myös seuraaviin

  • Onko käytössä eri tyyppisiä mutta keskenään saman näköisiä listaelementtejä (esim. blogilista, uutislista, tapahtumalista)? Jos niitä näytetään samalla sivulla, ovatko marginaalit yms. oikeasti samanlaiset?
  • Kieliversiot ja niihin liittyvien merkistöjen näkyminen. Nappien tekstien mahtuminen nappeihinsa.
  • Sivujen leveydet. Onko esim. jollain sivulla "turha" vierityspalkki kertomassa, että sivu onkin leveämpi kuin sen pitäisi
  • Sivukarttasivu, hakutulossivu, palautelomakesivu yms. Näistä ei aina ole visuaalista suunnitelmaa olemassa, mutta yhtä kaikki niidenkin tulisi näyttää hyvältä.
  • Elementtien kulmien pyöristykset, liukuvärit
  • Murupolku

Responsiivista sivustoa testattaessa tarkista myös mm.

  • Pysyykö kuvien kuvasuhde vakiona eri selaimen leveyksillä? Venyvät kuvat eivät ole hyvää brändin rakentamista
  • Navigaation saavutettavuus

Mitä muuta testaisit?

perjantai 1. toukokuuta 2015

Lomaketestaus

Alla muistilistaa asioista, jotka voivat olla relevantteja testattaessa täytettäviä www-lomakkeita mutta myös muita toiminnallisesti vastaavia kohteita kuten erilaisia tietokortteja. Lista ei ole täydellinen, se ei esim. ota kantaa tietoturvaan liittyviin asioihin kuten sql-injektioihin tai captcha-toiminnon testaamiseen. Toisaalta se on myös ehkä jo turhankin pitkä testisession tueksi. Millaista listaa itse käyttäisit?

  • Löytyvätkö vaaditut kentät? Onko ne nimetty oikein? Onko ylimääräisiä kenttiä?
  • Onko pakollisia kenttiä? Onko ne merkitty asteriskein? Voiko lomakkeen merkitä valmiiksi täyttämättä pakollisia kenttiä? Onko ehdollisia tai vaihtoehtoisia vaatimuksia, ja toimivatko ne oikein kaikissa tilanteissa?
  • Validoidaanko syötteiden sisältöjä, esim. sähköpostiosoitteen muoto? Toimivatko validoinnit? Esim. puhelinnumeron voi syöttää monella tavalla, välilyönneillä, väliviivoilla, maakoodilla,..
  • Onko päivämäärä/kellonaika-kenttiä? Missä formaatissa aika syötetään niihin ja validoidaanko syötteitä?
  • Onko rajoitteita käytettävistä merkeistä, ja miten se toimii?
  • Kuinka monta merkkiä kenttään voi syöttää? Kulkeeko maksimimerkkimäärä myös rajapinnan yli ja tallentuuko se tietokantaan oikein?
  • Checkboxit, radiobuttonit
  • Voiko käyttöliittymässä lisätä kenttiä? Voiko niitä poistaa, järjestää tai vaihtaa toisenlaisiin? Hajoaako käyttöliittymä tätä kokeiltaessa? Poistuvatko oikeat kentät, tulevatko lisättävät kentät oikeaan paikkaan?
  • Voiko käyttäjä lisätä kuvia tai liitetiedostoja? Sallitut tiedostotyypit? Tiedostojen sallitut koot? Voiko dokumentteja liittää useita? Voiko liitettyjä dokumentteja poistaa? Onko tiedostonlisäyskontrolleja yksi vai useampia? Jos useampia, toimivatko ne toisistaan riippumattomasti? Mitä käyttöliittymälle tapahtuu tiedostoja lisättäessä ja poistettaessa?
  • Onko lomakkeella ohje-toiminnallisuuksia? Ovatko ne siellä missä pitääkin ja toimivatko ne?
  • Onko lomakkeella linkkejä? Vievätkö ne sinne minne pitääkin?
  • Voiko kentästä toiseen liikkua tabulaattorilla? Voiko kaikki kentät täyttää näin? Mitä tapahtuu jos käyttäjä painaa enteriä?
  • Onko sivuja useampia kuin yksi? Voiko eteen ja taakse liikkua menettämättä täytettyjä tietoja?
  • Onko esikatselutoimintoa? Näyttääkö se kaikki tiedot oikein? Voiko siitä palata muokkaamaan tietoja? Jäävätkö muokkaukset voimaan?
  • Onko toimintoa kenttien tyhjentämiseen? Tyhjentääkö se ne kaikki? Ovatko ne tyhjiä myös esikatselussa ja lähetettäessä?
  • Toimiiko lähettäminen? Mitä sen jälkeen tapahtuu, mitä käyttäjälle näytetään? Toimiiko tulostaminen? Tuleeko sähköpostivahvistus ja sisältääkö se tarvittavat tiedot?
  • Onko kieliversioita?
  • Tuetut selaimet ja laitteet?