Test case selection based on code changes and risk of regression
(2022) EITL05 20221Department of Electrical and Information Technology
- Abstract
- Test case selection is an important part of the quality assurance process in a software project. Since time and resources are limited, test cases have to be prioritized in order to maintain efficiency and meet deadlines. This thesis researches the possibility of improving the development process at Axis Communications by partly automating the test case selections. In this thesis, an algorithm called the 'Test Selection Algorithm' is developed. The algorithm contains two methods for selecting test cases based on recent code changes and their risk of introduced errors or regression. The first method draws a connection between test cases that have previously found errors and reported them and the commits that solves the errors. The second... (More)
- Test case selection is an important part of the quality assurance process in a software project. Since time and resources are limited, test cases have to be prioritized in order to maintain efficiency and meet deadlines. This thesis researches the possibility of improving the development process at Axis Communications by partly automating the test case selections. In this thesis, an algorithm called the 'Test Selection Algorithm' is developed. The algorithm contains two methods for selecting test cases based on recent code changes and their risk of introduced errors or regression. The first method draws a connection between test cases that have previously found errors and reported them and the commits that solves the errors. The second method makes use of text analysis and keyword extraction and matches test cases to commits by analysing the commit messages. The resulting algorithm combines the two methods and produces suggestions on which test cases that should be included in upcoming test runs. A graphical interface containing the suggested test cases was created for the user of the algorithm to easily look at the results from the algorithm.
The result of this thesis is an algorithm that help partly automate the quality assurance process by suggesting test cases that the test leader should include. (Less) - Abstract (Swedish)
- Urval av testfall är en viktig del av processen för kvalitetssäkring i ett projekt. Eftersom tid och resurser är begränsade behöver testfallen prioriteras för att upprätthålla effektivitet och för att möta deadlines. Detta examensarbete utforskar möjligheten att förbättra utvecklingsprocessen på Axis Communications genom att delvis automatisera utväljandet av testfall. I detta examensarbete har en algoritm som kallas 'Test Selection Algorithm' utvecklats. Algoritmen innehåller två metoder för att välja ut testfall baserat på nyligen gjorda kodändringar och deras risk för nya fel eller regression. Den första metoden drar en direkt koppling mellan testfall som tidigare hittat fel och rapporterat dessa, till kodändringar som löser felen. Den... (More)
- Urval av testfall är en viktig del av processen för kvalitetssäkring i ett projekt. Eftersom tid och resurser är begränsade behöver testfallen prioriteras för att upprätthålla effektivitet och för att möta deadlines. Detta examensarbete utforskar möjligheten att förbättra utvecklingsprocessen på Axis Communications genom att delvis automatisera utväljandet av testfall. I detta examensarbete har en algoritm som kallas 'Test Selection Algorithm' utvecklats. Algoritmen innehåller två metoder för att välja ut testfall baserat på nyligen gjorda kodändringar och deras risk för nya fel eller regression. Den första metoden drar en direkt koppling mellan testfall som tidigare hittat fel och rapporterat dessa, till kodändringar som löser felen. Den andra metoden använder textanalys och nyckelord för att matcha testfall till kodändringar genom att analysera meddelandena i kodändringarna. Den resulterande algoritmen kombinerar de två metoderna och producerar förslag på vilka testfall som borde inkluderas i kommande testrundor. Ett grafiskt användargränssnitt som innehåller de föreslagna testfallen skapades för att användaren av algoritmen enkelt skall kunna få en överblick över resultaten från algoritmen.
Resultatet av detta examensarbete är en algoritm som delvis automatiserar processen för kvalitetssäkring genom att föreslå testfall som testledare borde inkludera i testrundor. (Less)
Please use this url to cite or link to this publication:
http://lup.lub.lu.se/student-papers/record/9091934
- author
- Larsson, Christoffer LU and Olofsson, Alexander LU
- supervisor
- organization
- alternative title
- Val av testfall baserat på kodändringar och risk för regression
- course
- EITL05 20221
- year
- 2022
- type
- M2 - Bachelor Degree
- subject
- keywords
- Quality Assurance, Test Case Selection, Keyword Extraction, Text-analysis, Application Programming Interface.
- report number
- LU/LTH-EIT 2022-879
- language
- English
- id
- 9091934
- date added to LUP
- 2022-06-23 12:00:35
- date last changed
- 2022-06-23 12:00:35
@misc{9091934, abstract = {{Test case selection is an important part of the quality assurance process in a software project. Since time and resources are limited, test cases have to be prioritized in order to maintain efficiency and meet deadlines. This thesis researches the possibility of improving the development process at Axis Communications by partly automating the test case selections. In this thesis, an algorithm called the 'Test Selection Algorithm' is developed. The algorithm contains two methods for selecting test cases based on recent code changes and their risk of introduced errors or regression. The first method draws a connection between test cases that have previously found errors and reported them and the commits that solves the errors. The second method makes use of text analysis and keyword extraction and matches test cases to commits by analysing the commit messages. The resulting algorithm combines the two methods and produces suggestions on which test cases that should be included in upcoming test runs. A graphical interface containing the suggested test cases was created for the user of the algorithm to easily look at the results from the algorithm. The result of this thesis is an algorithm that help partly automate the quality assurance process by suggesting test cases that the test leader should include.}}, author = {{Larsson, Christoffer and Olofsson, Alexander}}, language = {{eng}}, note = {{Student Paper}}, title = {{Test case selection based on code changes and risk of regression}}, year = {{2022}}, }