ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolutionary Search

计算机科学 测试套件 代码覆盖率 测试用例 抽象语法树 故障覆盖率 可扩展性 缩小 相似性(几何) 自动测试模式生成 考试(生物学) Java 回归检验 语法 程序设计语言 软件 人工智能 机器学习 软件开发 操作系统 工程类 电子线路 电气工程 古生物学 回归分析 图像(数学) 软件建设 生物
作者
Rongqi Pan,Taher Ahmed Ghaleb,Lionel Briand
标识
DOI:10.1109/icse48619.2023.00146
摘要

Executing large test suites is time and resource consuming, sometimes impossible, and such test suites typically contain many redundant test cases. Hence, test case (suite) minimization is used to remove redundant test cases that are unlikely to detect new faults. However, most test case minimization techniques rely on code coverage (white-box), model-based features, or requirements specifications, which are not always (entirely) accessible by test engineers. Code coverage analysis also leads to scalability issues, especially when applied to large industrial systems. Recently, a set of novel techniques was proposed, called FAST-R, relying solely on test case code for test case minimization, which appeared to be much more efficient than white-box techniques. However, it achieved a comparable low fault detection capability for Java projects, thus making its application challenging in practice. In this paper, we propose ATM (AST-based Test case Minimizer), a similarity-based, search-based test case minimization technique, taking a specific budget as input, that also relies exclusively on the source code of test cases but attempts to achieve higher fault detection through finer-grained similarity analysis and a dedicated search algorithm. ATM transforms test case code into Abstract Syntax Trees (AST) and relies on four tree-based similarity measures to apply evolutionary search, specifically genetic algorithms, to minimize test cases. We evaluated the effectiveness and efficiency of ATM on a large dataset of 16 Java projects with 661 faulty versions using three budgets ranging from 25% to 75% of test suites. ATM achieved significantly higher fault detection rates (0.82 on average), compared to FAST-R (0.61 on average) and random minimization (0.52 on average), when running only 50% of the test cases, within practically acceptable time (1.1 - 4.3 hours, on average, per project version), given that minimization is only occasionally applied when many new test cases are created (major releases). Results achieved for other budgets were consistent.

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
爆米花应助卑微小何采纳,获得10
刚刚
泊远轩应助蒋美桥采纳,获得10
1秒前
1秒前
南寻完成签到,获得积分10
1秒前
李健应助偷喝气泡水采纳,获得10
1秒前
隐形曼青应助默默的栾采纳,获得10
2秒前
XueXiTong发布了新的文献求助10
3秒前
英姑应助儒雅猕猴桃采纳,获得10
4秒前
Y园园园园发布了新的文献求助10
4秒前
卑微小何完成签到,获得积分10
4秒前
泊远轩应助卞佳琦采纳,获得10
4秒前
JW发布了新的文献求助10
5秒前
Spark发布了新的文献求助10
5秒前
莫望发布了新的文献求助10
5秒前
6秒前
HEHEDA完成签到,获得积分20
7秒前
7秒前
8秒前
所所应助hehe采纳,获得10
8秒前
ccccccc发布了新的文献求助10
9秒前
10秒前
科研通AI6.4应助子星采纳,获得10
10秒前
斯文败类应助俊逸的代曼采纳,获得10
10秒前
无我完成签到,获得积分10
10秒前
11秒前
11秒前
世良发布了新的文献求助10
11秒前
tom完成签到,获得积分10
12秒前
升龙击发布了新的文献求助10
12秒前
12秒前
13秒前
田占果果完成签到,获得积分10
13秒前
13秒前
ywyw发布了新的文献求助10
14秒前
子星完成签到,获得积分10
15秒前
CipherSage应助我爱科研采纳,获得10
15秒前
一二三发布了新的文献求助10
15秒前
yi111发布了新的文献求助10
16秒前
16秒前
17秒前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
Relation between chemical structure and local anesthetic action: tertiary alkylamine derivatives of diphenylhydantoin 1000
Signals, Systems, and Signal Processing 610
Discrete-Time Signals and Systems 610
Principles of town planning : translating concepts to applications 500
Iron‐Sulfur Clusters: Biogenesis and Biochemistry 400
Healable Polymer Systems: Fundamentals, Synthesis and Applications 400
热门求助领域 (近24小时)
化学 材料科学 医学 生物 工程类 纳米技术 有机化学 物理 生物化学 化学工程 计算机科学 复合材料 内科学 催化作用 光电子学 物理化学 电极 冶金 遗传学 细胞生物学
热门帖子
关注 科研通微信公众号,转发送积分 6070953
求助须知:如何正确求助?哪些是违规求助? 7902535
关于积分的说明 16338667
捐赠科研通 5211577
什么是DOI,文献DOI怎么找? 2787372
邀请新用户注册赠送积分活动 1770167
关于科研通互助平台的介绍 1648118