- COMP.CS.140
- 11. Toimiva ohjelma
- 11.3 ⌛⌛⌛ Tilauksen JUnit-testaus
⌛⌛⌛ Tilauksen JUnit-testaus¶
Tässä tehtävässä on tavoitteena toteuttaa melko kattava joukko JUnit-testejä tilausta kuvaavalle
luokalle Order
sekä sen sisäisille luokille Item
ja Entry
. Luokkien dokumentaatio on annettu
materiaalien etätietovaraston round11\junitorder\apidocs
-hakemistossa.
Tehtävä muistuttaa luonteeltaan testivetoista kehitystä, jossa testien kehittäjillä ei ole käytettävissään varsinaista testattavaa koodia, vaan testit kehitetään esimerkiksi rajapintakuvausten perusteella.
Testien määrittelyn ohessa voi olla tarpeen tehdä ainakin jonkinlainen omakin luokan
Order
toteutus, johon luonnollisesti sisältyvät myös sisäiset luokat Item
ja Entry
.
Organisoi koodisi Maven-projektin mukaiseen hakemistorakenteeseen. Aseta testiluokkasi hakemistoon
round11/junitorder/src/test/java/fi/tuni/prog3/junitorder
. Sijoita puolestaan Order
-luokka
sisäluokkineen hakemistoon round11/junitorder/src/main/java/fi/tuni/prog3/junitorder
,
jos toteutat nämä luokat.
Testauksesta¶
Automaattiset testit suorittavat määrittämäsi JUnit-testit ensin luokkien Order
, Order.Item
ja Order.Entry
oikein toimiville toteutuksille. Tämän jälkeen JUnit-testisi
suoritetaan 20 erilailla virheelliselle toteutukselle. Jos JUnit-testisi eivät löydä virheitä
oikein toimivasta toteutuksesta, saat kaksi pistettä jokaista JUnit-testiesi virheelliseksi toteamaa
toteutusta kohden.
Virheelliset toteutukset eivät sisällä mitään erityisen hämärää virheellistä toiminnallisuutta: niistä kukin rikkoo selkeästi vähintään yhtä dokumentaatiossa määritettyä odotettua toiminnallisuutta.
A+ esittää tässä kohdassa tehtävän palautuslomakkeen.