论文部分内容阅读
Internet发展非常迅速,性能是重中之重。性能测试是性能优化的关键环节,直接指导优化过程,测试结果的准确与否直接影响优化作业的效果。 新的事务处理密集型网络服务,改变了人们的使用服务的方式。给性能测试带来了新的要求。 目前绝大多数性能测试工具和测试模型由于没有考虑到或者考虑得很少网络服务之间的逻辑关系和用户行为模式的变化,其产生的测试负载不能体现真实的负载特征。测试结果难免不能反映真实的服务性能。 目前绝大多数性能自动测试工具基于黑盒测试技术,整个测试过程在对服务端服务软件的结构和逻辑关系不了解的情况下进行,这对测试后的性能分析和瓶颈定位带来的很大困难。 针对上述情况,本文中提出一种基于灰盒测试技术的测试方法,要求对被测系统有一定了解。主要思想如下:建立服务端的事务模型,挖掘服务器日志得到各个事务的使用比例,按比例建立测试用例模型,生成测试用例。建立用户的行为模型,模拟用户使用服务时的真实行为,以用户的行为驱动测试过程,生成测试负载。优点是:测试基于灰盒测试技术,便于分析和定位瓶颈;从服务端构建测试用例,解决了测试用例构建困难的问题;以用户行为模式作为测试驱动,生成的测试负载更加符合实际负载特征。 依据上述思想,本文给出了服务端事务模型的建立方法,给出了实际的建立过程;研究了事务处理型网络服务使用者的行为特征,结合服务端事务模型,给出了用户访问事务处理型网站的行为模型,并给出了模型实现方法和过程。 依据用户行为模型,本文给出了以用户行为模型作为负载发生器模型的自动性能测试工具的设计和实现。给出了工具的整体架构,对工具的关键部分,负载发生和控制调度部件进行了详细描述,给出了实现伪码。测试过程真正模拟了用户处理事务的全过程,这是目前测试工具所不具有的优点。 本文的最后以一个J2ee的电子商务网站为被测系统,验证了模型和工具的有效性。