【24h】

Inferential Checking for Mutants Modifying Database States

机译:推理检查突变体修改数据库状态

获取原文

摘要

Several recent research projects have developed new testing techniques targeted to database application programs, a widely used class of programs with some unique characteristics. Mutation testing, focused on interactions between an application and a database, presents a promising approach to evaluating test adequacy and to evaluating the effectiveness of other test generation and test adequacy criteria. Prior work on database application mutation techniques has focused exclusively on SELECT statements, which extract data without modifying the database state. Extending the techniques to updating statements, INSERT, DELETE, and UPDATE, is challenging because it's necessary to compare the behavior of mutants when executed against the same database state, but each mutant execution changes the database state. This paper presents inferential checking, a new technique for determining whether mutants of an updating statement are killed, without actually executing the mutants. Queries are automatically derived from updating statements and their mutants, characterizing the state change that would occur if the statement were executed. Results of these queries are compared to determine which mutants are killed. The paper presents the technique, its implementation for Java/JDBC applications, and empirical evaluation demonstrating that it is efficient, precise, and useful
机译:最近的一些研究项目已经针对数据库应用程序开发了新的测试技术,数据库应用程序是具有某些独特特性的一类广泛使用的程序。着眼于应用程序和数据库之间的交互的变异测试,提出了一种评估测试充分性以及评估其他测试生成和测试充分性标准的有效性的有前途的方法。先前有关数据库应用程序变异技术的工作仅专注于SELECT语句,该语句在不修改数据库状态的情况下提取数据。将技术扩展到更新语句INSERT,DELETE和UPDATE的过程具有挑战性,因为有必要将针对相同数据库状态执行的变量的行为进行比较,但是每个变量执行都会更改数据库状态。本文介绍了推理检查,这是一种确定更新语句的突变体是否被杀死而无需实际执行突变体的新技术。查询是从更新的语句及其变量自动衍生而来的,表征了如果执行该语句将发生的状态更改。比较这些查询的结果,以确定杀死了哪些突变体。本文介绍了该技术,其在Java / JDBC应用程序中的实现以及经验评估,证明了该技术是高效,精确和有用的

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号