Uppsats
En jämförelsestudie mellan testmetoder enhetstestning property-based testing och rich testing
Kandidat-uppsats
Mälardalens universitet/Institutionen för datavetenskap och datateknik
Publicerad: 2026
Språk: Svenska
Nyckelord
klicka för att sökaSammanfattning
Programvarutestning är en viktig del i mjukvaruutveckling, där tester utvecklas för att säkerställa att programkod håller rätt kvalitet. Inom industrin används oftast etablerade testmetoder, som enhetstestning och property-based testing, medan nyare metoder såsom rich testing erbjuder ett alternativt sätt att verifiera beteende i program. Syftet med detta examensarbete är att undersöka hur effektivt rich testing upptäcker olika typer av buggar i två olika datastrukturer, jämfört med enhetstestning och property-based testing. Jämförelsen omfattar även de olika metodernas exekveringstid samt mängden kod som krävs för att implementera testerna med de olika metoderna. Arbetet genomfördes som en experimentstudie där tester med de tre testmetoderna utfördes på två datastrukturer skrivna i programmeringsspråket C, en array-baserad lista och en dubbellänkad lista. Mutationstestning användes för att utvärdera testmetodernas effektivitet, där ett stort antal mutationer applicerades på datastrukturerna. Mutationerna klassificerades i olika buggkategorier för att göra det möjligt att analysera vilken typ av buggar varje metod hade störst förmåga att upptäcka. Resultaten visar att enhetstestning inom de undersökta datastrukturerna och det valda experimentupplägget uppnådde högst mutationsscore och kortast exekveringstid i samtliga genomförda experiment. Rich testing uppnådde resultat som var nära enhetstesterna i de flesta fall och upptäckte även vissa mutationer som de andra metoderna missade. Samtidigt krävde rich testing mindre mängd kod för att uttrycka testfallen. Property-based testing upptäckte minst antal mutationer och hade också en exekveringstid som var betydligt högre än de andra metoderna. Resultaten visar att metoderna till viss del upptäcker olika mutationer. Detta indikerar att metoderna delvis kompletterar varandra i stället för att en metod är tillräcklig för alla situationer.
Information
- Författare
- Peimer, Mikael, Rasmus, Anduri
- Lärosäte / institution
- Mälardalens universitet/Institutionen för datavetenskap och datateknik
- Publiceringsdatum
- 2026
- Uppsatstyp
- Kandidat-uppsats
- Språk
- Svenska
Utforska vidare
Liknande uppsatser
Uppsatser med liknande ämnen och nyckelord.
Kandidat-uppsats, KTH/Skolan för elektroteknik och datavetenskap (EECS)
Lagerhult, Patricia, O’Flaherty, Kevin
Publicerad: 2024
M1-uppsats, Blekinge Tekniska Högskola/Institutionen för datavetenskap
Tammi, Michelle
Publicerad: 2026