一句话:提出基于日志的切片方法,将含多场景的系统级测试用例分解为更小用例,避免静态/动态切片局限。
回归测试中,系统级测试用例常把多个测试场景合并为一个用例,导致执行耗时耗资源,难以维护。将这类用例分解为仅含单一场景及其断言的小用例,可降低执行时间并保持测试有效性;由于测试用例本身也是程序,可使用程序切片实现。但现有静态与动态切片在用例依赖外部资源、无法进行代码插桩或测试执行代价高昂时存在局限。本文因此提出面向系统级测试用例的基于日志的切片方法,利用执行日志支持分解,避免插桩并适应外部资源与高执行成本。摘要未给出具体实验与结果,但目标是在保持原测试有效性的同时降低分解后用例的执行开销。
Regression testing is arguably one of the most important activities in software testing. However, its cost-effectiveness and usefulness can be largely impaired by complex system test cases that are poorly designed (e.g., test cases containing multiple test scenarios combined into a single test case) and that require a large amount of time and resources to run. One way to mitigate this issue is decomposing such system test cases into smaller, separate test cases---each of them with only one test scenario and with its corresponding assertions---so that the execution time of the decomposed test cases is lower than the original test cases, while the test effectiveness of the original test cases is preserved. This decomposition can be achieved with program slicing techniques, since test cases are software programs too. However, existing static and dynamic slicing techniques exhibit limitations when (1) the test cases use external resources, (2) code instrumentation is not a viable option, and (3) test execution is expensive.
@inproceedings{paperbot6663,
title = {Log-based slicing for system-level test cases},
author = {Salma Messaoudi and Donghwan Shin and Annibale Panichella and Domenico Bianculli and Lionel C. Briand},
booktitle = {ISSTA},
year = {2021},
doi = {10.1145/3460319.3464824}
}