On learning meaningful assert statements for unit test cases

计算机科学 正确性 单元测试 语句(逻辑) 软件工程 考试(生物学) 代码覆盖率 测试用例 测试管理方法 软件 人工智能 源代码 测试线束 机器学习 程序设计语言 软件开发 软件建设 古生物学 回归分析 法学 生物 政治学
作者
Cody Watson,Michele Tufano,Kevin Moran,Gabriele Bavota,Denys Poshyvanyk
标识
DOI:10.1145/3377811.3380429
摘要

Software testing is an essential part of the software lifecycle and requires a substantial amount of time and effort. It has been estimated that software developers spend close to 50% of their time on testing the code they write. For these reasons, a long standing goal within the research community is to (partially) automate software testing. While several techniques and tools have been proposed to automatically generate test methods, recent work has criticized the quality and usefulness of the assert statements they generate. Therefore, we employ a Neural Machine Translation (NMT) based approach called Atlas(AuTomatic Learning of Assert Statements) to automatically generate meaningful assert statements for test methods. Given a test method and a focal method (i.e.,the main method under test), Atlas can predict a meaningful assert statement to assess the correctness of the focal method. We applied Atlas to thousands of test methods from GitHub projects and it was able to predict the exact assert statement manually written by developers in 31% of the cases when only considering the top-1 predicted assert. When considering the top-5 predicted assert statements, Atlas is able to predict exact matches in 50% of the cases. These promising results hint to the potential usefulness ofour approach as (i) a complement to automatic test case generation techniques, and (ii) a code completion support for developers, whocan benefit from the recommended assert statements while writing test code.

科研通智能强力驱动
Strongly Powered by AbleSci AI
更新
大幅提高文件上传限制,最高150M (2024-4-1)

科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
Young lake发布了新的文献求助10
1秒前
义气严青完成签到,获得积分10
1秒前
1秒前
Yao完成签到,获得积分10
1秒前
高中666发布了新的文献求助20
1秒前
水深三英尺完成签到,获得积分10
2秒前
Alice发布了新的文献求助10
2秒前
王多肉完成签到,获得积分10
2秒前
LIU完成签到,获得积分10
2秒前
刘振岁发布了新的文献求助10
2秒前
传奇3应助mjr采纳,获得30
3秒前
pilgrim完成签到,获得积分10
3秒前
VDC发布了新的文献求助10
3秒前
biofresh完成签到,获得积分10
3秒前
xxh完成签到 ,获得积分10
4秒前
黎明完成签到,获得积分10
4秒前
Silone发布了新的文献求助10
4秒前
qiao发布了新的文献求助10
5秒前
6秒前
6秒前
天天快乐应助xinxin采纳,获得10
6秒前
子民应助pilgrim采纳,获得10
7秒前
balloonflying完成签到,获得积分10
7秒前
肘汁派完成签到,获得积分10
7秒前
运医瘦瘦花生完成签到,获得积分10
7秒前
BYXGZ完成签到,获得积分20
7秒前
兀那狗子别跑完成签到,获得积分10
8秒前
Owen应助Snow采纳,获得10
9秒前
乐乐应助大大小小采纳,获得10
10秒前
Jasper应助wuwan采纳,获得10
10秒前
11秒前
碳酸氢钠完成签到,获得积分10
11秒前
11秒前
11秒前
失眠傲白发布了新的文献求助10
12秒前
WDD发布了新的文献求助10
12秒前
zz完成签到,获得积分10
12秒前
12秒前
活泼的枫叶完成签到,获得积分10
13秒前
123应助来自天边云彩采纳,获得20
14秒前
高分求助中
Licensing Deals in Pharmaceuticals 2019-2024 3000
Effect of reactor temperature on FCC yield 2000
Very-high-order BVD Schemes Using β-variable THINC Method 1020
PraxisRatgeber: Mantiden: Faszinierende Lauerjäger 800
Mission to Mao: Us Intelligence and the Chinese Communists in World War II 600
The Conscience of the Party: Hu Yaobang, China’s Communist Reformer 600
A new species of Coccus (Homoptera: Coccoidea) from Malawi 500
热门求助领域 (近24小时)
化学 医学 生物 材料科学 工程类 有机化学 生物化学 物理 内科学 纳米技术 计算机科学 化学工程 复合材料 基因 遗传学 催化作用 物理化学 免疫学 量子力学 细胞生物学
热门帖子
关注 科研通微信公众号,转发送积分 3299266
求助须知:如何正确求助?哪些是违规求助? 2934183
关于积分的说明 8467773
捐赠科研通 2607652
什么是DOI,文献DOI怎么找? 1423827
科研通“疑难数据库(出版商)”最低求助积分说明 661704
邀请新用户注册赠送积分活动 645391