In a test suite, all the test cases should be independent: no test should affect any other test’s result, and running the tests in any order should produce the same test results. Techniques such as test prioritization generally assume that the tests in a suite are independent. Test dependence is a little-studied phenomenon. This paper presents five results related to test dependence. First, we characterize the test dependence that arises in practice. We studied 96 real-world dependent tests from 5 issue tracking systems. Our study shows that test dependence can be hard for programmers to identify. It also shows that test dependence can cause non-trivial consequences, such as masking program faults and leading to spurious bug reports. Second...
Developers are increasingly using services such as Dependabot to automate dependency updates. Howeve...
The increase in the complexity of modern software has led to the commensurate growth in the size and...
Regression testing is an important part of software main-tenance, but it can also be very expensive....
In a test suite, all the test cases should be independent: no test should affect any other test’s re...
Regression tests should consistently produce the same outcome when executed against the same version...
Test case prioritization is the process of ordering the execution of test cases to achieve a certain...
Testing stateful applications is challenging, as it can be difficult to identify hidden dependencies...
Abstract—Test case prioritisation is the process of ordering the exe-cution of test cases to achieve...
Context: Existing test suite prioritization techniques usually rely on code coverage information or ...
Testing is potentially the best grounded part of software engineering, since it deals with the well ...
As software grows in size and complexity, it also becomes more interdependent. Multiple internal com...
Many existing studies measure the effectiveness of test case prioritization techniques using the ave...
Test suite effectiveness is measured by assessing the portion of faults that can be detected by tes...
E2E web test suites are prone to test dependencies due to the heterogeneous multi-tiered nature of m...
Flaky tests are non-deterministic tests that both pass and fail when no new code changes have been i...
Developers are increasingly using services such as Dependabot to automate dependency updates. Howeve...
The increase in the complexity of modern software has led to the commensurate growth in the size and...
Regression testing is an important part of software main-tenance, but it can also be very expensive....
In a test suite, all the test cases should be independent: no test should affect any other test’s re...
Regression tests should consistently produce the same outcome when executed against the same version...
Test case prioritization is the process of ordering the execution of test cases to achieve a certain...
Testing stateful applications is challenging, as it can be difficult to identify hidden dependencies...
Abstract—Test case prioritisation is the process of ordering the exe-cution of test cases to achieve...
Context: Existing test suite prioritization techniques usually rely on code coverage information or ...
Testing is potentially the best grounded part of software engineering, since it deals with the well ...
As software grows in size and complexity, it also becomes more interdependent. Multiple internal com...
Many existing studies measure the effectiveness of test case prioritization techniques using the ave...
Test suite effectiveness is measured by assessing the portion of faults that can be detected by tes...
E2E web test suites are prone to test dependencies due to the heterogeneous multi-tiered nature of m...
Flaky tests are non-deterministic tests that both pass and fail when no new code changes have been i...
Developers are increasingly using services such as Dependabot to automate dependency updates. Howeve...
The increase in the complexity of modern software has led to the commensurate growth in the size and...
Regression testing is an important part of software main-tenance, but it can also be very expensive....