AmPyfier:Python 中的测试扩增
软件工程
2021-12-22 v1
摘要
测试扩增(test amplification)是一种将手写测试扩展为更严格的测试套件以覆盖被测系统中边界情况的方法。遗憾的是,当前最先进的测试扩增严重依赖程序分析技术,而这类技术从 Java 和 C++ 等静态类型语言中显式的类型声明获益良多。在动态类型语言中,此类类型声明不可用,因此测试扩增尚未进入 Python、Ruby 和 Javascript 等编程语言。在本文中,我们提出了一个概念验证工具 AmPyfier,将测试扩增引入动态类型、解释型语言 Python。我们在 7 个开源项目上评估了该方法,发现 AmPyfier 能成功强化 10 个测试类中的 7 个(70%)。由此我们证明,测试扩增在当今最流行的编程语言之一是可行的。
引用
@article{arxiv.2112.11155,
title = {AmPyfier: Test Amplification in Python},
author = {Ebert Schoofs and Mehrdad Abdi and Serge Demeyer},
journal= {arXiv preprint arXiv:2112.11155},
year = {2021}
}