Tietokannan testidatageneraattorin toteutus Groovylla
Kaartinen, Ville-Matti (2009)
Kaartinen, Ville-Matti
Metropolia Ammattikorkeakoulu
2009
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-200901301268
https://urn.fi/URN:NBN:fi:amk-200901301268
Tiivistelmä
Tässä insinöörityössä suunniteltiin ja toteutettiin Ixonosille tietokannan testidatan generaattori. Ohjelma generoi testidatan, joka voidaan kirjoittaa tiedostoon ja sen avulla syöttää tietokantaan. Työ ohjelmoitiin Groovy-skriptauskielellä.
Ixonosin projektissa oli vastaavanlainen sovellus käytössä, mutta siinä oli muutamia ongelmia. Pääongelma oli, että ohjelmalla ei pystynyt generoimaan helposti testidataa, jossa taulut viittaavat toisiinsa.
Työn tavoitteena oli kehittää vanhan sovelluksen tilalle uusi sovellus, joka selviytyisi myös viittauksista eri taulujen välillä. Ohjelman piti olla myös helposti laajennettavissa ohjelmoimalla. Ixonos halusi myös lisää tietoa skriptauskielistä ja niiden hyödyistä. Tavoitteena oli saada kokemusta varsinkin Groovy-skriptauskielestä. Selvitettävänä oli, nopeuttaako tai helpottaako Groovy ohjelmointityötä.
Työ aloitettiin tutustumalla skriptauskieliin ja erikoistumalla Groovy-kieleen. Kun Groovykieleen oli tutustuttu, aloitettiin työn suunnittelu ja toteutus. Uusi ohjelma suunniteltiin niin, että tietokannasta muodostetaan malli keskusmuistiin. Malli sisältää tiedot tietokannan tauluista ja sarakkeista. Malli sisältää myös tiedot siitä, minkälaista tietoa mihinkin kohtaan halutaan generoida. Koska malli muodostetaan muistiin, on viittaukset mahdollista toteuttaa. Mallin muodostamisen jälkeen siihen generoidaan arvot ja siitä kirjoitetaan vastaavat INSERT-lauseet tiedostoon.
Tuloksena syntyi uusi testidatan generaattori, jonka avulla saadaan generoitua testidataa, jossa on viittauksia tietokannan eri taulujen välillä. Testidatan generointiin kehitettiin myös erilaisia generaattoreita, jotka liitetään malliin. Generaattorit ovat kukin erikoistuneet omanlaistensa arvojen generointiin. Ohjelma on myös helposti laajennettavissa.
Ixonosin projektissa oli vastaavanlainen sovellus käytössä, mutta siinä oli muutamia ongelmia. Pääongelma oli, että ohjelmalla ei pystynyt generoimaan helposti testidataa, jossa taulut viittaavat toisiinsa.
Työn tavoitteena oli kehittää vanhan sovelluksen tilalle uusi sovellus, joka selviytyisi myös viittauksista eri taulujen välillä. Ohjelman piti olla myös helposti laajennettavissa ohjelmoimalla. Ixonos halusi myös lisää tietoa skriptauskielistä ja niiden hyödyistä. Tavoitteena oli saada kokemusta varsinkin Groovy-skriptauskielestä. Selvitettävänä oli, nopeuttaako tai helpottaako Groovy ohjelmointityötä.
Työ aloitettiin tutustumalla skriptauskieliin ja erikoistumalla Groovy-kieleen. Kun Groovykieleen oli tutustuttu, aloitettiin työn suunnittelu ja toteutus. Uusi ohjelma suunniteltiin niin, että tietokannasta muodostetaan malli keskusmuistiin. Malli sisältää tiedot tietokannan tauluista ja sarakkeista. Malli sisältää myös tiedot siitä, minkälaista tietoa mihinkin kohtaan halutaan generoida. Koska malli muodostetaan muistiin, on viittaukset mahdollista toteuttaa. Mallin muodostamisen jälkeen siihen generoidaan arvot ja siitä kirjoitetaan vastaavat INSERT-lauseet tiedostoon.
Tuloksena syntyi uusi testidatan generaattori, jonka avulla saadaan generoitua testidataa, jossa on viittauksia tietokannan eri taulujen välillä. Testidatan generointiin kehitettiin myös erilaisia generaattoreita, jotka liitetään malliin. Generaattorit ovat kukin erikoistuneet omanlaistensa arvojen generointiin. Ohjelma on myös helposti laajennettavissa.