Testitapausten hämmentäminen, alan kuumin uutuus
15.7.2010, kirjoittanut Jussi KasurinenHei taas,
Vaihteeksi taas tien päältä kirjoittelen uutta artikkelia blogiin; tällä kertaa pohjois-Italiasta, Trentosta, johon tutkijanhommat pakottivat lähtemään kesken kesälomien. Hyvin, hyvin harmillista tämä tämmöinen.
No joka tapauksessa, kuuntelin aamusta Microsoftin edustajan pitämän palopuheen fuzzing-testauksesta, eli testausmenetelmästä, jossa olemassaolevaan järjestelmään syötetään toimivista testitapauksista tehtyjä variaatioita, joista on muutettu yhtä satunnaista kohtaa. Käytännössä siis eräänlaista evoluutiolaskennan ja satunnaisgeneraattorin luovaa käyttöä testisyötteitä rakentaessa. Idea onkin, että ohjelmalle lähetetään hämmentäviä ”fuzzed” testisyötteitä, joiden avulla voidaan rajapinnoista ja metodeista pukata pihalle ongelmia, joita ei tullut edes ajatelluksi. Luonnollisesti termi fuzzing tuleekin testicaseille tehtävästä toimenpiteestä, jota voidaankin suomalaisittain vaikka kutsua ”hämmentämiseksi”.
Jos vuosi sitten oli Intelin esiintyjä lupaamassa 128-ytimisiä prosessoreita lähiaikoina – eipä ole vielä kaupoissa näkynyt – on Microsoftin edustajalla hieman mielenkiintoisempi lähestymistapa. Fuzzing-systeemi toimii jo, ja pystyy tarkastamaan vaikka koko Windows 7:n moduulikirjaston, mutta ikävä kyllä ajoaika vielä toistaiseksi ylittää maailmankaikkeuden elinennusteen kaksikymmenkertaisesti. Jonkin verran koodia on siis vielä optimoitavana ennenkuin voidaan puhua tehokkaasta testausoraakkelista.
Lisäksi jos heittäydytään humoristeiksi, voidaan todeta ettei tämä uusi testauskone sitäpaitsi edes ole oraakkeli. Järjestelmä on nimittäin vähäpätöisemmin nimetty nimellä Sage, eli tietäjä. Oletettavasti oraakkelilta vaadittava ennaltanäkemisen ominaisuus toimitetaan sitten joskus Service Packissa, ja jumalaisia toimintoja varten joutuu ostamaan kalliimman Professional-version.
Täältä tähän,
Jussi Kasurinen
ohjelmointikurssit.com

