首页> 外文OA文献 >A Comprehensive Framework for Testing Database-Centric Software Applications
【2h】

A Comprehensive Framework for Testing Database-Centric Software Applications

机译:测试以数据库为中心的软件应用程序的全面框架

摘要

The database is a critical component of many modern software applications. Recent reports indicate that the vast majority of database use occurs from within an application program. Indeed, database-centric applications have been implemented to create digital libraries, scientific data repositories, and electronic commerce applications. However, a database-centric application is very different from a traditional software system because it interacts with a database that has a complex state and structure. This dissertation formulates a comprehensive framework to address the challenges that are associated with the efficient and effective testing of database-centric applications. The database-aware approach to testing includes: (i) a fault model, (ii) several unified representations of a program's database interactions, (iii) a family of test adequacycriteria, (iv) a test coverage monitoring component, and (v) tools for reducing and re-ordering a test suite during regression testing.This dissertation analyzes the worst-case time complexity of every important testing algorithm. This analysis is complemented by experiments that measure the efficiency and effectiveness of thedatabase-aware testing techniques. Each tool is evaluated by using it to test six database-centric applications. The experiments show thatthe database-aware representations can be constructed with moderate time and space overhead. The adequacy criteria call for test suitesto cover 20% more requirements than traditional criteria and this ensures the accurate assessment of test suite quality. It is possibleto enumerate data flow-based test requirements in less than one minute and coverage tree path requirements are normally identified in no morethan ten seconds. The experimental results also indicate that the coverage monitor can insert instrumentation probes into all six of theapplications in fewer than ten seconds. Although instrumentation may moderately increase the static space overhead of an application, the coverage monitoring techniques only increase testing time by 55% on average. A coverage tree often can be stored in less than five seconds even though the coverage report may consume up to twenty-fivemegabytes of storage. The regression tester usually reduces or prioritizes a test suite in under five seconds. The experiments also demonstrate that the modified test suite is frequently more streamlined than the initial tests.
机译:数据库是许多现代软件应用程序的重要组成部分。最近的报告表明,绝大多数数据库使用来自应用程序内部。实际上,已经实现了以数据库为中心的应用程序,以创建数字图书馆,科学数据存储库和电子商务应用程序。但是,以数据库为中心的应用程序与传统的软件系统有很大不同,因为它与具有复杂状态和结构的数据库进行交互。本文提出了一个全面的框架,以解决与以数据库为中心的应用程序的高效测试相关的挑战。基于数据库的测试方法包括:(i)故障模型,(ii)程序数据库交互的几种统一表示,(iii)测试充分性标准系列,(iv)测试覆盖率监视组件,以及(v)在回归测试中减少和重新排序测试套件的工具。本文分析了每种重要测试算法在最坏情况下的时间复杂度。该分析辅之以测量数据库感知测试技术的效率和有效性的实验。通过使用每个工具测试六个以数据库为中心的应用程序来评估每个工具。实验表明,可以在适度的时间和空间开销下构造数据库感知表示。充分性标准要求测试套件要比传统标准多覆盖20%的要求,这可以确保对测试套件质量的准确评估。可以在不到一分钟的时间内枚举基于数据流的测试要求,并且通常不超过十秒钟即可确定覆盖树路径要求。实验结果还表明,覆盖率监视器可以在不到十秒钟的时间内将仪器探针插入所有六个应用程序中。尽管检测可能会适度增加应用程序的静态空间开销,但覆盖率监视技术平均只会将测试时间平均增加55%。即使覆盖报告可能会消耗多达25 MB的存储空间,覆盖树通常也可以在不到五秒钟的时间内存储。回归测试器通常会在不到五秒钟的时间内减少或确定测试套件的优先级。实验还证明,修改后的测试套件通常比初始测试更简化。

著录项

  • 作者

    Kapfhammer Gregory Martin;

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

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号