首页> 外文期刊>IEEE Transactions on Software Engineering >How Do Static and Dynamic Test Case Prioritization Techniques Perform on Modern Software Systems? An Extensive Study on GitHub Projects
【24h】

How Do Static and Dynamic Test Case Prioritization Techniques Perform on Modern Software Systems? An Extensive Study on GitHub Projects

机译:静态和动态测试用例优先排序技术在现代软件系统上如何表现?

获取原文
获取原文并翻译 | 示例
       

摘要

Test Case Prioritization (TCP) is an increasingly important regression testing technique for reordering test cases according to a pre-defined goal, particularly as agile practices gain adoption. To better understand these techniques, we perform the first extensive study aimed at empirically evaluating four static TCP techniques, comparing them with state-of-research dynamic TCP techniques across several quality metrics. This study was performed on 58 real-word Java programs encompassing 714 KLoC and results in several notable observations. First, our results across two effectiveness metrics (the Average Percentage of Faults Detected APFD and the cost cognizant APFDc) illustrate that at test-class granularity, these metrics tend to correlate, but this correlation does not hold at test-method granularity. Second, our analysis shows that static techniques can be surprisingly effective, particularly when measured by APFDc. Third, we found that TCP techniques tend to perform better on larger programs, but that program size does not affect comparative performance measures between techniques. Fourth, software evolution does not significantly impact comparative performance results between TCP techniques. Fifth, neither the number nor type of mutants utilized dramatically impact measures of TCP effectiveness under typical experimental settings. Finally, our similarity analysis illustrates that highly prioritized test cases tend to uncover dissimilar faults.
机译:测试用例优先级(TCP)是一种越来越重要的回归测试技术,用于根据预定义的目标对测试用例进行重新排序,尤其是随着敏捷实践的采用。为了更好地理解这些技术,我们进行了首次广泛的研究,旨在对四种静态TCP技术进行经验评估,并将它们与跨多个质量指标的研究状态动态TCP技术进行比较。这项研究是在58个包含714 KLoC的真实单词Java程序上进行的,并得出了一些值得注意的发现。首先,我们在两个有效性指标(检测到的APFD的平均故障百分比和成本识别APFDc)中得出的结果表明,在测试类粒度下,这些指标趋向于相关,但这种关系在测试方法粒度上并不成立。其次,我们的分析表明,静态技术可能会出乎意料地有效,尤其是通过APFDc进行测量时。第三,我们发现TCP技术往往在较大的程序上表现更好,但是程序的大小不会影响技术之间的比较性能指标。第四,软件演进不会显着影响TCP技术之间的比较性能结果。第五,在典型的实验环境下,利用突变体的数量和类型都不会显着影响TCP有效性的度量。最后,我们的相似性分析表明,高度优先的测试用例往往会发现相异的错误。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号