Detecting, isolating, and enforcing dependencies among and within test cases

Detecting, isolating, and enforcing dependencies among and within test cases
复制标题

检测、隔离和强制测试用例之间和内部的依赖关系

DOI:
--
复制
发表时间:
2014
期刊:
SIGSOFT FSE
影响因子:
--
通讯作者:
Jonathan Bell
Jonathan Bell
中科院分区:
--
文献类型:
--
作者:
Jonathan Bell

文献摘要

被引文献

相似文献

测试有状态应用程序是具有挑战性的,因为很难识别程序状态的隐藏依赖关系。这些依赖关系可能在几个测试用例之间表现出来,或者只是在单个测试用例中表现出来。当让开发人员记录、理解和响应这些依赖项时,一个错误可能会导致意外和无效的测试结果。尽管当前的测试基础设施目前没有利用状态依赖信息,但我们认为它可以,并且通过这样做可以改进测试。到目前为止,我们的结果表明,通过恢复测试用例之间的依赖关系并修改流行的测试框架JUnit来利用这些信息,我们可以优化测试过程,平均将运行测试所需的时间减少62%。我们正在进行的工作是应用类似的分析来改进现有的最先进的测试套件优先级技术和最先进的测试用例生成技术。
Testing stateful applications is challenging, as it can be difficult to identify hidden dependencies on program state. These dependencies may manifest between several test cases, or simply within a single test case. When it's left to developers to document, understand, and respond to these dependencies, a mistake can result in unexpected and invalid test results. Although current testing infrastructure does not currently leverage state dependency information, we argue that it could, and that by doing so testing can be improved. Our results thus far show that by recovering dependencies between test cases and modifying the popular testing framework, JUnit, to utilize this information, we can optimize the testing process, reducing time needed to run tests by 62% on average. Our ongoing work is to apply similar analyses to improve existing state of the art test suite prioritization techniques and state of the art test case generation techniques.