当前位置: X-MOL 学术arXiv.cs.SE › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Towards Integration-Level Test Case Generation Using Call Site Information
arXiv - CS - Software Engineering Pub Date : 2020-01-13 , DOI: arxiv-2001.04221
Pouria Derakhshanfar, Xavier Devroey, Annibale Panichella, Andy Zaidman, Arie van Deursen

Search-based approaches have been used in the literature to automate the process of creating unit test cases. However, related work has shown that generated unit-tests with high code coverage could be ineffective, i.e., they may not detect all faults or kill all injected mutants. In this paper, we proposed an integration-level test case generator named CLING, that exploits the integration code of a pair of classes (caller and callee) that interact with one another through method calls. In particular, CLING generates integration-level test cases that maximize the Coupled Branches Criterion (CBC). CBC is a novel integration-level coverage criterion that measures how thoroughly a test suite exercises the interactions between callers and callees. We evaluate CLING on 140 pairs of classes from five different open-source Java projects. Our results show that (1) CLING generates test suites with high CBC coverage; (2) such generated suites can kill, on average, 10% mutants that are not killable by unit-level tests generated with EVOSUITE for the same classes; (3) CLING detects 29 integration faults that remain undetected when using automatically generated unit-level test suites.

中文翻译:

使用呼叫站点信息实现集成级测试用例生成

文献中已经使用基于搜索的方法来自动化创建单元测试用例的过程。然而,相关工作表明,生成的具有高代码覆盖率的单元测试可能是无效的,即它们可能无法检测到所有错误或杀死所有注入的突变体。在本文中,我们提出了一个名为 CLING 的集成级测试用例生成器,它利用了通过方法调用相互交互的一对类(调用者和被调用者)的集成代码。特别是,CLING 生成集成级测试用例,以最大化耦合分支准则 (CBC)。CBC 是一种新颖的集成级别覆盖标准,用于衡量测试套件在调用者和被调用者之间进行交互的彻底程度。我们在来自五个不同开源 Java 项目的 140 对类上评估 CLING。我们的结果表明 (1) CLING 生成具有高 CBC 覆盖率的测试套件;(2) 这样生成的套件平均可以杀死 10% 的突变体,这些突变体是由 EVOSUITE 为相同类生成的单元级测试无法杀死的;(3) CLING 检测到使用自动生成的单元级测试套件时仍未检测到的 29 个集成故障。
更新日期:2020-01-14
down
wechat
bug