Automaattitestit ohjelmoinnin perusteet -kurssille
Niskanen, Elias (2024)
Niskanen, Elias
2024
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2024111528369
https://urn.fi/URN:NBN:fi:amk-2024111528369
Tiivistelmä
Ohjelmistotestauksen avulla yleisesti vähennetään ohjelmistovirheitä, arvioidaan niiden riskiä sekä parannetaan ohjelmiston laatua. Ohjelmistotestausta voidaan suorittaa automatisoidusti, jossa toistuvat testitapaukset suoritetaan automaattisesti. Toimiva automaattitestaus varmistaa ohjelmiston laadun ylläpitoa ja vapauttaa työntekijöiden resursseja. Automaattitestien suunnittelu on tärkeässä roolissa ja sitä varten tarvitaan hyvä kokonaiskuva tehtävistä. Yksikkötestit ovat pieniä ohjelmia suuren kokonaisuuden sisällä. Yksikkötestauksessa ohjelmiston komponentteja tarkistetaan yksittäin. Yksikkötesteillä pyritään havaitsemaan koodin virheet aikaisessa vaiheessa, etteivät ne kertaudu ja ne ovat myös helpommin korjattavissa kehitystyön alkuvaiheessa. Yksikkötestit ohjaavat parhaimmillaan ohjelmiston suunnitteluprosessia.
Tietotekniikan AMK insinööriopintojen Ohjelmoinnin perusteet -kurssi on ensimmäinen osa laajaa ohjelmointikurssien kokonaisuutta. Kurssin osaamistavoitteina on mm. oppia suunnittelemaan ja toteuttamaan ohjelmistoja C#-kielellä sekä oppia luomaan ohjelmallisesti hakemistoja ja tiedostoja, kirjoittaa dataa tiedostoihin ja lukea tietoa tiedostoista. Ohjelmoinnin perusteet -kurssilla opiskelijoiden tekemien ohjelmien tarkastaminen tapahtuu nykyään automaattitestien avulla. Tässä tietotekniikan AMK-insinööriopintojen lopputyössä on tavoitteena kehittää Ohjelmoinnin perusteet -kurssilla käytettäviä automaattitestejä opiskelijalähtöisiksi, jotta opiskelijoiden ymmärrys testaamiseen vahvistuisi jo opiskelujen alkuvaiheessa ja siten oppimisprosessi ohjelmoinnin opiskelussa tehostuisi.
Tämä opinnäytetyö koostuu kirjallisuuskatsauksesta ja päiväkirjamuotoisesta työkuvauksesta. Painopisteenä työssä oli erityisesti tulevien tietotekniikan opiskelijoiden ymmärryksen lisääminen testaamisesta ja koodaamisen oppimisprosessin vahvistaminen opintojen alkuvaiheessa. Opinnäytetyön työosassa ei laadittu kokonaan uusia automaattitestejä, vaan pyrittiin selkiyttämään mm. tehtävänantoa, jotta tehtävät toimisivat opiskelijoita aktivoivina sekä oivallusta ja motivaatiota lisäävinä. Jokaisessa tehtävänannossa painotetaan ohjelmoinnin luonnetta ja koodin kirjoitusmuotoja. Testejä muokattiin toimimaan Windows ja Linux -käyttöjärjestelmillä ja testien toimivuutta selkeytettiin ohjeistuksessa, varmistaen kuitenkin opiskelija aktiivista roolia ohjeiden soveltamisessa eri testiskenaarioissa. Mahdollisesti pistokokeet monivalintakysymyksinä voivat toimia opiskelijoiden osaamisen arvioinnin välineenä. Jatkossa opiskelijatyytyväisyyden ja opiskelutulosten mittaaminen Ohjelmoinnin perusteet-kurssilla toisi lisätietoa tässä opinnäytetyössä ehdotetun muutoksen vaikutuksista.
Tietotekniikan AMK insinööriopintojen Ohjelmoinnin perusteet -kurssi on ensimmäinen osa laajaa ohjelmointikurssien kokonaisuutta. Kurssin osaamistavoitteina on mm. oppia suunnittelemaan ja toteuttamaan ohjelmistoja C#-kielellä sekä oppia luomaan ohjelmallisesti hakemistoja ja tiedostoja, kirjoittaa dataa tiedostoihin ja lukea tietoa tiedostoista. Ohjelmoinnin perusteet -kurssilla opiskelijoiden tekemien ohjelmien tarkastaminen tapahtuu nykyään automaattitestien avulla. Tässä tietotekniikan AMK-insinööriopintojen lopputyössä on tavoitteena kehittää Ohjelmoinnin perusteet -kurssilla käytettäviä automaattitestejä opiskelijalähtöisiksi, jotta opiskelijoiden ymmärrys testaamiseen vahvistuisi jo opiskelujen alkuvaiheessa ja siten oppimisprosessi ohjelmoinnin opiskelussa tehostuisi.
Tämä opinnäytetyö koostuu kirjallisuuskatsauksesta ja päiväkirjamuotoisesta työkuvauksesta. Painopisteenä työssä oli erityisesti tulevien tietotekniikan opiskelijoiden ymmärryksen lisääminen testaamisesta ja koodaamisen oppimisprosessin vahvistaminen opintojen alkuvaiheessa. Opinnäytetyön työosassa ei laadittu kokonaan uusia automaattitestejä, vaan pyrittiin selkiyttämään mm. tehtävänantoa, jotta tehtävät toimisivat opiskelijoita aktivoivina sekä oivallusta ja motivaatiota lisäävinä. Jokaisessa tehtävänannossa painotetaan ohjelmoinnin luonnetta ja koodin kirjoitusmuotoja. Testejä muokattiin toimimaan Windows ja Linux -käyttöjärjestelmillä ja testien toimivuutta selkeytettiin ohjeistuksessa, varmistaen kuitenkin opiskelija aktiivista roolia ohjeiden soveltamisessa eri testiskenaarioissa. Mahdollisesti pistokokeet monivalintakysymyksinä voivat toimia opiskelijoiden osaamisen arvioinnin välineenä. Jatkossa opiskelijatyytyväisyyden ja opiskelutulosten mittaaminen Ohjelmoinnin perusteet-kurssilla toisi lisätietoa tässä opinnäytetyössä ehdotetun muutoksen vaikutuksista.
