Testaus ja testausympäristöt

Slides:



Advertisements
Samankaltaiset esitykset
Open source testaustyökalut
Advertisements

Testaus ja testausympäristöt
Tiedonhaku Internetistä PODCASTING Katarina Andersson TU08se
© Jukka Harju, Viittausmuuttujat. © Jukka Harju, Viittaukset •Viittausmuuttuja sisältää tiedon siitä missä muistipaikassa olio.
JavaScript (c) Irja & Reino Aarinen, 2007
1 Java-kieleen pohjautuvien ohjelmien käyttökohteita Ohjelmat Appletit JavaBeans JavaScript Java Server Pages (JSP) Java Servletit J2ME, mobiililaitteet.
Suunnitelma ohjelmiston testaukseen
Ohjelman perusrakenteet
Jouni Juntunen Oulun seudun ammattikorkeakoulu Liiketalouden yksikkö Netbeans ja XAMPP Projektin luominen.
Luokkakaaviot Luokkakaaviot Tekninen suunnittelu.
Nämä kalvot on lisensoitu Creative Commons Attribution-ShareAlike 1
Jukka Juslin Poikkeukset ja niiden paikallistaminen * Jukka Juslin * Liittyy oppikirjan lukuun 11.
13. Pakkaukset.
Antti-Jussi Lakanen Nuorten peliohjelmointi 2009 / Jyväskylän yliopisto.
Kaisa Tuomisto TU08S1E  Tutkimuksen tavoitteet  Käytetyt hakusanat ja osumat  Linux  Tietolähteiden vertailua  Yhteenveto  Viitteet.
Ketterä testaus ja testauslähtöinen kehitys
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Yksinkertaiset graafiset syöttö- ja tulostustoiminnot.
Testaus Tiptopissa draft Mats Lindstedt, Mika Rintala.
Ketterä kehitys käytännössä – TFS & Meteor
(Joskus puhutaan myös komponenttitestauksesta.) Pienin kokonaisuus, joka on järkevä testata erikseen. ● Perinteisesti yksittäinen aliohjelma. ● Olio-ohjelmien.
Poikkeustenkäsittely  Mitä poikkeustenkäsittely tarkoittaa?  Poikkeuksen käsitteleminen  Poikkeusluokkien hierarkia  Poikkeuksen heittäminen 1.
Toiston tekeminen Javalla  Mikä toistorakenne on?  while toistorakenne  do-while toistorakenne  for toistorakenne 1.
Ohjelmoinnin tekniikkaa Sisällys for -lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely.
Ohjelman perusrakenteet
13. Hyvä ohjelmointitapa (osa 1)
1 Kertaus koetta varten oleellisista asioista Jukka Juslin.
Ohjelmointi.
Workshop: Test-first approach Pietu Pohjalainen. Testaus perinteisesti Tarkoituksena löytää virheitä ohjelmasta mutta mikä on virhe? Sijoittuu tavallisesti.
Java Java on Sun Microsystems yhtiön kehittämä laaja olio-pohjainen ohjelmointikieli, joka on laitteistoriippumaton. Laitteistoriippumattomuudessa on.
ict1td002 - Copyright Raine Kauppinen 1 Alkuarvot ja tyyppimuunnokset (1/5)  Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int.
String-vertailusta ja Scannerin käytöstä (1/2)
Varmuuskopiointi Valtteri, Simo My-tlpt09e Varmuuskopiointi Varmuuskopioinnilla yleensä tarkoitetaan tapahtumaa, jossa jokin tärkeä tieto kopioidaan.
Testauksen tutkimustulokset Marko Jäntti
Kuinka niitä käsitellään
HelloWorld-ohjelma. 5.2 Sisällys Lähdekoodi. Lähdekoodin (osittainen) analyysi. Lähdekoodi tekstitiedostoon. Lähdekoodin kääntäminen tavukoodiksi.
4. Attribuutit 4.1. Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2.
5. Kapselointi Yleistä Kapseloinnilla (encapsulation) tarkoitetaan luokan tietojen ja toimintojen pakkaamista yhdeksi suojatuksi kokonaisuudeksi.
C 1. Testaus on ”sarja toimintoja” Itse asiassa, testaus on vuorovaikutusta, jota rytmittää ohjelmiston arviointi. Vaikka on hyödyllistä tunnistaa sarja.
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Näppäimistöltä lukeminen Sisällys Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä. In -luokka.
Hyvä ohjelmointitapa (osa 2) Yleistä Lisää hyviä ohjelmointikäytäntöjä: − Jaa pitkä koodi osiin. − Käytä attribuutteja säästeliäästi.
Poikkeukset Yleistä Virheeseen varautuminen tarkoittaa sitä, että ohjelmoija huomioi koodia kirjoittaessaan ajonaikaisen virheen mahdollisuuden.
OHJELMOINTITAITO ICT02D 12 ECTS. OPINTOJAKSON TOTEUTUS  KESTO: –  AVOIMEN OPISKELIJAT: – YKSI LUOKA (SUOMI) – LUOKKA ICT02O-1.
@ Leena Lahtinen Toistorakenne Ohjelmassa toistetaan tiettyjä toimenpiteitä monta kertaa peräkkäin Toisto noudattaa sille kuuluvia tarkkoja standardoituja.
Aakkosnumeerinen tieto Tarkoittaa kaikkea muuta tietoa paitsi laskentaan tarkoitettuja lukuja Muuttujan tietosisältö on siis tekstitietoa Muuttujan tietotyypiksi.
Kontrollirakenteet laajemmin
Staattinen analyysi (1/4) ● Mitataan koodista arkkitehtuuria kuvaavia lukuja ● Tarkoituksena tunnistaa ongelmalliset kohdat ja suunnitteluvirheet ● Korrelaatiota.
Johdetun luokan olion alustus tMyn1 Johdetun luokan olion alustus määrätyillä arvoilla Kun ohjelmassa esiintyy johdetun luokan olion määrittely, järjestelmä.
Java - Tietokanta. JDBC=Java database connectivity  ODBC:n kaltainen ohjelmointiliittymä SQL- tietokantoihin  Koostuu Java-kehitysympäristön (esim.
Funktio.
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
Refaktorointi ”Te olette tehneet tätä ennenkin”. Mitä on refaktorointi? (1/2) prosessi ohjelmakoodin laadun parantamiseksi ohjelman sisäisen rakenteen.
Mikroskoopin keksiminen ja mikroskooppityypit
Valintarakenne valintarakenne alkaa aina kysymyksellä eli ehdolla ehto tarkoittaa, että muuttujan sisältöä verrataan toisen muuttujan sisältöön tai vakioon.
Ohjausrakenteet Määräävät ohjelmakoodin suoritusjärjestyksen Ehtolause if – else on muotoa if (lauseke) lause1 else lause2 Jos lauseke on tosi, niin suoritetaan.
C-ohjelman käännösvaiheet
.NET ohjelmointi C#-kielellä RäsSe, lokakuu 2004.
1.0 TE DiplomityöEsitelmä/ / JT Soveltuvuustutkimus Lifebelt-ohjelman ideologian käytettävyydestä olio- orientoituneeseen ohjelmointiin Jukka.
Yksikkötestaus ● Yksikkötestauksella tarkoitetaan lähdekoodiin kuuluvien yksittäisten osien testaamista. Termi yksikkö viittaa ohjelman pienimpiin mahdollisiin.
5. Kapselointi.
7. Hyvä ohjelmointitapa..
Aakkosnumeerinen tieto
14. Hyvä ohjelmointitapa.
13. Pakkaukset.
OHJELMOINTITAITO ICT02D 12 ECTS.
OHJELMOINTITAITO ICT02D 12 ECTS.
13. Pakkaukset.
4. Luokan testaus ja käyttö olion kautta
OHJELMOINTITAITO ICT02D 12 ECTS.
Esityksen transkriptio:

Testaus ja testausympäristöt 20.9.2013 Yksikkötestit Yksikkötestaus Testaus ja testausympäristöt

20.9.2013 Yksikkötestit Yksikkötestaus Yksikkötestauksessa yksittäisiä lähdekoodin palasia testataan vähän kerrallaan. Yksikkö tarkoittaa pienintä testattavissa olevaa sovelluksen osaa, esimerkiksi yksi funktio. Yksikkötestauksen suorittaja on lähtökohtaisesti itse ohjelmoija, kun yksikkötestaus sisäistyy osaksi toimintatapaa ohjelman suoritusta alkaa ajatella osittain testitapausten kautta (toimiiko ohjelma niillä ja niillä syötteillä oikein). Jos ei yksikkötestata niin... Painetaan F5 ja ryhdytään debuggaamaan ohjelmaa kun jokin ei tunnu toimivan Sirotellaan System.out.println tai echo –lauseita sinne tänne ja yritetään haarukoida kohta jossa muuttujien arvot menevät pieleen. Yksikkötestauksen etu on toistettavuus, kerran tehty testi ajettavissa joka kerta kun ohjelma käännetään uudelleen.

Hyödyt Yksikkötestaus kertoo yksiselitteisesti että koodi toimii. 20.9.2013 Yksikkötestit Hyödyt Yksikkötestaus kertoo yksiselitteisesti että koodi toimii. Ei vielä kerro tehtyjen yksikkötestien laadusta, kattavuus jää yksikkötestien tekijän harteille. Kun yksikkötestit on kerran laadittu ne voidaan helposti ajaa myöhemmin kun koodiin tehdään muutoksia Varmistetaan, että muutosten jälkeen koodi toimii edelleen eikä mukaan ole päässyt uusia bugeja Yksikkötestit toimivat eräänlaisena dokumentointina koodista Koodia voidaan tulkita testitapausten avulla

Yksikkötestin rakenne 20.9.2013 Yksikkötestit Yksikkötestin rakenne Yksikkötestissä tietty funktio ajetaan halutuilla syötteillä ja verrataan lopputulosta tiedettyyn Funktion pitäisi kertoa kaksi lukua keskenään Testataan toimivatko 2 x 2 = 4 ja 0 x 2 = 0 Tavallisimmat assert –metodit assertTrue() assertEquals() assertNotNull() Parametrien määrä ja tyypit vaihtelevat tarpeen mukaan Voidaan verrata onko syöte tosi, ovatko syötteet samoja tai verrata NULL –arvoon.

Mitä pitää mielessä kun teet yksikkötestejä 20.9.2013 Yksikkötestit Mitä pitää mielessä kun teet yksikkötestejä Pidä yksikkötestit pieninä ja nopeina Test a little, code a little, test a little.. Yksikkötestien tulisi olla automatisoituja ja ne ajetaan automaattisesti kun sovellus käännetään Korjaa vialliset testit välittömästi Yksikkötestauksessa testataan yhtä luokkaa, jokaisella luokalla tulisi olla yksi testiluokka. Pyri nimeämään testit järkevästi ja havainnollisesti. Testejä joudutaan mahdollisesti ajamaan uudestaan pitkänkin ajan päästä Pyri hajoittamaan oma koodisi, mieti miten funktio käyttäytyy erilaisilla syötteillä

Lähteitä ja linkkejä Visual Studio, Verifying Code by Using Unit Tests 20.9.2013 Yksikkötestit Lähteitä ja linkkejä Visual Studio, Verifying Code by Using Unit Tests http://msdn.microsoft.com/en-us/library/dd264975.aspx Wikipedia: Unit testing http://en.wikipedia.org/wiki/Unit_testing Unit Testing Guidelines http://geosoft.no/development/unittesting.html Sekalaisia http://clarkware.com/articles/JUnitPrimer.html http://www.vogella.de/articles/JUnit/article.html