首页> 外文会议>IEEE/ACM International Conference on Software Engineering >An Industrial Evaluation of Unit Test Generation: Finding Real Faults in a Financial Application
【24h】

An Industrial Evaluation of Unit Test Generation: Finding Real Faults in a Financial Application

机译:单位试验生成的工业评价:在金融申请中找到真正的错误

获取原文

摘要

Automated unit test generation has been extensively studied in the literature in recent years. Previous studies on open source systems have shown that test generation tools are quite effective at detecting faults, but how effective and applicable are they in an industrial application? In this paper, we investigate this question using a life insurance and pension products calculator engine owned by SEB Life & Pension Holding AB Riga Branch. To study fault-finding effectiveness, we extracted 25 real faults from the version history of this software project, and applied two up-to-date unit test generation tools for Java, EVOSUITE and RANDOOP, which implement search-based and feedback-directed random test generation, respectively. Automatically generated test suites detected up to 56.40% (EVOSUITE) and 38.00% (RANDOOP) of these faults. The analysis of our results demonstrates challenges that need to be addressed in order to improve fault detection in test generation tools. In particular, classification of the undetected faults shows that 97.62% of them depend on either "specific primitive values" (50.00%) or the construction of "complex state configuration of objects" (47.62%). To study applicability, we surveyed the developers of the application under test on their experience and opinions about the test generation tools and the generated test cases. This leads to insights on requirements for academic prototypes for successful technology transfer from academic research to industrial practice, such as a need to integrate with popular build tools, and to improve the readability of the generated tests.
机译:近年来文献中的自动化单元测试生成已被广泛研究过。以前关于开源系统的研究表明,测试生成工具在检测故障时非常有效,但它们在工业应用中有多效和适用?在本文中,我们使用SEB Life&Pension持有AB Riga Branch所拥有的人寿保险和养老产品计算器引擎来调查这个问题。要研究故障发现效率,我们从本软件项目的版本历史中提取了25个真正的故障,并应用了Java,Evosuite和Randoop的两个最新单元测试生成工具,该工具实现了基于搜索和反馈的随机性试验生成。自动生成的测试套件可达56.40 %(Evosuite)和38.00 %(RANDOOP)的这些故障。我们的结果分析表明,需要解决的挑战,以便改善测试生成工具中的故障检测。特别地,未检测到的故障的分类表明,它们的97.62%取决于“特定的原始值”(50.00 %)或“对象的复杂状态配置”(47.62 %)。为学习适用性,我们调查了对其经验和关于测试生成工具和生成的测试用例的经验和意见的应用程序的开发人员。这导致对学术原型的要求见解,从学术转移到工业实践的学术研究,例如与流行的构建工具集成,并提高生成测试的可读性。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号