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.
最长约 10秒,即可获得该文献文件

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
1秒前
浅浅发布了新的文献求助10
2秒前
852应助怡春院李老鸨采纳,获得10
3秒前
3秒前
研友_LXOJq8完成签到,获得积分10
4秒前
李国威发布了新的文献求助10
5秒前
狄老黑发布了新的文献求助10
6秒前
7秒前
鲜于夜白发布了新的文献求助10
7秒前
7秒前
所所应助Moria采纳,获得10
8秒前
星辰大海应助能干的邹采纳,获得10
10秒前
认真的豆豆完成签到,获得积分10
11秒前
刘坦苇发布了新的文献求助10
11秒前
12秒前
12秒前
完美世界应助复杂的宛采纳,获得10
12秒前
研友_LXOJq8发布了新的文献求助10
12秒前
星辰大海应助草木方子采纳,获得10
13秒前
13秒前
用头打碟发布了新的文献求助10
13秒前
14秒前
14秒前
路由器关注了科研通微信公众号
15秒前
katu发布了新的文献求助10
16秒前
慕青应助LM采纳,获得10
16秒前
李国威完成签到,获得积分10
16秒前
灭亡发布了新的文献求助10
18秒前
18秒前
19秒前
20秒前
20秒前
xiuwen完成签到,获得积分10
20秒前
科研通AI2S应助katu采纳,获得10
20秒前
刘坦苇发布了新的文献求助10
21秒前
小跳完成签到,获得积分10
24秒前
停停走走发布了新的文献求助10
24秒前
灭亡完成签到,获得积分10
24秒前
kayla发布了新的文献求助30
27秒前
生动大白菜真实的钥匙完成签到,获得积分10
27秒前
高分求助中
Production Logging: Theoretical and Interpretive Elements 2500
Востребованный временем 2500
Aspects of Babylonian celestial divination : the lunar eclipse tablets of enuma anu enlil 1500
Agaricales of New Zealand 1: Pluteaceae - Entolomataceae 1040
Healthcare Finance: Modern Financial Analysis for Accelerating Biomedical Innovation 1000
Classics in Total Synthesis IV: New Targets, Strategies, Methods 1000
지식생태학: 생태학, 죽은 지식을 깨우다 600
热门求助领域 (近24小时)
化学 医学 材料科学 生物 工程类 有机化学 生物化学 纳米技术 内科学 物理 化学工程 计算机科学 复合材料 基因 遗传学 物理化学 催化作用 细胞生物学 免疫学 电极
热门帖子
关注 科研通微信公众号,转发送积分 3459542
求助须知:如何正确求助?哪些是违规求助? 3053895
关于积分的说明 9039379
捐赠科研通 2743266
什么是DOI,文献DOI怎么找? 1504749
科研通“疑难数据库(出版商)”最低求助积分说明 695392
邀请新用户注册赠送积分活动 694685