Testaussuunnitelmat. Luennon tavoitteista. Motivointia. Haikala ja Märijärvi, Ohjelmistotuotanto. Pressman, Software Engineering

Koko: px
Aloita esitys sivulta:

Download "Testaussuunnitelmat. Luennon tavoitteista. Motivointia. Haikala ja Märijärvi, Ohjelmistotuotanto. Pressman, Software Engineering"

Transkriptio

1 Testaussuunnitelmat Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Haikala ja Märijärvi, Ohjelmistotuotanto Pressman, Software Engineering 1

2 Tavoitteista Luentojen jälkeen opiskelijan tulisi osata: 2

3 Sisällöstä Tavoitekalvon asioita. 3

4 Motivointia Tärkeä laadunvarmistamisen väline. Projektien resursseista jopa % saatetaan käyttää testaukseen. Ideaalisessa tilanteessa kutakin suunnittelijaa kohden on yksi testaaja. 4

5 Testaus ja projektin vaiheet Testisuunnitelmaa voi alkaa muodostamaan jo silloin, kun ensimmäisiä (suht. stabiileja) vaatimuksia löytyy. Vaatimusten kiinnityttyä voi niiden pohjalta jo kirjoittaa paljon testitapauksia. (Vaatimusmäärittelyyn on tulee myös vaateita testauksesta.) 5

6 Toteutussuunnitelman valmistuessa myös yksityiskohtaisia yksikkötestitapauksia voi alkaa muodostamaan. Sitä mukaan, kun ohjelmistokomponentit valmistuvat, niitä voi testata. Lopuksi suoritetaan integrointitestaus (kaikki komponentit samassa). Kustakin suoritetusta testistä täytetään testiraportti, joka myös kuuluu kurssisuoritukseen ja kuuluu projektin tuotoksiin. (Ne myös toimitetaan toimeksiantajalle.) Testisuunnitelma on tarkoituksellisesti laitettu katselmoitavaksi ennen toteutussuunnitelmaa. Tämä pakottaa pohtimaan asiaa myös vaatimusten perusteella! 6

7 Testauksen perusteita, tavotteista Testaus tarkoittaa prosessia, jossa käytetään ohjelmaa ja tavoitteena on löytää virhe. Hyvä testitapaus on sellainen, jolla on korkea todennäköisyys löytää joku vielä havaitsematon virhe. Onnistunut testi on sellainen, joka löytää vielä havaitsemattoman virheen. Siis tavoitteena: läytää testejä, jotka systemaattisesti paljastavat erilaisia virheluokkia ja tarvitsevat siihen mahdollisimman vähän aikaa ja vaivaa. 7

8 Toinen hyöty: testaus näyttää, että ohjelmiston toiminnot toimivat määrittelyjen mukaan ja että tehokkuusvaatimukset saavutetaan. Antaa hyvän kuvan ohjelmiston luotettavuudesta ja jotain suuntaa ohjelmiston yleisestä laadusta. Testaus ei voi osoittaa virheettömyyttä, vain että jotain virheitä löytyy. 8

9 Periaatteista Kaikki testitapaukset pitäisi olla mahdollista jäljittää asiakkaan vaatimuksiin. Testit pitäisi suunnitella huomattavan paljon aikaisemmin ennen kuin itse testaaminen alkaa. Pareto-optimaalisuuden periaate ohjelmistojen testauksessa. Testauksen pitäisi alkaa pienistä ja jatkua isoilla. Kaiken läpikäyvä testaus ei ole mahdollista. Jotta testaus olisi tehokasta, tulisi jonkin kolmannen osapuolen suorittaa se. 9

10 Testattavuus Testaus on vaikeaa, mutta sitä voi helpottaa, mikäli tietyt asiat otetaan huomioon ohjelmistoa suunniteltaessa ja toteutettaessa. Jotkin metriikat voivat myös kertoa testattavuudesta. Kuinka ison osuuden testit kattavat tuotteesta (tai koodista)? Seuraavien 7 kalvoja voi käyttää tarkastuslistoina hyvän testattavuuden takaamiseksi. Esim. suunnitelmien muodostamisen aikana, ja katselmointien yhteydessä. 10

11 Operoitavuus ( mitä paremmin se toimii, sitä helpommin se voidaan testata ): Systeemissä on useita ohjelmointivirheitä (nämä lisäävät analyysin ja raportoinnin kuormaa testausprosessille). Yksikään ohjelmointivirhe ei estä testien suorittamista loppuun. Tuote kehittyy toiminnallisissa vaiheissa (sallii yhtäaikaisen kehityksen ja testauksen). 11

12 Havaittavuus ( mitä näet, sitä testaat ): Erillinen tuloste generoidaan kullekin syötteelle. Systeemin tilat ja muuttujat ovat näkyvissä tai kysyttävissä suorituksen aikana. Vanhat systeemin tilat ja muuttujat ovat näkyvissä tai kysyttävissä (logit). Kaikki tulostuksiin vaikuttavat tekijät ovat näkyvissä. Väärä tulostus havaitaan helposti. Sisäiset virheet havaitaan automaattisesti sisään rakennetun testauksen avulla. Sisäiset virheet raportoidaan automaattisesti. Lähdekoodi on käytettävissä. 12

13 Kontrolloitavuus ( ohjelman parempi kontrollointi auttaa testauksen automatisoinnissa ja optimoinnissa ): Kaikki mahdolliset tulostukset voidaan generoida jollain syötteiden kombinaatiolla. Kaikki koodi on suoritettavissa jollain syötteiden kombinaatiolla. Testaaja voi kontrolloida suoraan ohjelmiston ja laitteiston tiloja ja muuttujia. Syöte- ja tulostusformaatit ovat yhdenmukaisia (johdon-) ja rakenteellisia. Testit voidaan tarkoituksenmukaisesti määrittää, automatisoida ja uusia. 13

14 Hajautettavuus (ositettavuus?, testauksen kohdetta muuttamalla voidaan nopeasti eristää ongelmakohdat ja suorittaa uusia testejä ): Ohjelmisto koostuu erillisistä moduleista. Ohjelmiston modulit voidaan testata erikseen. 14

15 Yksinkertaisuus ( Vähemmän testattavaa, nopeampaa... ): Toiminnallisuus yksinkertaista (vaatimuksiin nähden ei toteuteta turhia toimintoja, vs. jokin toinen toiminto/tavoite ohj. kehityksessä). Rakenteellinen yksinkertaisuus (arkkitehtuuri on modulaarista, jotta ongelmat eivät leviä). Koodin yksinkertaisuus (noudatetaan koodausstandardia, mikä helpottaa formaaleja tarkastuksia ja ylläpitoa). 15

16 Vakaus ( Vähemmän muutoksia, vähemmän häiriöitä testauksessa ): Ohjelmiston muutokset harvinaisia. Ohjelmiston muutokset kontrolloitua. Ohjelmiston muutokset eivät vanhenna nykyisiä testejä. Ohjelmisto toipuu hyvin virhetilanteista. 16

17 Ymmärrettävyys ( Mitä enemmän tietoa on käytettävissä, sitä paremmin voidaan testata ): Suunnitelmat ymmärretään hyvin. Ulkoisten, sisäisten ja jaettujen komponenttien suhteen ymmärretään hyvin. Suunnitelmien muutoksista tiedotetaan. Tekninen dokumentaatio on jatkuvasti käytettävissä. Tekninen dokumentaatio on hyvin organisoitua. Tekninen dokumentaatio on yksityiskohtaista. Tekninen dokumentaatio on täsmällistä (paikkansapitävää). 17

18 Hyvän testin ominaisuudet Löytää hyvin todennäköisesti virheen. Testaajan tulisi ymmärtää hyvin ohjelmisto ja miettiä, kuinka ohjelmisto voisi tehdä virheen. Hyvä testi ei ole tarpeeton. Aika ja resurssit ovat rajallisia. Eri testeillä tulisi olla omat tarkoituksensa. Hyvä testi on lajinsa paras. Joskus ehditään suorittamaan vain joitakuita isommasta joukosta. Ei ole liian yksinkertainen eikä mutkikas. Sarja testejä saattaa toimia yhtenäkin mutta voivat tuoda sivuvaikutuksia. 18

19 Testitapausten suunnittelu Erilaisia testitapausten suunnittelumenetelmiä löytyy runsaasti. Tarjoavat systemaattisen lähestymisen testaamiseen. black-box -testaus, vaatimusten perusteella tiedetään, mihin ohjelman tulisi kyetä, ja testeillä osoitetaan, että ohjelma siihen kykenee. white-box -testaus, tiedetään ohjelman sisäistä rakennetta, ja testeillä varmistetaan, että kunkin vaiheen jälkeen välitulokset ovat määrittelyjen mukaisia (tarkistuksia sopivin välietapein). 19

20 White-box -testaus Glass-box -testaus. Käytetään ohjelmiston kontrollirakenteita testitapausten muodostamiseen. Takaa, että modulin sisäiset toisistaan riippumattomat polut kokeillaan ainakin kerran lävitse. Kokeillaan kukin looginen ehto sekä true- että false-vaihtoehdoin. Kokeillaan kukin silmukka raja-arvoilla ja muillakin. Kokeillaan sisäisiä tietorakenteita niiden toiminnan pätevyys (oikeellisuus). 20

21 Kaikkea vaivaa ei kannata laittaa black-box -testaukseen. Seuraavia kohdat puoltavat white-box -testausta: Loogiset virheet ja väärät oletukset ovat käänteisesti suhteellisia siihen todennäköisyyteen, että ohjelman tällainen toiminto tai polku suoritetaan. Usein luullaan, että jotain loogista polkua ei todennäköisesti suoriteta, kun sitä itseasiassa suoritetaan säännöllisesti. Kirjoitusvihreet ovat satunnaisia. 21

22 Peruspolkujen testaus Johdetaan ohjelman toimintarakenteen looginen mutkikkuusmittari. Mittarin avulla muodostetaan perusjoukko suoritettavia polkuja. Johdettavat testitapaukset peruspoluille takaavat, että jokaista ohjelman osaa (käskyä, ilmaisua) kokeillaan ainakin kerran. 22

23 Virtakaaviot: Kuvataan ohjelman toimintarakenne graafisesti. if while until case Kaavioissa usein peräkkäistoiminnot supistetaan yhdeksi solmuksi (ts. vasemmanpuoleisimman kaltaisista ketjuista päästään eroon). Yksi solmu tällöin voi kuvata useaa ohjelman käskyä. 23

24 Toisistaan riippumattomat polut muodostavat perusjoukon. Ensin otetaan yksi polku, jossa käydään kussakin solmussa korkeintaan kerran. Sitten muodostetaan uusia polkuja siten, että kussakin uudessa polussa tulee vähintää yksi uusi solmu mukaan. Saatava polkujen lukumäärä antaa yhden mittarin ohjelman mutkikkuudelle. (syklomaattinen kompleksisuus, suomennos?) 24

25 1 4 2, Esimerkistä löytyy yksi case-lause ja yhdet do-until- ja while-silmukat. Eri polkuja löytyy 4 kpl: 1-2,

26 1. Muodosta koodin tai toimintarakenteen (-suunnitelman) perusteella kaavio. 2. Etsi toisistaan riippumattomat polut (peruspolut). 3. Valmista testijoukko, joka käy läpi kunkin peruspolun. Kohdassa kaksi on mahdollista tarkistaa, kuinka monta polkua tulisi kaaviosta löytää. Tämä luku on E N + 2, missä E on särmäjoukko ja N solmujoukko. 26

27 Verkon matriisiesityksistä Kukin särmä, esimerkiksi särmä 1 4, voidaan esittää matriisissa siten, että riviltä yksi on merkitty sarake neljä jotenkin. Esimerkiksi numerolla yksi. Jos kahden solmun välillä ei ole yhteyttä, käytetään nollaa, tällainen solmupari esimerkissä on 1 ja 8. 27

28 Käyttämällä jotain muuta särmien yhteyspainoa, lukua 0 ja 1 väliltä, voidaan saada lisäinfoa/automatisoida testausta: luku voi kertoa särmän kulkemistodennäköisyyden särmään liittyvän suoritusajan särmän suoritukseen liittyvän muistitarpeen muut särmän suorituksen aikana tarvittavat resurssitarpeet. Lisäksi voidaan laskea, kuinka monta kertaa kutakin särmää pitkin on kuljettu. 28

29 Kontrollirakenteiden testaus Seuraavat täydentävät peruspolkujen testausta. Ehtojen testaus Tietovirtojen testaus Silmukoiden testaus 29

30 Ehtojen testaus Boolen muuttujat Boolen operaattorit: tai, ja, ei (negaatio) Aritmeettiset operaattorit: <,>,,,, = Relationaalinen ilmaisu: E 1 < E 2 Yksinkertaiset ehtolauseet: rel. ilmaisu tai boolen muuttuja (negaatio saa olla edessä) Yhdistetty ehtolause: kaksi tai useampia yks.kert. ehtolauseita, sulkeistamiset 30

31 Virheitä voi löytyä: boolen operaattoreista (väärä, puuttuva, ylimääräinen) boolen muuttujista sulkeistamisista relationaalisista operaattoreista aritmeettisista operaattoreista 31

32 Haaroittumistestit, (true-, false-vaihtoehdot) Alatestaus (domain-), (aritmeettisen operaattorin eri syötealueet) Jos muuttujia paljon, ei kaikkia syötealueita voi testata. Haaroittumis- ja relaatio-operaattoreiden testaus. Käyttää ehtorajoitteita. Ks. Pressman. 32

33 Tietovirtatestaus Valitaan ohjelman testipolkuja määritelmien ja muuttujien käytön perusteella. Määritelmä-käyttö-ketju-testausstrategia. Ei välttämättä käy kaikkea koodia lävitse. Käyttökelpoinen, jos ohjelmassa sisäkkäisiä ehto- ja toistolausekkeita. Lisätietoa ja esimerkkejä, ks. Pressman. 33

34 Silmukoiden testaus Yksinkertainen, rakenteeton, sisäkkäiset ja peräkkäiset. 34

35 Yksinkertaiset silmukat Oletetaan, että n on annettu yläraja silmukan suorituskerroille. Tehdään seuraavia tapauksia varten testit. 1. Hypätään silmukan yli. 2. Yksi kierros. 3. Kaksi kierrosta. 4. m kierrosta, missä m < n. 5. n 1, n, n + 1 kierrosta. 35

36 Sisäkkäiset silmukat Jos suoraan sovelletaan edellisen kalvon tapaa, kasvaa testien määrä nopeasti epäkäytännölliseksi. Tätä voidaan yksinkertaistaa: Aloitetaan sisimmästä silmukasta. Muut silmukat (niiden laskurimuuttujat) asetetaan minimiarvoikseen. Tehdään ed. kalvon testi sisimmälle. Muiden silmukkojen laskurit paikallaan. Testataan seuraavaksi sisimpää silmukkaa. Tätä uloimmilla minimi arvot ja sisimmillä puolestaan tyypilliset arvot. Jatketaan, kunnes kaikki tasot testattu. 36

37 Peräkkäiset silmukat Kuten yksinkertaiset, jos ovat toisistaan riippumattomia. Jos silmukat riippuvat toisistaan, esimerkiksi jos jälkimmäisen silmukan laskuri alustetaan edeltävän laskurin arvolla, niin suositellaan sisäkkäisten silmukoiden tapaa testata. Rakenteettomat silmukat Nämä silmukat tulisi rakentaa uudestaan, jos mahdollista. 37

38 Black-box -testaus Perustuu toiminnallisiin vaatimuksiin. Täydentää white-box -testausta, ei korvaa. Voi paljastaa: väärät, väärin toimivat tai puuttuvat toiminnot (käyttö)liittymävirheet tietorakenteiden virheet, ongelmat ulkoisissa tietokannoissa tehokkuusongelmat alustus- ja päättöongelmat 38

39 Testeillä halutaan vastata mm. seuraaviin kysymyksiin: Kuinka toiminnallinen pätevyys testataan? Mitkä syöteluokat muodostavat hyviä testitapauksia? Onko systeemi erityisen herkkä tiettyihin syötteisiin? Kuinka dataluokkien rajat eristetään? Millä datamäärillä systeemi toimii? Mitä vaikutuksia tietyillä datan kombinaatioilla on systeemin toiminnalle? 39

40 Verkkoihin perustuvat testausmenetelmät Black-box-menetelmissä täytyy ymmärtää objektit (tietoalkiot, ohjelmistokomponentit, -modulit) ja niiden väliset suhteet. Sen jälkeen testein varmistetaan, että odotetut suhteet keskenään. Suhteet (särmät) ja objektit (solmut) voi esittää verkkoina. Särmille ja solmuille voi antaa myös painoja. Särmä voi olla kaksisuuntainen ja kahden solmun välillä voi olla useita samansuuntaisia särmiä. 40

41 Seuraavat testausmenetelmät käyttävät verkkoja hyväkseen. Niissä solmujen ja särmien tulkinnat vaihtelevat toisistaan. Transaktiovirtojen mallinnus. Äärellinen tilamallinnus. Tietovirtamallinnus. Ajoitusten mallinnus. Ensin määritetään solmut ja niiden painot (objektit ym.) Seuraavaksi määritetään särmät ja niiden painot. Särmille annetaan nimet. (Kontrollivirtoja ei välttämättä tarvitse nimetä.) 41

42 Jos silmukoita, voidaan soveltaan yltä löytyviä kalvoja. Transitiivisuus voi johtaa tiettyihin testeihin (a johtaa b johtaa c, siis a johtaa b:hen). Halutaan testata myös symmetrisyyttä (undo ja sen peruutus). Refleksiivisyys?? (Ks. Pressman.) Testeillä halutaan varmistaa solmujen peitto. Ja särmien peitto. 42

43 Ekvivalenssiluokkiin perustuva testaus (Equivalence partitioning) Black-box -menetelmä, jossa syötteiden lähtöjoukko jaetaan luokkiin ja noista luokista valitaan edustusyksilöt testeihin. Perustuvat usein syöte-ehtoihin: 1. Jos kyse välistä (range), 2. Jos vaatii tiettyä arvoa, 3. Jos määrittää joukon alkion, 4. Jos on boolen syöte-ehto, niin kussakin muodostetaan yksi käypä ja kaksi ei-käypää ekvivalenssiluokkaa. Ks. Pressman. 43

44 Raja(reuna)-arvojen analyysi Testataan reuna-arvoja. Täydentää edellisen kalvon menetelmää: testataan testiluokan reuna-arvot. Voidaan myös testata tulos(tus)arvoja. Joukko samanlaisia ehtoja kuin ed. kalvossa: Esim. jos rajat a ja b, testataan niillä ja lisäksi a 1 ja a + 1 arvoilla. Ks. Pressman. 44

45 Vertailutestit Jos tarvitaan kahdennettuja systeemejä (esim. luotettavuuskriittisissä ympäristöissä), saatetaan kehittää kaksi (tai useampia) toisistaan riippumatonta systeemiä tekemään samaa asiaa. Voidaan testata yhtä aikaa samoilla testisyötteillä ja vertailla tuloksia. Kahden systeemin kehitys saattaa kannattaa, vaikka vain yksi toimitettaisiin, jos kyse hyvin kriittisestä sovelluksesta. 45

46 Erityiset ympäristöt ja sovellukset GUI Asiakas-palvelin -sovellukset. Dokumenttien ja avustustoimintojen testaus. Reaaliaikasysteemien testaus

47 Testausstrategiat Tarjotaan ohjelmiston kehittäjälle, laatuorganisaatiolle jne suuntaviivoja. 47

48 Määritä systeemin vaatimukset mitattavalla tavalla (ennen testejä). Aseta selkeät tavoitteet testeille. Ymmärrä käyttäjiä ja kehitä kullekin käyttäjäryhmälle oma profiilinsa (kuvauksensa). Kehitä testisuunnitelma, joka korostaa nopean syklin testausta. Rakenna luotettavaa ohjelmistoa, joka on rakennettu (suunniteltu) testaamaan itse itseänsä. Käytä tehokkaita formaaleja katselmointeja ennen testejä. Katselmoi formaalisti myös testisuunnitelma ja testitapaukset. Kehitä jatkuvan parantamisen menetelmä testauprosessille. 48

49 Yksikkötestaus Modulit eivät ole toimivia ohjelmia, joten niitä varten täytyy rakentaa omat ajurit (pääohjelma, joka syö tarvittavat syötteet ja antaa ne modulille). Lisäksi tarvitaan tynkäalimodulit antamaan haluttuja syötteitä. Testataan modulin vastuiden rajat, paikalliset tietorakenteet, liittymäpinnat, riippumattomat polut ja virheiden käsittelypolut. 49

50 Integrointitestaus Ei-lisäävä (non-incremental) testaus, big bang, usein ajanhukkaa. Incrementaalisia ovat: 1. jäsentävä (top-down) integrointi (syvyys- tai leveys-ensin tavat). 2. kokoava (bottom-up) integrointi 3. regressio(takautuvuus, kuormitus)testaus Voileipästrategia, top-down ja bottom-up yhdistelmä. 50

51 Kuvaavat järjestystä, jolla moduleja liitetään kokonaisuuteen. Ensimmäisessä pääkontrollimoduli toimii ajurina. Täytyy käyttää tynkäalimoduleja, joita sitten korvataan vuorollaan varsinaisilla moduleilla. Toisessa tehdään klustereita tai kokoelmia, niille täytyy rakentaa omia ajureitaan. Klustereita sitten yhdistellään yhä isommiksi kokonaisuuksiksi jahka ne on saatu testattua. Kolmannessa kokeillaan osa jo yksittäin testatuista toiminnoista (integrointitestauksen aiemmassa vaiheessa), jotta ei ole tullut sivuvaikutuksia. Lisäksi varmistutaan, että mahdollisten korjausten ym. muiden jälkeen kaikki pelaa halutusti. 51

52 Hyväksymis(validointi)testaus Asiakas asettaa ohjelmalle kohtuullisia odotuksia, joista ohjelman on suoriuduttava, jotta hyväksymistestit näyttäisivät vihreää valoa. Hyväksymistestikriteerit: black-box testitapauksia. Konfiguroinnin katselmointi: onko ohjelmistotuotteen kaikki tarvittavat palaset mukana? Alfa- ja betatestaus: hyväksymistestauksia loppukäyttäjillä (alfa kehittäjän ja beta asiakkaan luona). 52

53 Systeemitestaus 53

Kontrollipolkujen määrä

Kontrollipolkujen määrä Testaus Yleistä Testaus on suunnitelmallista virheiden etsimistä Tuotantoprosessissa ohjelmaan jää aina virheitä, käytettävistä menetelmistä huolimatta Hyvät menetelmät, kuten katselmoinnit pienentävät

Lisätiedot

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa:

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa: Testaus käsite Sekalaista asiaa Sami Kollanus 15.11.2006 Jos ajatellaan, että = V&V, voidaan erottaa: Staattinen Dynaaminen Toisaalta voidaan määritellä Myersin (1979) mukaan: Testaus on ohjelman suoritusta,

Lisätiedot

Ohjelmiston toteutussuunnitelma

Ohjelmiston toteutussuunnitelma Ohjelmiston toteutussuunnitelma Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä luku antaa yleiskuvan koko suunnitteludokumentista,

Lisätiedot

Ohjelmiston testaus ja laatu. Testausmenetelmiä

Ohjelmiston testaus ja laatu. Testausmenetelmiä Ohjelmiston testaus ja laatu Testausmenetelmiä Testausmenetelmiä - 1 Testauksen menetelmien päälähestymistapoina ovat black-box testi testaaja ei voi tutkia lähdekoodia testaus perustuu sovellukselle suunnitteluvaiheessa

Lisätiedot

Harjoitustyön testaus. Juha Taina

Harjoitustyön testaus. Juha Taina Harjoitustyön testaus Juha Taina 1. Johdanto Ohjelman teko on muutakin kuin koodausta. Oleellinen osa on selvittää, että ohjelma toimii oikein. Tätä sanotaan ohjelman validoinniksi. Eräs keino validoida

Lisätiedot

11. Javan toistorakenteet 11.1

11. Javan toistorakenteet 11.1 11. Javan toistorakenteet 11.1 Sisällys Laskuri- ja lippumuuttujat. Sisäkkäiset silmukat. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin

Lisätiedot

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausdokumentti Kivireki Helsinki 17.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Anu Kontio Ilmari

Lisätiedot

12. Javan toistorakenteet 12.1

12. Javan toistorakenteet 12.1 12. Javan toistorakenteet 12.1 Sisällys Yleistä toistorakenteista. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirheitä. Silmukan rajat asetettu

Lisätiedot

12. Javan toistorakenteet 12.1

12. Javan toistorakenteet 12.1 12. Javan toistorakenteet 12.1 Sisällys Yleistä toistorakenteista. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirheitä. Silmukan rajat asetettu

Lisätiedot

Ohjelmiston testaus ja laatu. Testaustasot

Ohjelmiston testaus ja laatu. Testaustasot Ohjelmiston testaus ja laatu Testaustasot Testauksen vaihejako Tarpeet / sopimus Järjestelmätestaus Hyväksymiskoe Määrittely testauksen suunnittelu ja tulosten verifiointi Arkkitehtuurisuunnittelu Moduulisuunnittelu

Lisätiedot

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä

Sisällys. 11. Javan toistorakenteet. Laskurimuuttujat. Yleistä Sisällys 11. Javan toistorakenteet Laskuri- ja lippumuuttujat.. Tyypillisiä ohjelmointivirheitä: Silmukan rajat asetettu kierroksen verran väärin. Ikuinen silmukka. Silmukoinnin lopettaminen break-lauseella.

Lisätiedot

Sisällys. 12. Javan toistorakenteet. Yleistä. Laskurimuuttujat

Sisällys. 12. Javan toistorakenteet. Yleistä. Laskurimuuttujat Sisällys 12. Javan toistorakenteet Ylstä toistorakentsta. Laskurimuuttujat. While-, do-while- ja for-lauseet. Laskuri- ja lippumuuttujat. Tyypillisiä ohjelmointivirhtä. Silmukan rajat asetettu kierroksen

Lisätiedot

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Koskelo Helsinki 16.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Tom Bertell Johan

Lisätiedot

Laadunvarmistustekniikat

Laadunvarmistustekniikat Laadunvarmistustekniikat Ohjelmistojen laadunvarmistustekniikoita: testaus (testing) ohjelman suorittamista tarkoituksena löytää virheitä tarkastukset (inspections, reviews) asiantuntijoiden suorittamia

Lisätiedot

58160 Ohjelmoinnin harjoitustyö

58160 Ohjelmoinnin harjoitustyö 58160 Ohjelmoinnin harjoitustyö Testaus 30.3.2009 Tuntiop. Sami Nikander sami.nikander@helsinki.fi 58160 Ohjelmoinnin harjoitustyö, Sami Nikander 30.3.2009 1 Testaus Ohjelman systemaattista tutkimista

Lisätiedot

Ohjelmistotuotanto s

Ohjelmistotuotanto s Laadunvarmistustekniikoita Ohjelmistotuotanto 1 testaus (testing) ohjelman suorittamista tarkoituksena löytää virheitä tarkastukset (inspections, reviews) asiantuntijoiden suorittamia dokumentin (voi olla

Lisätiedot

Dynaaminen analyysi I

Dynaaminen analyysi I Dynaaminen analyysi I Luento 6 Antti-Pekka Tuovinen 4 April 2013 1 Tavoitteet Testitapausten suunnittelun ja suorituksen perusteet Black-Box testitapausten suunnittelu Ekvivalenssiluokat Raja-arvo (reuna-arvo)

Lisätiedot

Ohjelmistotuotteen hallinnasta

Ohjelmistotuotteen hallinnasta Ohjelmistotuotteen hallinnasta Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Haikala ja Märijärvi, Ohjelmistotuotanto Royce, Software Project Management, A Unified Framework 1 Tavoitteista

Lisätiedot

Ohjelmiston testaussuunnitelma

Ohjelmiston testaussuunnitelma Ohjelmiston testaussuunnitelma Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä lukaa antaa yleiskuvan koko testausdokumentista.

Lisätiedot

Dynaaminen analyysi III

Dynaaminen analyysi III Dynaaminen analyysi III Luento 8 Antti-Pekka Tuovinen 16 April 2013 1 Tavoitteet White box testitapausten suunnittelutekniikat Lausekattavuus Haarautumakattavuus Ehto- ja polkukattavuus Huomioita white

Lisätiedot

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II 7. Verifiointi ja validointi Verifiointi ja validointi (V&V) on ohjelmistotuotannon työvaihe, missä varmistetaan, että ohjelmisto täyttää sille asetetut implisiittiset ja eksplisiittiset vaatimukset ja

Lisätiedot

Onnistunut Vaatimuspohjainen Testaus

Onnistunut Vaatimuspohjainen Testaus Onnistunut Vaatimuspohjainen Testaus Kari Alho Solution Architect Nohau Solutions, Finland Sisältö Mitä on vaatimuspohjainen testaus? Vaatimusten ymmärtämisen haasteet Testitapausten generointi Työkalujen

Lisätiedot

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma PULSU Syksy 2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Heikki Manninen Noora Joensuu

Lisätiedot

Onnistunut SAP-projekti laadunvarmistuksen keinoin

Onnistunut SAP-projekti laadunvarmistuksen keinoin Onnistunut SAP-projekti laadunvarmistuksen keinoin 07.10.2010 Patrick Qvick Sisällys 1. Qentinel 2. Laadukas ohjelmisto täyttää sille asetetut tarpeet 3. SAP -projektin kriittisiä menestystekijöitä 4.

Lisätiedot

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science Testaustyökalut Luento 11 Antti-Pekka Tuovinen 25 April 2013 1 Tavoitteet Työkalutyyppejä Testauksen hallinta Testien määrittely Staattinen analyysi Dynaaminen testaus 25 April 2013 2 1 Työkalut ja testaus

Lisätiedot

Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen

Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen 23 April 2018 1 Tavoitteet Yleiskuva seuraavista aiheista Testauksen organisointi Testaussuunnittelma Testauksen kustannukset Testausstrategia

Lisätiedot

Mihin kaikkeen voit törmätä testauspäällikön saappaissa?

Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Mihin kaikkeen voit törmätä testauspäällikön saappaissa? Arto Stenberg Copyright Kuntien Tiera Oy Kuntien Tiera Copyright Kuntien Tiera Oy Tiera on vuonna 2010 perustettu yli 200:n kuntatoimijan omistama

Lisätiedot

Dynaaminen analyysi III Luento 5 Antti-Pekka Tuovinen

Dynaaminen analyysi III Luento 5 Antti-Pekka Tuovinen Dynaaminen analyysi III Luento 5 Antti-Pekka Tuovinen www.cs.helsinki.fi 16 April 2018 1 Tavoitteet White box testitapausten suunnittelutekniikat Lausekattavuus Haarautumakattavuus Ehto- ja polkukattavuus

Lisätiedot

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit Ohjelmiston testaus ja laatu Ohjelmistotekniikka elinkaarimallit Vesiputousmalli - 1 Esitutkimus Määrittely mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot millainen järjestelmä täyttää

Lisätiedot

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - VYM JA KANTA Versio 1.0 i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI 3 2.1. Testauksen

Lisätiedot

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Ohjelmistojen mallintaminen. Luento 11, 7.12. Ohjelmistojen mallintaminen Luento 11, 7.12. Viime viikolla... Oliosuunnittelun yleiset periaatteet Single responsibility eli luokilla vain yksi vastuu Program to an interface, not to concrete implementation,

Lisätiedot

Dynaaminen analyysi IV

Dynaaminen analyysi IV Dynaaminen analyysi IV Luento 9 Antti-Pekka Tuovinen 16 April 2013 1 Tavoitteet Kokemusperäinen testitapausten suunnittelu Yhteenvetoa suunnittelutekniikoista 16 April 2013 2 1 Testitapausten kokemusperäinen

Lisätiedot

Convergence of messaging

Convergence of messaging Convergence of messaging Testaussuunnitelma The Converge Group: Mikko Hiipakka Anssi Johansson Joni Karppinen Olli Pettay Timo Ranta-Ojala Tea Silander Helsinki 20. joulukuuta 2002 HELSINGIN YLIOPISTO

Lisätiedot

Ohjelmistotuotantoprojekti

Ohjelmistotuotantoprojekti Ohjelmistotuotantoprojekti Ryhmä Muppett TESTAUSDOKUMENTTI Helsinki 5.8.2008 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ohjelmistotuotantoprojekti, kesä 2008 Projekti: Muutos- ja korjauspyyntöjen

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2016-2017 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen

Lisätiedot

Testaaminen ohjelmiston kehitysprosessin aikana

Testaaminen ohjelmiston kehitysprosessin aikana Testaaminen ohjelmiston kehitysprosessin aikana 04.02.2004 http://cs.joensuu.fi/tsoft/ Sisällys 1. Johdanto 2. Yksikkö- ja integrointitestaus 3. Järjestelmätestaus 4. Hyväksymistestaus http://cs.joensuu.fi/tsoft/

Lisätiedot

Testaussuunnitelma. Ohjelmistotuotantoprojekti Nero. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. Ohjelmistotuotantoprojekti Nero. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma Ohjelmistotuotantoprojekti Nero Helsinki 5.11.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti ( ov) Projektiryhmä

Lisätiedot

Dynaaminen analyysi IV Luento 6 Antti-Pekka Tuovinen

Dynaaminen analyysi IV Luento 6 Antti-Pekka Tuovinen Dynaaminen analyysi IV Luento 6 Antti-Pekka Tuovinen 23 April 2018 1 Tavoitteet Kokemusperäinen testitapausten suunnittelu Yhteenvetoa suunnittelutekniikoista 23 April 2018 2 Testitapausten kokemusperäinen

Lisätiedot

Dynaaminen analyysi II

Dynaaminen analyysi II Dynaaminen analyysi II Luento 7 Antti-Pekka Tuovinen 9 April 2013 1 Tavoitteet Black-box testitapausten suunnittelutekniikat II Tilamallien käyttö Syys-seurausverkot ja päätöstaulut Käyttötapaukset Yhteenveto

Lisätiedot

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testaussuunnitelma PUSU-ryhmä Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Jussi Hynninen

Lisätiedot

Ohjelmistotuotanto, verifiointi ja validointi Syksy Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi

Ohjelmistotuotanto, verifiointi ja validointi Syksy Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi 7. Verifiointi ja validointi Verifiointi ja validointi (V&V) on ohjelmistotuotannon työvaihe, missä varmistetaan, että ohjelmisto täyttää sille asetetut implisiittiset ja eksplisiittiset vaatimukset ja

Lisätiedot

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori TIE-21204 Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2 Antti Jääskeläinen Matti Vuori Työn yleiset järjestelyt 14.9.2015 2 Valmistautuminen Ilmoittaudu kurssille Lue harjoitustyön nettisivut

Lisätiedot

Ehto- ja toistolauseet

Ehto- ja toistolauseet Ehto- ja toistolauseet 1 Ehto- ja toistolauseet Uutena asiana opetellaan ohjelmointilauseet / rakenteet, jotka mahdollistavat: Päätösten tekemisen ohjelman suorituksen aikana (esim. kyllä/ei) Samoja lauseiden

Lisätiedot

Testaussuunnitelma Labra

Testaussuunnitelma Labra Testaussuunnitelma Labra Helsinki 25.8.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 1 Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op) Projektiryhmä Anssi Kapanen,

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2018-2019 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen

Lisätiedot

Testauksesta ja testaussuunnitelmasta

Testauksesta ja testaussuunnitelmasta Testauksesta ja testaussuunnitelmasta Luennon sisältö Motivointia, testaus projektin eri vaiheissa Yleistä ohjelmistojen testauksesta Testauksen suunnittelu Testaussuunnitelman sisältö ja tarkoitus Lähteinä:

Lisätiedot

Automaattinen regressiotestaus ilman testitapauksia. Pekka Aho, VTT Matias Suarez, F-Secure

Automaattinen regressiotestaus ilman testitapauksia. Pekka Aho, VTT Matias Suarez, F-Secure Automaattinen regressiotestaus ilman testitapauksia Pekka Aho, VTT Matias Suarez, F-Secure 2 Mitä on regressiotestaus ja miksi sitä tehdään? Kun ohjelmistoon tehdään muutoksia kehityksen tai ylläpidon

Lisätiedot

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2)

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2) TESTIRAPORTTI - XMLREADER-LUOKKA Versio 1.0 (luonnos 2) Copyright Comptel Oyj i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin

Lisätiedot

UCOT-Sovellusprojekti. Testausraportti

UCOT-Sovellusprojekti. Testausraportti UCOT-Sovellusprojekti Testausraportti Ilari Liukko Tuomo Pieniluoma Vesa Pikki Panu Suominen Versio: 0.02 Julkinen 11. lokakuuta 2006 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä

Lisätiedot

Näytetään nyt relaatioon liittyvien ekvivalenssiluokkien olevan verkon G lohkojen särmäjoukkoja. Olkoon siis f verkon G jokin särmä.

Näytetään nyt relaatioon liittyvien ekvivalenssiluokkien olevan verkon G lohkojen särmäjoukkoja. Olkoon siis f verkon G jokin särmä. Tehtävä 6 : 1 Oletetaan ensin joukon X olevan sisältymisen suhteen minimaalinen solmut a ja b toisistaan erotteleva joukon V(G)\{a, b} osajoukko. Olkoon x joukon X alkio. Oletuksen nojalla joukko X\{x}

Lisätiedot

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin.

Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet suoritetaan peräkkäin. 2. Ohjausrakenteet Ohjausrakenteiden avulla ohjataan ohjelman suoritusta. peräkkäisyys valinta toisto Koottu lause; { ja } -merkkien väliin kirjoitetut lauseet muodostavat lohkon, jonka sisällä lauseet

Lisätiedot

Äärellisten mallien teoria

Äärellisten mallien teoria Äärellisten mallien teoria Harjoituksen 4 ratkaisut Tehtävä 1. Määritä suurin aste k, johon saakka kuvan verkot G ja G ovat osittaisesti isomorfisia: Ratkaisu 1. Huomataan aluksi, että G =4 G : Ehrenfeucht-Fraïssé

Lisätiedot

TAMPEREEN TEKNILLINEN YLIOPISTO

TAMPEREEN TEKNILLINEN YLIOPISTO TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja Tietokonetekniikan laitos TKT-3200 Tietokonetekniikka ASSEMBLER: QSORT 11.08.2010 Ryhmä 00 nimi1 email1 opnro1 nimi2 email2 opnro2 nimi3 email3 opnro3 1. TEHTÄVÄ

Lisätiedot

Muistutus aikatauluista

Muistutus aikatauluista Muistutus aikatauluista (Nämä eivät välttämättä koske avoimen yo:n opiskelijoita Erkki Kailan rinnakkaisella kurssilla) Luento 1: kotitehtävät sulkeutuvat 20.9 12:00, ennen tutoriaalia Tutoriaali 1 sulkeutuu

Lisätiedot

Sisällys. 16. Ohjelmoinnin tekniikkaa. Aritmetiikkaa toisin merkiten. Aritmetiikkaa toisin merkiten

Sisällys. 16. Ohjelmoinnin tekniikkaa. Aritmetiikkaa toisin merkiten. Aritmetiikkaa toisin merkiten Sisällys 16. Ohjelmoinnin tekniikkaa Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. For-lause lyhemmin. If-else-lause vaihtoehtoisesti

Lisätiedot

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - XMLREADER LUOKKA i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI 3 2.1. Testauksen

Lisätiedot

Työn ositusmalleista. Luennon tavoitteista. Motivointia. Walker Royce, Software Project Management, A Unified Framework

Työn ositusmalleista. Luennon tavoitteista. Motivointia. Walker Royce, Software Project Management, A Unified Framework Työn ositusmalleista Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Walker Royce, Software Project Management, A Unified Framework 1 Tavoitteista Luentojen jälkeen opiskelijan tulisi osata:

Lisätiedot

811312A Tietorakenteet ja algoritmit, , Harjoitus 3, Ratkaisu

811312A Tietorakenteet ja algoritmit, , Harjoitus 3, Ratkaisu 811312A Tietorakenteet ja algoritmit, 2018-2019, Harjoitus 3, Ratkaisu Harjoituksessa käsitellään algoritmien aikakompleksisuutta. Tehtävä 3.1 Kuvitteelliset algoritmit A ja B lajittelevat syötteenään

Lisätiedot

16. Ohjelmoinnin tekniikkaa 16.1

16. Ohjelmoinnin tekniikkaa 16.1 16. Ohjelmoinnin tekniikkaa 16.1 Sisällys Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. For-lause lyhemmin. If-else-lause vaihtoehtoisesti

Lisätiedot

Projektityö

Projektityö Projektityö 1.10.2010 Testaussuunnitelma ja testaus Katselmoinnit ja tarkastukset Ohjelmistojen toteutuksesta Loppuraportti, projektikertomus, lopputapaaminen Projekti CD. Kurssin luennoitsija ja projektiryhmien

Lisätiedot

TESTIRAPORTTI - JÄRJESTELMÄ, ADMIN Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - JÄRJESTELMÄ, ADMIN Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - JÄRJESTELMÄ, ADMIN i Sisällysluettelo DUMENTIN VERSIOT 1 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI

Lisätiedot

Suunnitteluvaihe prosessissa

Suunnitteluvaihe prosessissa Suunnittelu Suunnitteluvaihe prosessissa Silta analyysin ja toteutuksen välillä (raja usein hämärä kumpaankin suuntaan) Asteittain tarkentuva Analyysi -Korkea abstraktiotaso -Sovellusläheiset käsitteet

Lisätiedot

7. Verifiointi ja validointi

7. Verifiointi ja validointi 7. Verifiointi ja validointi Verifiointi ja validointi (V&V) on ohjelmistotuotannon työvaihe, missä varmistetaan, että ohjelmisto täyttää sille asetetut implisiittiset ja eksplisiittiset vaatimukset ja

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 24.1.2011 T-106.1208 Ohjelmoinnin perusteet Y 24.1.2011 1 / 36 Luentopalaute kännykällä alkaa tänään! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti Vast

Lisätiedot

Ohjelmistotekniikka - Luento 2

Ohjelmistotekniikka - Luento 2 Ohjelmistotekniikka - Luento 2 Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento 2: Prosessimallit

Lisätiedot

16. Ohjelmoinnin tekniikkaa 16.1

16. Ohjelmoinnin tekniikkaa 16.1 16. Ohjelmoinnin tekniikkaa 16.1 Sisällys For-lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. If-else-lause vaihtoehtoisesti

Lisätiedot

T Testiraportti - järjestelmätestaus

T Testiraportti - järjestelmätestaus T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria

Lisätiedot

TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL i Sisällysluettelo DUMENTIN VERSIOT 1 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI

Lisätiedot

Johnson, A Theoretician's Guide to the Experimental Analysis of Algorithms.

Johnson, A Theoretician's Guide to the Experimental Analysis of Algorithms. Kokeellinen algoritmiikka (3 ov) syventäviä opintoja edeltävät opinnot: ainakin Tietorakenteet hyödyllisiä opintoja: ASA, Algoritmiohjelmointi suoritus harjoitustyöllä (ei tenttiä) Kirjallisuutta: Johnson,

Lisätiedot

Tietojärjestelmän osat

Tietojärjestelmän osat Analyysi Yleistä analyysistä Mitä ohjelmiston on tehtävä? Analyysin ja suunnittelun raja on usein hämärä Ei-tekninen näkökulma asiakkaalle näkyvien pääkomponenttien tasolla Tietojärjestelmän osat Laitteisto

Lisätiedot

Testaussuunnitelma. Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma. WebPizza

Testaussuunnitelma. Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma. WebPizza Testaussuunnitelma Pizzeria - Pitseria HAAGA-HELIA ammattikorkeakoulu Tietojenkäsittelyn koulutusohjelma Versio 1.0 Ehdotus Laatija Raine Kauppinen VERSIOHISTORIA Versionotyyppi Versio- Päiväys Tekijä

Lisätiedot

Olkoon seuraavaksi G 2 sellainen tasan n solmua sisältävä suunnattu verkko,

Olkoon seuraavaksi G 2 sellainen tasan n solmua sisältävä suunnattu verkko, Tehtävä 1 : 1 a) Olkoon G heikosti yhtenäinen suunnattu verkko, jossa on yhteensä n solmua. Määritelmän nojalla verkko G S on yhtenäinen, jolloin verkoksi T voidaan valita jokin verkon G S virittävä alipuu.

Lisätiedot

Luento 5. Timo Savola. 28. huhtikuuta 2006

Luento 5. Timo Savola. 28. huhtikuuta 2006 UNIX-käyttöjärjestelmä Luento 5 Timo Savola 28. huhtikuuta 2006 Osa I Shell-ohjelmointi Ehtolause Lausekkeet suoritetaan jos ehtolausekkeen paluuarvo on 0 if ehtolauseke then lauseke

Lisätiedot

Testauksen tuki nopealle tuotekehitykselle. Antti Jääskeläinen Matti Vuori

Testauksen tuki nopealle tuotekehitykselle. Antti Jääskeläinen Matti Vuori Testauksen tuki nopealle tuotekehitykselle Antti Jääskeläinen Matti Vuori Mitä on nopeus? 11.11.2014 2 Jatkuva nopeus Läpäisyaste, throughput Saadaan valmiiksi tasaiseen, nopeaan tahtiin uusia tuotteita

Lisätiedot

Johdatus graafiteoriaan

Johdatus graafiteoriaan Johdatus graafiteoriaan Syksy 2017 Lauri Hella Tampereen yliopisto Luonnontieteiden tiedekunta 62 Luku 2 Yhtenäisyys 2.1 Polku 2.2 Lyhin painotettu polku 2.3 Yhtenäinen graafi 2.4 Komponentti 2.5 Aste

Lisätiedot

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausraportti Orava Helsinki 5.5.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Juhani Bergström Peter

Lisätiedot

A4.1 Projektityö, 5 ov.

A4.1 Projektityö, 5 ov. A4.1 Projektityö, 5 ov. Kurssin esitietovaatimuksia Kurssin tavoitteista Kurssin sisällöstä Luentojen tavoitteista Luentojen sisällöstä Suoritustavoista ja -vaatimuksista Arvostelukriteereistä Motivointia

Lisätiedot

Sisällys. 17. Ohjelmoinnin tekniikkaa. Aritmetiikkaa toisin merkiten. for-lause lyhemmin

Sisällys. 17. Ohjelmoinnin tekniikkaa. Aritmetiikkaa toisin merkiten. for-lause lyhemmin Sisällys 17. Ohjelmoinnin tekniikkaa for-lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely ja alustaminen yhdellä lauseella. if-else-lause vaihtoehtoisesti

Lisätiedot

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri Testausraportti Oppimistavoitteiden hallintajärjestelmä harri Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti

Lisätiedot

TAMPEREEN TEKNILLINEN YLIOPISTO

TAMPEREEN TEKNILLINEN YLIOPISTO TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja Tietokonetekniikan laitos TKT-3200 Tietokonetekniikka ASSEMBLER: QSORT 06.09.2005 Ryhmä 00 nimi1 email1 opnro1 nimi2 email2 opnro2 nimi3 email3 opnro3 1. TEHTÄVÄ

Lisätiedot

Testiautomaatio tietovarastossa. Automaattisen regressiotestauksen periaate ja hyödyt

Testiautomaatio tietovarastossa. Automaattisen regressiotestauksen periaate ja hyödyt Testiautomaatio tietovarastossa Automaattisen regressiotestauksen periaate ja hyödyt Sisältö 2 Testaus kiinteänä osana DW-toteutusta Regressiotestauksen merkitys Robot Framework Automatisoitu DW:n regressiotestaus:

Lisätiedot

verkkojen G ja H välinen isomorfismi. Nyt kuvaus f on bijektio, joka säilyttää kyseisissä verkoissa esiintyvät särmät, joten pari

verkkojen G ja H välinen isomorfismi. Nyt kuvaus f on bijektio, joka säilyttää kyseisissä verkoissa esiintyvät särmät, joten pari Tehtävä 9 : 1 Merkitään kirjaimella G tehtäväpaperin kuvan vasemmanpuoleista verkkoa sekä kirjaimella H tehtäväpaperin kuvan oikeanpuoleista verkkoa. Kuvan perusteella voidaan havaita, että verkko G on

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 16.2.2010 T-106.1208 Ohjelmoinnin perusteet Y 16.2.2010 1 / 41 Kännykkäpalautetteen antajia kaivataan edelleen! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti

Lisätiedot

Ohjelmistotestauksen perusteita II

Ohjelmistotestauksen perusteita II Ohjelmistotestauksen perusteita II Luento 2 Antti-Pekka Tuovinen 14 March 2013 1 Luennon oppimistavoitteet Testausprosessin perustoiminnot Testauksen psykologiaa Testauksen seitsemän periaatetta 14 March

Lisätiedot

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3 AgilElephant SEPA Diary Petri Kalsi 55347A Heikki Salminen 51137K Tekijä: Petri Kalsi Omistaja: ElectricSeven Aihe: PK&HS Sivu 1 / 7 Dokumenttihistoria Revisiohistoria Revision päiväys: 29.11.2004 Seuraavan

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 25.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 25.2.2009 1 / 34 Syötteessä useita lukuja samalla rivillä Seuraavassa esimerkissä käyttäjä antaa useita lukuja samalla

Lisätiedot

Laadunvarmistuksesta. Luennon tavoitteista. Motivointia. Sommerville, Software Engineering (6th ed.)

Laadunvarmistuksesta. Luennon tavoitteista. Motivointia. Sommerville, Software Engineering (6th ed.) Laadunvarmistuksesta Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Sommerville, Software Engineering (6th ed.) 1 Tavoitteista Luentojen jälkeen opiskelijan tulisi osata: ymmärtää laadunhallintaprosessin

Lisätiedot

Kurssin tavoitteista uennot. 4.1 Projektityö, 5 ov. Esitietovaatimukset

Kurssin tavoitteista uennot. 4.1 Projektityö, 5 ov. Esitietovaatimukset Kurssin tavoitteista uennot ma ls. 1097, klo 10-12. pe ls. DXI, klo 12-14. uennot ovat viikoilla 40-42. uentojen yhteydessä ei järjestetä erillisiä harjoituksia. Opinto-oppaasta: Opintojakson tavoitteena

Lisätiedot

Laadunvarmistustekniikoita. Ohjelmistotuotanto. Testaus termejä. Testaus periaatteita. Testaus havaintoja. Testaus havaintoja

Laadunvarmistustekniikoita. Ohjelmistotuotanto. Testaus termejä. Testaus periaatteita. Testaus havaintoja. Testaus havaintoja Laadunvarmistustekniikoita Ohjelmistotuotanto Ohjelmistojen testaus 1 Testaus (testing) ohjelman suorittamista tarkoituksena löytää virheitä Tarkastukset, katselmukset (inspections, reviews) asiantuntijoiden

Lisätiedot

Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti

Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu TESTIRAPORTTI LiKe Liiketoiminnan kehityksen tukiprojekti Versio: 1.1 Tila: hyväksytty Päivämäärä: 13.2.2001 Tekijä:

Lisätiedot

= 5! 2 2!3! = = 10. Edelleen tästä joukosta voidaan valita kolme särmää yhteensä = 10! 3 3!7! = = 120

= 5! 2 2!3! = = 10. Edelleen tästä joukosta voidaan valita kolme särmää yhteensä = 10! 3 3!7! = = 120 Tehtävä 1 : 1 Merkitään jatkossa kirjaimella H kaikkien solmujoukon V sellaisten verkkojen kokoelmaa, joissa on tasan kolme särmää. a) Jokainen verkko G H toteuttaa väitteen E(G) [V]. Toisaalta jokainen

Lisätiedot

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1 T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tästä dokumentista ilmenee T1-vaiheessa suoritettu testaus, sen tulokset ja poikkeamat testisuunnitelmasta. Päivämäärä 1.12.2002 Projektiryhmä Keimo keimo-dev@list.hut.fi

Lisätiedot

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/jekahkon/wclique/testplan.html WCLIQUE Ohjelmistoprojekti Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com, 75014C,

Lisätiedot

Kurssikoe on maanantaina 29.6. Muista ilmoittautua kokeeseen viimeistään 10 päivää ennen koetta! Ilmoittautumisohjeet löytyvät kurssin kotisivuilla.

Kurssikoe on maanantaina 29.6. Muista ilmoittautua kokeeseen viimeistään 10 päivää ennen koetta! Ilmoittautumisohjeet löytyvät kurssin kotisivuilla. HY / Avoin ylioisto Johdatus yliopistomatematiikkaan, kesä 201 Harjoitus 7 Ratkaisut palautettava viimeistään perjantaina 26.6.201 klo 16.00. Huom! Luennot ovat salissa CK112 maanantaista 1.6. lähtien.

Lisätiedot

Harjoitus 7: NCSS - Tilastollinen analyysi

Harjoitus 7: NCSS - Tilastollinen analyysi Harjoitus 7: NCSS - Tilastollinen analyysi Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Tilastollinen testaus Testaukseen

Lisätiedot

Algoritmit 1. Luento 1 Ti Timo Männikkö

Algoritmit 1. Luento 1 Ti Timo Männikkö Algoritmit 1 Luento 1 Ti 10.1.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin toteutus Ongelman ratkaiseminen Algoritmin tehokkuus Algoritmin suoritusaika Algoritmin analysointi Algoritmit 1 Kevät 2017

Lisätiedot

isomeerejä yhteensä yhdeksän kappaletta.

isomeerejä yhteensä yhdeksän kappaletta. Tehtävä 2 : 1 Esitetään aluksi eräitä havaintoja. Jokaisella n Z + symbolilla H (n) merkitään kaikkien niiden verkkojen joukkoa, jotka vastaavat jotakin tehtävänannon ehtojen mukaista alkaanin hiiliketjua

Lisätiedot

Harjoitustyö: virtuaalikone

Harjoitustyö: virtuaalikone Harjoitustyö: virtuaalikone Toteuta alla kuvattu virtuaalikone yksinkertaiselle olio-orientoituneelle skriptauskielelle. Paketissa on testaamista varten mukana kaksi lyhyttä ohjelmaa. Ohjeita Noudata ohjelman

Lisätiedot

Dynaaminen analyysi II Luento 4 Antti-Pekka Tuovinen

Dynaaminen analyysi II Luento 4 Antti-Pekka Tuovinen Dynaaminen analyysi II Luento 4 Antti-Pekka Tuovinen www.cs.helsinki.fi 9 April 2018 1 Tavoitteet Black-box testitapausten suunnittelutekniikat II Tilamallien käyttö Syy-seurausverkot ja päätöstaulut Kombinaatioiden

Lisätiedot

Algoritmit 1. Luento 3 Ti Timo Männikkö

Algoritmit 1. Luento 3 Ti Timo Männikkö Algoritmit 1 Luento 3 Ti 17.1.2017 Timo Männikkö Luento 3 Algoritmin analysointi Rekursio Lomituslajittelu Aikavaativuus Tietorakenteet Pino Algoritmit 1 Kevät 2017 Luento 3 Ti 17.1.2017 2/27 Algoritmien

Lisätiedot