TESTMINE - Mining Test Evolution for Improved Software Regression Test Selection (KKS)
In TestMine, we will propose and validate novel techniques that are not dependent on code-coverage information but rather harness test evolution data for RTS at system test.
Description of the project
Swedish industries are increasingly relying on software development to maintain their competitive- ness. This reliance requires that the developed software is of sufficient quality. Software regression testing is an important quality assurance activity that ensures that changes made to the source code, e.g., for the purpose of correcting bugs or implementing new features, do not introduce new faults in the existing code. Regression testing is known to be expensive as the test suites can grow large and hence time consuming to execute. Regression test selection (RTS) aims to select a subset of test cases to execute for regression testing while balancing cost and defect detection ability. Most existing RTS techniques aim to maximize the code coverage of selected subset of test cases. This reliance on code coverage is not practical in cases where such information is not available or is hard to trace. This is the case for system level testing in general and for real-time/embedded software in particular.
Moreover, with industries adopting agile methods, it is not evident how to effectively integrate RTS techniques in the shorter development life cycles of such methods. In TestMine, we will propose and validate novel techniques that are not dependent on code-coverage information but rather harness test evolution data for RTS at system test. We use the term test evolution to describe data related to how the test suites evolve throughout their lifetimes and between different versions of software. The effectiveness and efficiency of such techniques will be evaluated through large real-world industrial empirical studies in an agile context. Co-production with industrial partners (Westermo Research and Development AB & Bombardier Transportation AB) will ensure that the proposed techniques are based on mutually agreed requirements, properly validated and disseminated for the benefit of both industry and academia.