Testprioritering med stöd av maskininlärning
Loading...
Date
Authors
Type
Examensarbete på kandidatnivå
Programme
Model builders
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Regression testing is an integral part of the continuous integration software development
practice. As testing suites grow larger and execution time increases the development cycle
slows down. By prioritizing tests within a given test suite development time can be
optimized if tests more likely to fail are executed first. The sooner a failing test can be
discovered the sooner problems with the software can be fixed. This thesis aims at
researching the possibility of using machine learning to look at changes made within a
software build to prioritize tests according to highest likelihood of failure.
The thesis is done in collaboration with Ericsson where resources and data are supplied
from their System Test department. With data collected from their regression testing suites
experimentation were made to evaluate how machine learning can be used to prioritize tests
within their weekly regression testing. The research resulted in some inconclusive results
but a good indication that machine learning can be used to prioritize tests with promising
outcomes.
Description
Keywords
Test Prioritization, Machine Learning, Regression Testing, Continuous Integration, Optimization, Python
