Suoritettuaan opintojakson, opiskelija
- ymmärtää ohjelmistojen laadunvarmistuksen ja testauksen perusteet sekä niiden yhteyden ohjelmistojen kehittämisen elinkaareen,
- tuntee testausstrategioita ja testauksen tyyppejä ja pystyy soveltamaan niitä erilaisten ohjelmistojen testaamisessa,
- osaa suunnitella, toteuttaa ja suorittaa ohjelmiston testaamiseen soveltuvia testitapauksia ja arvioida niiden tehokkuutta ja kattavuutta tilanteeseen sopivien kriteerien perusteella,
- tuntee eri tapoja automatisoida testausta ja osaa rakentaa automatisoituja testitapauksia, sekä
- tuntee ajantasaisia laadunvarmistuksen ja testauksen työkaluja sekä ymmärtää, miten niitä hyödynnetään testaamisessa.
Sisältö
Oleellinen osa ohjelmistojen laadunvarmistusta on sen suoritusaikaisen toiminnan vertaaminen odotettuun toimintaan, joka perustuu määrittelyihin, suunnitelmiin ja vaatimuksiin.
Opintojaksolla Ohjelmistotestaus opit
- testauksen perusteet osana ohjelmiston laadunvarmistusta sekä näiden kytkennän ohjelmistokehityksen elinkaareen,
- käytännön testausstrategioita ja -tapoja sekä niiden soveltamista käytännössä testitapausten suunnittelemiseksi, toteuttamiseksi ja suorittamiseksi sekä tulosten arvioimiseksi tilanteeseen soveltuvilla kriteereillä, sekä
- tapoja automatisoida testausta ja suunnitella sekä rakentaa automatisoituja testejä, jonka lisäksi saat yleiskuvan tarjolla olevista työvälineistä.
Opintojaksolla Ohjelmistotestaus käsitellään käytännön esimerkkien avulla ohjelmistojen laadunvarmistusta laajasti ohjelmistojen kehittämisen elinkaaren osana eri kehittämismenetelmiä hyödyntäen. Opintojaksolla käytetään laajempaa esimerkkiä, johon liittyvien tehtävien avulla opit soveltamaan eri testausstrategioita ja tekemään eri tyyppistä testausta käytännössä. Vastaavasti opit arvioimaan testauksen laatua ja tuloksia. Testitapausten toteutukseen ja suorittamisen automatisointiin käytetään ajantasaisia työkaluja, joiden vaihtoehtoja tuodaan myös esille. Näin saat yleiskuvan tarjolla olevista testaustyökaluista.
Toteutustavat, näyttö ja opinnollistaminen
Tämän opintojakson toteutukset ovat sulautettuja (blended) ja perustuvat vahvasti kontaktiopetukseen, sillä useat käsitellyt aiheet kuten käytännön esimerkit ja työvälineiden käyttö, ovat käytännönläheisiä ja niiden oppisen kannalta on erittäin hyödyllistä osallistua kontaktiopetukseen. AHOT tai opinnollistaminen (work & study) ovat mahdollisia, jos osallistujalla on aiempaa työkokemusta useista testausprojeteista, joihin on liittynyt myös testaustyökalujen käyttöä (AHOT) tai jos osallistuja työskentelee ohjelmistotestaukseen liittyvissä tehtävissä (work & study). Näissä tapauksissa osallistujan tulee olla yhteydessä toteutuksen opettajaan viimeistään toteutuksen alkaessa.
Oppimateriaalit
Tieto oppimateriaaleista on teutusten Moodle-työtiloissa.
Intro
Ohjelmistotestaus -opintojaksolla opit arvoimaan ohjelmiston laatua ja löytämään siinä olevia virheitä. Tutustut erilaisiin menetelmiin, joiden avulla ohjelmiston suoritusaikaista toimintaa verrataan sen odotettuun toimintaan. Käytät testauksessa nykyaikaisia työkaluja ja opit, mlloin testausta kannattaa automatisoida ja miten se tehdään. Tämä opintojakso on sinulle erittäin tarpeellinen, jos aiot urallasi työskennellä esimerkiksi ohjelmistotestaajana, ohjelmistokehittäjänä, Scrum Masterina tai tuoteomistajana.
Lähtötaso ja sidonnaisuudet muihin opintojaksoihin
Tämä opintojakso kuuluu IT-tradenomitutkinnon Ohjelmistokehityksen suuntautumiseen.
Opintojaksolle osallistuminen edellyttää perustietoja ohjelmoinnista ja ohjelmistokehityksestä, esimerkiksi suoritettuja opintojaksoja SOF005AS2A Ohjelmointi 1 ja SOF001IT1A Johdanto ohjelmistokehitykseen tai vastaavia tietoja. Ohjelmistojen testaamisella on vahva kytkentä vaatimuksiin, joten vaatimusmäärittelyyn liittyvästä tiedosta, esimerkiksiki suoritetuista opintojaksoista SOF002AS2A Vaatimusmäärittely tai ICB001AS3A Liiketoimintavaatimusten analysointi ja määrittely on hyötyä, mutta näitä ei edellytetä.
Arviointikriteerit
Arviointikriteeri - arvosana 1
Opintojaksojen CONTACT, ONLINE ja BLENDED -toteutuksilla edellytämme läsnäoloa lukujärjestykseen merkityillä opetuskerroilla. Jos olet poissa opetuskerroilta yli 25% arvosanasi laskee yhdellä numerolla. Jos olet poissa opetuskerroilta yli 50%, opintojakso hylätään.
Opiskelija ymmärtää ohjelmistojen laadunvarmistuksen ja testauksen perusteita sekä osaa yhdistää testauksen eri tyyppejä ohjelmistokehityksen elinkaaren asianmukaisiin vaiheisiin. Opiskelija osaa nimetä testausstrategioita ja tietää niiden merkityksen. Opiskelija osaa suunnitella ja toteuttaa testitapauksia ja tietää, miten niitä voidaan suorittaa ja miten niiden tehokkuutta ja kattavuutta on mahdollista arvioida. Opiskelijalla on perusymmärrys testaukseen liittyvästä automaatiosta ja soveltuvista työvälineistä.
Arviointikriteeri - arvosana 3
Opiskelija ymmärtää ohjelmistojen laadunvarmistuksen ja testauksen perusteita sekä osaa soveltaa testauksen eri tyyppejä testauksessa ja osaa liittää ne ohjelmistokehityksen elinkaaren asianmukaisiin vaiheisiin. Opiskelija tuntee testausstrategioita kattavasti ja soveltaa niitä käytäntöön ohjelmistojen testaamisessa. Opiskelija osaa suunnitella ja toteuttaa tietyn ohjelmiston testaamiseen soveltuvia testitapauksia ja suorittaa niitä sekä arvoida niiden tehokkuutta ja kattavuutta soveltuvia kriteereitä käyttäen. Opiskelijalla on hyvä ymmärrys testaukseen liittyvästä automaatiosta ja soveltuvista työvälineistä.
Arviointikriteeri - arvosana 5
Opiskelija ymmärtää ohjelmistojen laadunvarmistuksen ja testauksen perusteita sekä osaa valita ja soveltaa testauksen eri tyyppejä testauksessa ja osaa liittää ne ohjelmistokehityksen elinkaaren asianmukaisiin vaiheisiin. Opiskelija tuntee testausstrategioita erittäin kattavasti ja analysoida niiden soveltuvuutta itsenäisesti sekä soveltaa niitä monipuolisesti käytäntöön ohjelmistojen testaamisessa. Opiskelija osaa suunnitella ja toteuttaa tietyn ohjelmiston testaamiseen soveltuvia monimutkaisia testitapauksia ja suorittaa niitä tehokkaasti sekä arvoida niiden tehokkuutta ja kattavuutta analyyttisesti soveltuvia kriteereitä käyttäen ja tarvittaessa kehittäen. Opiskelijalla osaa automatisoida testitapauksia soveltuvia työvälineitä hyödyntäen ja hnellä on erittäin hyvä ymmärrys testauksen työkaluista.