Tällä sivulla annetaan ohjeita Voikon testauksesta kiinnostuneille. Voikko-fi:n kehitysversion käyttö on yleensä yksinkertaisin tapa seurata Voikon kehitystä. Täysi testiympäristö kannattaa asentaa vain, jos haluaa vakavasti osallistua Voikon testaamiseen. Tämä edellyttää jo jonkin verran teknistä osaamista.
Ohjeissa oletetaan, että käytössä on uusin kehitysversio libvoikosta ja voikko-fi:stä. Uusimmat vakaat versiot eivät välttämättä riitä.
Voikko-fi on Voikon komponentti, joka sisältää suomen kielen sanaston sekä säännöt sanojen taivutuksesta, johtamisesta ja käytöstä yhdyssanan osana. Tästä syystä se on Voikon komponenteista ehkä kaikkein näkyvimmin kehittyvä. Jos haluat testata uusimpia kehitysversioita, se käy melko helposti alla olevien ohjeiden avulla.
Asenna versionhallintatöykalu git sekä LEXC-kääntäjä foma. Asenna myös kehitystyökalu make ja python-tulkki. Debianissa nämä ovat samannimisissä paketeissa.
Lataa Voikko-fi versionhallinnasta omaan kotihakemistoosi seuraavilla komennoilla:
mkdir ~/git git clone git://github.com/voikko/corevoikko.git ~/git/corevoikko mkdir -p ~/.voikko/5
Käännä voikko-fi komennolla:
cd ~/git/corevoikko/voikko-fi make vvfst-install DESTDIR=~/.voikko
Mikäli kääntämisessä ei tapahtunut virheitä, voikko-fi:n kehitysversio on nyt käyttövalmis. Libvoikko käyttää automaattisesti kotihakemistossa olevaa voikko-fi:tä, jos sellainen on olemassa. Jos myöhemmin haluat päivittää uudempaan kehitysversioon, se tapahtuu seuraavilla komennoilla:
cd ~/git/corevoikko/voikko-fi git pull -r make vvfst-install DESTDIR=~/.voikko
Jos käytät Debiania tai jotakin siihen perustuvaa Linux-jakelua, voit tehdä deb-asennuspaketit Voikon kehitysversioista käyttämällä bash-skriptiä makevoikkodeb. Skripti osaa muun muassa hakea automaattisesti versionhallintajärjestelmästä lähdekoodin halutulle Voikon komponentille ja kääntää sen valmiiksi deb-asennuspaketiksi. Ohjeita skriptin käytöstä saat käynnistämällä sen ilman parametreja: makevoikkodeb. Seuraavaksi joitakin esimerkkejä:
Asennuspaketit uusimmista Voikon kehitysversioista käännetään seuraavilla komennoilla:
makevoikkodeb voikko-fi makevoikkodeb libvoikko
(Jos kääntämiseen tarvittavia muita paketteja ei ole koneelle asennettuna, makevoikkodeb kertoo tarvittavien pakettien nimet ja keskeyttää toiminnan. Kun olet asentanut pyydetyt paketit, aja komento uudelleen.)
Nämä ohjeet on siirretty englanninkieliseen kehityswikiin.
Julkaisua edeltävän testauksen tavoitteena on varmistaa, että voikko-fi täyttää seuraavat kriteerit:
Näiden kriteerien testaamiseksi alla esitetyt testit on tehtävä viimeisimmälle vakaalle versiolle ja uusimmalle kehitysversiolle ja vertailtava tuloksia.
Anagrammivoikkoa voi käyttää kriteerien 2 ja 4 testaamiseen. Myös kriteerin 1 toteutumisesta voidaan saada tietoa, jos testi suoritetaan riittävän pitkillä sanoilla. Komento anagrammivoikko sana1 sana2 sana3 ... listaa annettujen sanojen kaikki hyväksytyt anagrammit sekä kertoo, kuinka paljon aikaa anagrammien testaaminen vei. Pitkien sanojen käsittely vie paljon aikaa, mutta voi antaa arvokasta tietoa voikko-fi:ssä olevista virheistä joita muilla menetelmillä olisi lähes mahdotonta löytää. Tästä syystä testi soveltuu erittäin hyvin niille, jotka haluavat auttaa Voikon kehityksessä prosessoriaikaa lahjoittamalla.
Pitkiä suomen kielen sanalistoja oikolukemalla voi testata kriteerejä 1 ja 5 sekä jossain määrin kriteeriä 3. Testikomennoksi käy vaikkapa time cat sanalista.txt | voikkospell | grep W: > virheet.txt.
Kriteeriä 3 (ja samalla kriteereitä 1 ja 5) voi testata samoin kuin edellä, jos käyttää valmiiden sanalistojen sijaan esimerkiksi suomenkielisessä Wikipediassa esiintyvien sanojen listaa. Tällaisia voi tehdä vaikkapa Gitistä löytyvän työkalun wp-wordlist avulla (käyttöesimerkkejä skriptin kommenteissa).
Kriteeriä 6 voi testata vertaamalla komennon cat sanalista | voikkohyphenate tulostetta vanhalla ja uudella voikko-fi:n versiolla.
Kriteeriä 7 varten ei ole olemassa mitään helppoja testejä. Toisaalta voikko-fi:n tapauksessa tämän kriteerin toteutuminen aiheuttaa harvoin ongelmia, sillä ohjelmointikielenä LEXC ei edes mahdollista täydellisesti jumiutuvien tai kaatuvien ohjelmien kirjoittamista. Hyvin pitkiin analyysiaikoihin päätyminen on kuitenkin mahdollista. Kriteerin 8 toteutumisen pitäisi toivottavasti selvitä muiden testien suorittamisen yhteydessä.
Erityisesti on huomattavaa, että voikko-fi:n (kuten muidenkin Voikon komponenttien) julkaisussa tavoitteena on pääsääntöisesti varmistaa, että uudet versiot ovat mitattavasti edellisiä parempia. Sitä, kuinka paljon versioiden välillä on milläkin osa-alueella edettävä ei ole määritelty. Tämän johdosta kehittäjät voivat keskittyä itseään kiinnostaviin alueisiin ja välttää liian sitovien tavoitteiden aiheuttaman stressin. Näyttäisi siltä, että noin kolmen kuukautta versioiden välillä on sopiva ohjeelliseksi julkaisuaikatauluksi, mutta tässäkin ratkaisut tehdään lopulta aina tilanteen mukaan.
Edellä listattujen menetelmien lisäksi käytössä on kehittäjätestausta varten skripti voikkotest, jonka tarkoituksena on varmistaa, että korjatut bugit pysyvät korjattuina myös myöhempien koodin uudelleenjärjestelyjen yhteydessä. Tästä skriptistä ei ole juurikaan hyötyä varsinaisessa testausvaiheessa muuten kuin varmistamaan, että testiympäristö on oikein asennettu.
Libreoffice-voikon testausta on vaikeaa helposti automatisoida. Perustoiminnallisuuden voi varmistaa valmiin testiasiakirjan avulla, mutta se ei (ainakaan toistaiseksi) kata kaikkia testausta vaativia alueita. Manuaalisessa testauksessa on tarpeen varmistaa ainakin puoliautomaattisen tavutuksen ja oikoluvun toiminta. Lisäksi pitää tarkistaa, että kirjoituksen aputyökalujen asetukset toimivat oikein.