TY - GEN
T1 - Mitigating (and exploiting) test reduction slippage
AU - Holmes, Josie
AU - Groce, Alex
AU - Alipour, Mohammad Amin
N1 - Publisher Copyright:
© 2016 ACM.
PY - 2016/11/18
Y1 - 2016/11/18
N2 - Reducing the size of tests, typically by delta debugging or a related algorithm, is a critical component of effective automated testing and debugging. Automatically generated or user-submitted tests are often far longer than required, full of unnecessary components that make debugging difficult. Test reduction algorithms automatically remove components of such tests, while preserving the property that the test fails. Unfortunately, reduction can sometimes transform a failing test that detects a subtle, critical, and previously unknown fault into a test that detects a trivial-to-fine, unimportant, and already known fault. When reducing a test detecting fault(s) F produces a test that does not detect the same F, this is known as slippage. In the case where an interesting fault slips to an uninteresting fault, slippage is a problem, and must be avoided. However, slippage can also be beneficial, when a long test can be reduced to detect a fault that has not otherwise been detected (including by the original test). While traditional delta debugging only produces one reduced test, the concept of slippage suggests an alternative approach, where the output of reduction is a set of reduced tests, in order to avoid problematic slippage and induce beneficial slippage. In this paper, we present preliminary efforts to understand slippage, and compare two approaches to slippage mitigation.
AB - Reducing the size of tests, typically by delta debugging or a related algorithm, is a critical component of effective automated testing and debugging. Automatically generated or user-submitted tests are often far longer than required, full of unnecessary components that make debugging difficult. Test reduction algorithms automatically remove components of such tests, while preserving the property that the test fails. Unfortunately, reduction can sometimes transform a failing test that detects a subtle, critical, and previously unknown fault into a test that detects a trivial-to-fine, unimportant, and already known fault. When reducing a test detecting fault(s) F produces a test that does not detect the same F, this is known as slippage. In the case where an interesting fault slips to an uninteresting fault, slippage is a problem, and must be avoided. However, slippage can also be beneficial, when a long test can be reduced to detect a fault that has not otherwise been detected (including by the original test). While traditional delta debugging only produces one reduced test, the concept of slippage suggests an alternative approach, where the output of reduction is a set of reduced tests, in order to avoid problematic slippage and induce beneficial slippage. In this paper, we present preliminary efforts to understand slippage, and compare two approaches to slippage mitigation.
KW - Delta debugging
KW - Slippage
KW - Test manipulation and reduction
UR - http://www.scopus.com/inward/record.url?scp=85007106903&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85007106903&partnerID=8YFLogxK
U2 - 10.1145/2994291.2994301
DO - 10.1145/2994291.2994301
M3 - Conference contribution
AN - SCOPUS:85007106903
T3 - A-TEST 2016 - Proceedings of the 7th International Workshop on Automating Test Case Design, Selection, and Evaluation, co-located with FSE 2016
SP - 66
EP - 69
BT - A-TEST 2016 - Proceedings of the 7th International Workshop on Automating Test Case Design, Selection, and Evaluation, co-located with FSE 2016
A2 - Eldh, Sigrid
A2 - Prasetya, Wishnu
A2 - Vos, Tanja
PB - Association for Computing Machinery, Inc
T2 - 7th International Workshop on Automating Test Case Design, Selection, and Evaluation, A-TEST 2016
Y2 - 18 November 2016
ER -