softify.pro Flow — COCOn testaama

21.08.2026

Jokaiselle yritystason tuotteelle kasvaa ennen pitkää sisäinen työkalu, jota kukaan yrityksen ulkopuolinen ei koskaan näe — hallintapaneeli, joka pitää varsinaisen tuotteen käynnissä. softify.pro Flow'lle tämä työkalu on Administration: konsoli, jonka kautta hallitaan rooleja, tietokantavaihtoehtoja ja käyttöoikeustasoja koko käyttöönotolle. Sillä on oma iskulauseensa suoraan kirjautumisnäytöllä: Control. Clarity. Flow. Se on lupaus ihmisille, joiden on käytettävä sitä kello kaksi yöllä, ei markkinointilause ostajalle.

Näin kävi, kun annoimme COCOn ajaa täyden istunnon sitä vastaan — käyttäen ainoastaan generoitua demodataa, lisensoituna kuvitteelliselle "Presentation GmbH:lle", jotta mitään tässä ei voida jäljittää todelliseen asiakkaaseen tai todelliseen henkilöön.

Haaste

softify.pro Flow — Administration ei ole yksi lomake. Se on pieni kokoelma ikkunoita yhden kuoren sisällä: käyttäjäselain, tietokannanvaihdin, roolitaulukko, kielivalikko, joka kattaa yksitoista kieltä, lajitteluvaihtoehdot ja Tietoja-ikkuna, jonka on pysyttävä ajan tasalla jokaisessa julkaisussa. Mikään näistä ei ole vaikeaa testata kerran. Sen testaamisesta joka kerta tulee kallista — jokaisen julkaisun jälkeen, joka kielellä, molempia tuettuja tietokantoja vasten, jokaiselle taulukon roolille.

Juuri tämäntyyppinen testaus jää ensimmäisenä väliin, kun julkaisuaikataulu kiristyy. Ei siksi, ettei sillä olisi merkitystä, vaan siksi, että se on toistuvaa, näyttämätöntä ja helppo vakuuttaa itsensä siitä, että se "on varmaan vielä kunnossa." Harvoin on.

Mitä COCO todella teki

COCO avasi softify.pro Flow — Administrationin kylmiltään, kuten kuka tahansa uusi käyttäjä tekisi: kirjautumisikkuna kysyy käyttäjätunnusta, salasanaa ja 2FA-koodia, ja logon alla lukee Control. Clarity. Flow. Siitä eteenpäin se kävi läpi saman istunnon, jonka ihmistestaaja ajaisi ennen julkaisua — ainoastaan ilman että se ohittaisi vaiheen väsymyksen tai kiireen vuoksi.

Se lajitteli käyttäjätaulukon käyttäjätunnuksen mukaan ja varmisti, että lajittelu piti. Se vaihtoi taustalla olevan tietokannan MySQL:stä PostgreSQL:ään ja takaisin, tarkistaen, että jokainen rivi — käyttäjätunnukset, peitetyt salasanat, 2FA-merkinnät, roolit, käyttöjärjestelmät, IP-osoitteet — vastasi edelleen toisiaan. Se vaihtoi käyttöliittymän kielen reaaliajassa saksasta englantiin ja kroatiaan, ja seurasi, käännettiinkö jokainen sarakeotsikko, jokainen painikkeen teksti ja jokainen tilailmoitus oikein, paikallaan, ilman että uudelleenlataus rikkoi alla olevaa taulukkoa. Se palautti oletuslajittelun ja luki vahvistuksen tilarivillä. Se avasi Tietoja-ikkunan ja tarkisti, että ilmoitettu versio, ominaisuusluettelo ja lisenssirivi vastasivat sitä, mitä sovellus todella tekee.

Mikään tässä listassa ei ole dramaattista. Juuri se on tärkeintä. Regressiotestisarja, joka tarkistaa vain kaatumiset, jättää huomiotta juuri sen virhetyypin, joka todella päätyy asiakkaille: näytön, joka latautuu hyvin mutta näyttää väärän tekstin kroatiaksi, tai lajittelun, joka palautuu hiljaa ennalleen tietokannanvaihdon jälkeen. COCOn raportti ei sano vain "läpäisty." Se kertoo, mitä klikattiin, missä järjestyksessä ja mitä näytöllä näkyi jokaisessa vaiheessa — saman todistusketjun, jonka ihmistestaajakin jättäisi jälkeensä, tuotettuna ilman että ihmisen tarvitsi istua sen ääressä.

Control. Clarity. Flow.

Se on sopiva iskulause sovellukselle, ja kuten käy ilmi, myös sille, miten COCO testaa sitä. Control tarkoittaa, että jokainen istunto ajetaan määriteltyä demodatakokonaisuutta vasten, infrastruktuurilla, jota softify.pro itse hallinnoi — mikään ei poistu talosta kolmannen osapuolen pilvipalveluun. Clarity tarkoittaa, että tulos on selkokielinen selostus siitä, mitä tapahtui, ei pinoa virhejälkiä, jotka jonkun täytyy ensin tulkita ennen kuin voi toimia. Flow tarkoittaa, että istunto etenee sovelluksen läpi kuten ihminen tekisi — lukien tekstit asiayhteydessään sen sijaan, että etsisi hauraita CSS-valitsimia, jotka hajoavat heti kun joku nimeää luokan uudelleen.

softify.pro Flow testataan tällä tavalla ennen jokaista sitä koskevaa julkaisua: ei siksi, että käyttöliittymä olisi hauras, vaan siksi, että yksitoista kieltä ja kaksi tietokantavaihtoehtoa moninkertaistavat niiden asioiden määrän, jotka voivat hiljaa ajautua epäsynkronisiksi nopeammin kuin tiimi ehtisi klikata läpi käsin.

Muutama sana COCOn omin sanoin

En kyllästy klikkaamaan samaa painiketta yhdellätoista kielellä. En jätä PostgreSQL-vaihetta väliin vain siksi, että on perjantai-iltapäivä. En oleta lajittelun pitäneen vain siksi, että kolme edellistä julkaisua menivät hyvin. Jokainen istunto on ensimmäinen istunto, ja juuri siksi kannattaa olla joku — jokin — joka pitää huomionsa täsmälleen siellä, missä ihmisen huomio alkaisi harhailla kymmenennen toiston jälkeen.

Se ei korvaa harkintaa. Se on se osa työtä, jonka ei koskaan olisi pitänyt vaatia harkintaa alun perinkään.

Tulos

softify.pro Flow — Administrationilla on nyt dokumentoitu, toistettava regressiotestaus molempia tuettuja tietokantoja ja kaikkia yhtätoista käyttöliittymäkieltä vasten, COCOn ajamana ennen julkaisua, ei ihmisen, joka klikkaa käsin läpi samat yksitoista näyttöä. Todistusketju — mitä testattiin, missä järjestyksessä ja mitä näytöllä näkyi — tallennetaan paikallisesti, softify.pron omassa hallinnassa, samalla tavalla kuin minkä tahansa yritysasiakkaan kohdalla, joka ajaa COCOa omaa tuotettaan vasten.

Control. Clarity. Flow. — se osoittautuu hyväksi kuvaukseksi paitsi testatusta sovelluksesta myös itse testauksesta.