YLEISKUVAUS Radar on sovellus, jolla voi luoda näennäisen oikeaa satunnaisdataa testaus-, demo - ja muihin tarkoituksiin. TIEDUSTELUT Juha Levonen 050 372 5797 juha.levonen@kantapeikko.fi Osa datasta generoidaan satunaisesti eri tavoin (esim. numero ja päiväykset). Dataa voidaan myös hakea olemassa olevista sovelluksen tauluista sekä SQL Serverin tauluista. Generoitu data voidaan viedä leikepöydälle, csv-tiedostoon tai suoraan SQL Serverin tauluun. Radar poikkeaa muista satunnaisdataa tuottavista sovelluksista mm. siten, että tällä saadaan data tietueen sisällä järkeväksi. Esimerkiksi huomioidaan sukupuoli, joten etu- ja toinen nimi kuuluu samalle sukupuolelle ja satunnaisesta syntymäpäivästä luotu henkilötunnus on oikein. Sähköpostiosoite kuuluu myös henkilölle jne.. Katuosoite löytyy paikkakunnalta ja postinumerokin kuuluu sille, kuten koordinaatitkin. Esim. tietovarastojen täytössä voidaan satunnaisdata hakea tauluista, joissa on oikeaa dataa. Näin varmistetaan hyväksyttävä data viite-eheyksien puolesta (foreign key).
OMINAISUUKSIA Päiväyksissä voidaan generoida alkupäivä halutulta aikaväliltä ja loppupäivä x päivää sen jälkeen. (Aika- ja päiväysformaatteja on erilaisia.) Vastaavasti voidaan generoida alku- ja loppuaikoja, jolloin loppuaika on satunnainen määrä sekunteja, minuutteja tai tunteja alkuajan jälkeen. Tätä omainaisuutta käytetään kun testataan esimerkiksi projektien kestoaikoja tai läpimenoaikoja. Kentät, jotka haetaan kerralla muodostavat datasetin. Nämä datasetit voidaan tallentaa uudelleen käyttöä varten. (Kullekin kentälle määritellä datatyyppi sekä mitä/miten se generoidaan). Kullekin sarakkeelle voidaan määritellä montako prosenttia siinä on satunnaisesti tyhjiä kenttiä (NULL). Todellisuudessakin joitain tietoja puuttuu. Montako tietuetta voidaan generoida riippuu mm. luotavien kenttien ja muistin määrästä. Esimerkiksi miljoonan tietueen generointi vei 9:llä kentällä n. 12 minuuttia.
SATUNNAISISTA NUMEROISTA Kullekin kentälle siis määritellään sen perusdatatyyppi (numero, päiväys, "hae arvo jostain taulusta" jne.). Perusdatatyyppiä täsmennetään eri tavoin. Esimerkiksi minkälainen numero halutaan. Numeroissa voidaan luoda satunnaisen luku halutulta väliltä (min- ja max-arvot). - Montako desimaalia on luvussa (ja onko desimaalienkin määrä satunnainen). - Lisätäänkö numeron perään jokin tarkistusnumero (Esim. viitenumeron tarkistusnumero tai Luhn moduli 10:n tarkistusnumero). - Ovatko numerot satunnaisesti jakaantuneet vai normaalijakauman (Gaussin kellokäyrä) mukaisesti. Numerot voidaan generoida myös sarjasta. Alkunumero ja askel voivat olla myös desimaalinumeroita. Esim 0, 0.5, 1.0, 1.5, 2.0... Jos halutaan vain tiettyjä numeroita satunnaisesti, annetaan ne puolipisteellä eroteltuina. Numeroon voidaan liittää haluttuja etu- ja/tai loppuliitteitä (lopputuloksena tulee merkkijono).
SATUNNAISISTA PÄIVÄYKSISTÄ JA KELLONAJOISTA Satunnainen päiväys voi olla halutulta aikaväliltä. Siinä voi olla kellonaikakin mukana. Sekä päiväys että kellonaika saadaan halutussa formaatissa. Päivämäärä voi olla myös kiinteä jne.. Kun johonkin päiväykseen tai aikaan halutaan myöhempi päiväys tai aika, niin kentälle kerrotaan missä kentässä on satunnainen pvm tai aika, johon lisätään myöhempi ajankohta. Esimerkki: Alla muokattavana oleva kenttä on "End time", johon halutaan aika, joka on satunnaisesti enintään 300 tuntia kentän "Start time" arvosta.
SATUNNAISISTA DATATYYPEISTÄ TEKSTI, SALASANA JA BOOLEAN Satunnainen teksti on tyyliä "Lorem Ipsum", jonka pituuden voi määritellä sekä sisältääkö teksti kappaleita vai ei. Satunnaisia erikoistekstejä ovat mm. GUID, IP 4 osoite ja auton rekisteritunnus. Voidaan myös antaa tiettyjä tekstejä, joista arvotaan satunnaisesti yksi. Jos tässä listassa arvo esiintyy useaan kertaan, todennäköisyys sen esiintymiselle on suurempi. Boolean datatyypi (true tai false) voi olla satunnainen tai kiinteä. Salasanojen luonnissa on kaksi vaihtoehtoa: 1) Vahva, mutta helposti muistettava. Perustuu 6-kirjaimiseen sanaan, jossa on satunnaisesti iso kirjain sekä numero. 2) Erittäin vahva salasana, jonka pituuden voi määritellä. Salasana sisältää erikoismerkkejä.
SATUNNAINEN ARVO OLEMASSA OLEVASTA TAULUSTA Satunnaista dataa voidaan hakea myös Radarin omasta tietokannasta ja/tai SQL Serverin taulusta. Määritellään mistä tietokannasta, sen taulusta ja kentästä poimitaan arvoja tai tekstejä. Merkkijono-kenttien kirjainten määritys. Jos samasta taulusta haetaan usempi kenttä, voidaan määritellä, että arvot tulevat samasta tietueesta. Esim. postinumero ja kaupunki. Taulusta voidaan poimia vain yksilöllisiä arvoja (edellyttäen että dataa on ainakin saman verran kuin sitä generoidaan). Arvoon voidaan lisätä etu- tai loppuliite. Jos on useampia liitteitä, näistä valitaan satunnaisesti yksi. Oikealla esimerkki, kun poimitaan alkuaineet-taulun samasta tietueesta arvoja. Kun lisätään loppuliite (Oy, Ab tai Ltd), saadaan fiktiivisiä yritysten nimiä.
KÄYTTÖLIITTYMÄ Määritellään mihin generoitu data viedään. 1) Datasetti sisältää kentät, jotka halutaan generoida. 2) Kun datasetin kenttää klikataan tulee se muokkaukseen ja määritellään mitä siihen generoidaan 3) Generoidaan data
PAIKALLISET DATATAULUT Radarissa on kymmenittäin valmiita tauluja valmiilla datalla, joista sitä voidaan satunnaisesti hakea. Käyttäjä voi muokata taulujen sisältöä ja jopa lisätä tarvittavia tauluja. Toiminta on vastaavaa, haetaanko dataa SQL Serverin taulusta vai paikallisesta. Paikallisissa tauluissa on tuhansittain tietueita, joissa on mm. tuoteluetteloita, nimiä, koodeja, valmiita lauseita (esim. sopimusehtoja), pankkitilejä jne.. Eli dataa jota usein tarvitaan erilaisiin paikkoihin. Useissa tauluissa on tekstit sekä suomeksi että englanniksi.
LISÄOSA: KOMBINAATIOT Usein testattaessa jotain pitää käydä erilaiset vaihtoehdot läpi. Radarin yksi lisäominaisuuksista on luoda annetulle joukolle mm. sen kombinaatiot ja permutaatiot. Esimerkki: Kombinaatiot Esimerkki: Permutaatiot