论文部分内容阅读
最近的十年,计算机网络得到飞速的发展,随之网络服务(WEB SERVICE)也有了长足的进步。很多服务都是由存储在数据库中的数据所驱动的网站,这些构成了各种各样的WEB数据库应用。其中包括提供访问大型数据知识库的服务、还有网上商店和支持B2B产品等的电子商务应用。自万维网(WORLD WIDE WEB)创立以来,电子交易的处理也得以高速发展,正是因为基于WEB的数据库应用可以将分散在各地的信息资源和服务整合起来,如今得商业、科学和社会活动越来越依赖于这些WEB数据库的应用。WEB数据库系统为从根本上改变了网站的组织、管理和交易方式。 值得注意得是这些WEB数据库应用正常运行的可靠性,功能上的正确性,以及性能上的可接受性。尽管它们都非常重要,但是大多数得WEB数据库应用,都只是关注于如何使它们功能越来越健全、越强大,很少有人将注意力集中在如何保证这些WEB数据库应用的质量。 AGENDA(A test GEnerator for Relational Database Applications)是一个测试关系数据库应用的工具,得到了美国国家科学基金的有力支持,经过近三年的研究和开发,基本上完成了基于B/S结构的对关系数据库测试的原型系统,已经能有效的测试关系数据库的并发性和一致性。本文中我们将从AGENDA系统出发,着重介绍AGENDA延伸到测试网络应用方面的作用。本文提出了基于AGENDA系统的WEB数据库应用测试的基本模型,在整个模型中,我们使用SOOT工具来获取每个URL向外的链接和它的从请求源输入的信息。URL链接根据内容被分为3中不同的类型。WEB应用结构图就依照这些URL链接的类型进行简化。在简化的WEB应用结构图的基础上,采用基于著名的循环复杂度(Cyclomatic Complexity)准则,计算出一些独立的有效的测试路径。AGENDA工具为每个URL产生输入,并将所有的测试路径和路径中的每个URL的输入存储在统一的XML文件中。本文实现了基于XML文件的自动测试工具,利用这个工具及XML文件,自动在B/S结构的AGENDA系统中执行测试任务。AGENDA系统在执行的同时,检测新的数据库状态和系统输出的有效性。在实验中,本文采用TPCWEB数据库应用测试一W测试标准作为主要的测试对象,对系统的已实现部分进行了测试,并对实验结果进行了初步的基于经验的分析。