Mutation testing in automatic assessment of software testing skills

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

School of Science | Master's thesis

Date

Major/Subject

Mcode

T-106

Degree programme

Language

en

Pages

[6] + 59

Series

Abstract

Introductory programming courses rely heavily on using programming assignments to help teach students the basics of developing software. There exists a need to assess these assignments automatically to reduce the strain caused by manual inspection on limited course staff resources. Learning to program includes software testing. Taditionally automatic assessment systems have relied on code coverage metrics to assess the test suites generated by the students. This work demonstrates weaknesses of this approach and proposes mutation testing as an alternative. Mutation analysis tool Javalanche is evaluated and used on actual coursework in the university's programming courses. The results are analyzed quantitatively and qualitatively to demonstrate the strengths and weaknesses of the new approach.

Ohjelmoinnin peruskurssit ovat voimakkaasti riippuvaisia ohjelmointiharjoituksista opettaessaan oppilaille ohjelmistokehityksen perustaitoja. Näin on syntynyt tarve arvioida näitä harjoituksia automaattisesti, jotta voitaisiin vähentää käsin tehtävän tarkastuksen taakkaa kurssihenkilökunnalta. Ohjelmistotestaus on osa ohjelmoinnin oppimista. Perinteiset automaattiset arviointijärjestelmät käyttävät koodikattavuutta opiskelijoiden testien arviointiin. Tämä työ näyttää tämän lähestymistavan heikkouksia ja ehdottaa vaihtoehdoksi mutaatiotestausta. Javalanche-mutaatiotestaustyökalua arvioidaan, ja sitä käytetään analysoimaan opiskelijoiden harjoitusten vastauksia korkeakoulun ohjelmoinnin kursseilta. Näitä tuloksia arvioidaan kvalitatiivisesti ja kvantitatiivisesti näyttämään uuden lähestymistavan heikkouksia ja vahvuuksia.

Description

Supervisor

Malmi, Lauri

Thesis advisor

Ihantola, Petri

Other note

Citation