论文部分内容阅读
随着计算机网络技术的迅速发展和Internet的推广成熟,Web服务已经成为一个分布的、超媒体的软件平台,许多新的应用应运而生,并且已经渗入到社会的各个应用领域。为了保证和提高Web的服务质量,通常需要对Web应用软件的质量和性能进行准确的评测。但是由于web应用软件的异构、分布、并发和平台无关性等特性,使得对Web应用软件的测试要比传统程序的测试更加困难,传统的测试技术无法胜任,因此需要一套独特的测试体系来支持Web应用软件的测试。目前,国内外研究机构已经对Web应用软件的性能测试进行了大量研究,提出了一些性能测试模型,并开发了许多测试工具。但是一些理论上较为成熟测试模型由于其实现的复杂性还没有完全被应用于性能测试工具的开发中。现存的测试工具存在很多不足,它们只能较好的满足某些类型应用的需求。随着网络技术的迅速发展,Web应用的进化周期变得越来越短,应用系统间的通讯和协作也变得日益显著。这就要求测试工具还需具有较好的扩展性和可移植性。鉴于这些问题,本文提出了一种基于多角色代理的性能测试框架(Multi-Agent based Performance Testing Framework, MAPT)。该框架结合当前较为成熟的E-SURGE模型,并将多Agent技术引入其中,实现了测试过程的智能化和自治性,大大提高了系统的灵活性和扩展性。所有的测试任务都是由具有不同能力的Agent完成,所有的Agent使用一种扩展的BDI模型,可以动态的加载能力组件到自己的代码中。该框架采用了分层的体系结构,并根据在整个测试过程中职责和权利的不同,将Agent分为三种不同的角色。不同层次的Agent集能够动态协作来处理指定的任务。为了验证框架的有效性,还设计了一个简单的原型系统。另外,本课题结合当前流行的系统架构技术,设计和开发了一个实际的Web性能测试工具。介绍了系统的总体功能结构,给出了各组成子系统的功能和具体实现方法。由于系统庞大和条件的限制,只实现了部分关键技术的开发。本文旨在Web性能测试方面进行理论上的基础学术性研究,同时也在具体的实用性方面做出进一步的探索。