首页> 外文会议>International Symposium on Search-based Software Engineering >Bytecode-Based Multiple Condition Coverage: An Initial Investigation
【24h】

Bytecode-Based Multiple Condition Coverage: An Initial Investigation

机译:基于字节的多条件覆盖:初步调查

获取原文

摘要

Masking occurs when one condition prevents another from influencing the output of a Boolean expression. Adequacy criteria such as Multiple Condition Coverage (MCC) overcome masking within one expression, but offer no guarantees about subsequent expressions. As a result, a Boolean expression written as a single complex statement will yield more effective test cases than when written as a series of simple expressions. Many approaches to automated test case generation for Java operate not on the source code, but on bytecode. The transformation to bytecode simplifies complex expressions into multiple expressions, introducing masking. We propose Bytecode-MCC, a new adequacy criterion designed to group bytecode expressions and reformulate them into complex expressions. Bytecode-MCC should produce test obligations that are more likely to reveal faults in program logic than tests covering the simplified bytecode. A preliminary study shows potential improvements from attaining Bytecode-MCC coverage. However, Bytecode-MCC is difficult to optimize, and means of increasing coverage are needed before the technique can make a difference in practice. We propose potential methods to improve coverage.
机译:当一个条件阻止另一个影响布尔表达式的输出时,会发生屏蔽。在一个表达式中克服屏蔽如多种条件覆盖(MCC),但不提供关于后续表达式的保证。因此,作为单个复杂语句写的布尔表达式将产生比写入一系列简单表达式的更有效的测试用例。用于Java的自动测试案例的许多方法不在源代码上运行,但在字节码上运行。转换为字节码将复杂的表达式简化为多个表达式,引入屏蔽。我们提出了Bytecode-MCC,这是一个新的充分性标准,旨在将字节码组分组,并将它们重构为复杂的表达式。 Bytecode-MCC应该产生测试义务,这些测试义务比覆盖简化字节码的测试更有可能揭示程序逻辑中的故障。初步研究表明,潜在的改进达到了经历频繁的覆盖范围。然而,Bytecode-MCC难以优化,并且在技术可以在实践中产生差异之前需要增加覆盖的手段。我们提出了改善覆盖率的潜在方法。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号