TestART: Improving LLM-based Unit Test via Co-evolution of Automated Generation and Repair Iteration

考试(生物学) 单元测试 单位(环理论) 可靠性工程 计算机科学 数学 工程类 操作系统 生物 数学教育 生态学 软件
作者
Siqi Gu,Chunrong Fang,Quanjun Zhang,Fangyuan Tian,Jianyi Zhou,Zhenyu Chen
出处
期刊:Cornell University - arXiv
标识
DOI:10.48550/arxiv.2408.03095
摘要

Unit test is crucial for detecting bugs in individual program units but consumes time and effort. The existing automated unit test generation methods are mainly based on search-based software testing (SBST) and language models to liberate developers. Recently, large language models (LLMs) have demonstrated remarkable reasoning and generation capabilities. However, several problems limit their ability to generate high-quality test cases: (1) LLMs may generate invalid test cases under insufficient context, resulting in compilation errors; (2) Lack of test and coverage feedback information may cause runtime errors and low coverage rates. (3) The repetitive suppression problem causes LLMs to get stuck into the repetition loop of self-repair or re-generation attempts. In this paper, we propose TestART, a novel unit test generation method that leverages the strengths of LLMs while overcoming the limitations mentioned. TestART improves LLM-based unit test via co-evolution of automated generation and repair iteration. TestART leverages the template-based repair technique to fix bugs in LLM-generated test cases, using prompt injection to guide the next-step automated generation and avoid repetition suppression. Furthermore, TestART extracts coverage information from the passed test cases and utilizes it as testing feedback to enhance the sufficiency of the final test case. This synergy between generation and repair elevates the quality, effectiveness, and readability of the produced test cases significantly beyond previous methods. In comparative experiments, the pass rate of TestART-generated test cases is 78.55%, which is approximately 18% higher than both the ChatGPT-4.0 model and the same ChatGPT-3.5-based method ChatUniTest. It also achieves an impressive line coverage rate of 90.96% on the focal methods that passed the test, exceeding EvoSuite by 3.4%.

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
乐乐应助地球采纳,获得10
刚刚
思源应助地球采纳,获得10
刚刚
JamesPei应助地球采纳,获得10
刚刚
所所应助地球采纳,获得10
刚刚
华仔应助地球采纳,获得10
刚刚
小二郎应助地球采纳,获得10
刚刚
Akim应助地球采纳,获得10
刚刚
田様应助地球采纳,获得10
刚刚
赘婿应助地球采纳,获得10
刚刚
可爱的函函应助地球采纳,获得10
刚刚
典雅的依云完成签到,获得积分10
1秒前
Louisa完成签到,获得积分10
1秒前
LWL发布了新的文献求助10
1秒前
高大荔枝发布了新的文献求助10
2秒前
黄毅发布了新的文献求助10
3秒前
3秒前
orixero应助快乐的谷蓝采纳,获得10
3秒前
qqqq_8完成签到,获得积分10
4秒前
young发布了新的文献求助10
5秒前
烟花应助机灵瑛采纳,获得10
6秒前
drughunter009完成签到 ,获得积分10
6秒前
阿松大完成签到,获得积分20
9秒前
科研通AI6.1应助高大荔枝采纳,获得10
10秒前
ll完成签到,获得积分10
10秒前
11秒前
youshanyi完成签到,获得积分10
11秒前
beibei发布了新的文献求助10
11秒前
爱听歌的盼易完成签到 ,获得积分10
11秒前
12秒前
Hezzzz完成签到,获得积分10
13秒前
liyan完成签到,获得积分10
14秒前
14秒前
bosco完成签到,获得积分10
14秒前
15秒前
ecchaos完成签到,获得积分10
15秒前
bahung完成签到,获得积分10
16秒前
16秒前
17秒前
Xavier完成签到 ,获得积分10
17秒前
18秒前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
A Research Agenda for Law, Finance and the Environment 800
Development Across Adulthood 800
Chemistry and Physics of Carbon Volume 18 800
The Organometallic Chemistry of the Transition Metals 800
A Time to Mourn, A Time to Dance: The Expression of Grief and Joy in Israelite Religion 700
The formation of Australian attitudes towards China, 1918-1941 640
热门求助领域 (近24小时)
化学 材料科学 医学 生物 纳米技术 工程类 有机化学 化学工程 生物化学 计算机科学 物理 内科学 复合材料 催化作用 物理化学 光电子学 电极 细胞生物学 基因 无机化学
热门帖子
关注 科研通微信公众号,转发送积分 6447308
求助须知:如何正确求助?哪些是违规求助? 8260416
关于积分的说明 17598018
捐赠科研通 5508735
什么是DOI,文献DOI怎么找? 2902315
邀请新用户注册赠送积分活动 1879326
关于科研通互助平台的介绍 1719790