首页> 外文OA文献 >Modélisation par contraintes de programmes en bytecode Java pour la génération automatique de tests
【2h】

Modélisation par contraintes de programmes en bytecode Java pour la génération automatique de tests

机译:用Java字节码对程序进行约束建模以自动生成测试

摘要

Program verification is essential to maintain a certain level of quality and reliability. Testing is to date the most used software verification mean in industry. Constraint programming is seen as an effective way to automate test data generation. In this thesis we propose a constraint modeling of the Java bytecode semantics, and a method, based on this modeling, to automatically generate test data. Our constraint model of the semantics of a Java bytecode program allows effective deductions, including in the presence of complex data structures or inheritance. In particular, the use of type variables can take into account inheritance and polymorphic method calls. Our method of test data generation uses the constraint model to cover specific instructions of the program under test. It uses a backward progression in the control flow graph to enumerate paths leading to the target instructions. This method suits particularly to cover instructions that are not reached by other methods of test data generation. Finally this method is implemented in a prototype named JAUT (Java Automatic Unit Testing). The experiments show that the prototype can increase the statements coverage obtained with the other available tools.
机译:程序验证对于维持一定水平的质量和可靠性至关重要。迄今为止,测试是业界最常用的软件验证手段。约束编程被视为自动化测试数据生成的有效方法。在本文中,我们提出了Java字节码语义的约束模型,以及基于该模型的自动生成测试数据的方法。我们对Java字节码程序的语义的约束模型允许进行有效的推论,包括在存在复杂数据结构或继承的情况下。特别是,类型变量的使用可以考虑继承和多态方法调用。我们的测试数据生成方法使用约束模型来覆盖被测程序的特定指令。它使用控制流程图中的向后进度来枚举通向目标指令的路径。此方法特别适合涵盖其他测试数据生成方法未达到的指令。最后,该方法在名为JAUT(Java自动单元测试)的原型中实现。实验表明,该原型可以增加使用其他可用工具获得的语句覆盖范围。

著录项

  • 作者

    Charreteur Florence;

  • 作者单位
  • 年度 2010
  • 总页数
  • 原文格式 PDF
  • 正文语种 fr
  • 中图分类

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号