本章节为51Testing软件测试网独家连载。
第6章 性能测试实战
通过前面的章节,我们对如何使用LoadRunner工具进行性能测试的原理和方法有了深入的了解,但性能测试不是LoadRunner,作为一个优秀的性能测试工具,掌握了它并不代表你已经会做性能测试。水能载舟亦能覆舟,如果只将性能测试定位在LoadRunner这个工具所提供的方案上,是无法进行有效的性能测试的。
性能测试是一个综合性的工作,在前面的工具介绍中,我们也不断提到性能测试的基础是需求,脚本的开发需要被测系统开发人员的配合,而性能瓶颈定位需要各个部门的通力协作。如何在工作中进行性能测试?如何获得性能需求?性能测试需要编写哪些文档?性能测试结果如何进行分析?如何成立性能测试部门?如何对性能测试进行自动化?对于以上问题你将会在本章的学习中一一得到解答。
出于实践方便的考虑,我们选择了Discuz!.NET论坛——一款知名的免费开源论坛系统。我们将对其进行一次完整的性能测试,来了解实施性能测试的流程和思路。我们将对Discuz!2.1和2.5进行性能基准对比测试,对Discuz!2.5进行负载测试。
6.1 性能测试流程
无规矩不成方圆,在执行性能测试之前,我们先来了解一下常见的性能测试流程,如图6.1所示。
6.1.1 计划测试
在任何类型的测试中,编写测试计划都是必要的步骤。有条不紊、计划周密的计划,可以确保在执行中能够有章可循。在计划测试阶段需要输出性能测试计划,而计划阶段需要经历以下几个环节,如图6.2所示。
图6.1 性能测试流程
分析系统阶段
要进行性能测试,了解被测对象是需要做的第一步。首先需要确认系统的架构和所使用的协议,对工具的可行性进行分析,然后对整个业务进行熟悉,确认相关的数据和业务操作可以被工具录制回放。
图6.2 性能测试计划阶段流程
- 通过分析系统阶段需要知道该系统能不能进行性能测试。
确定协议
…………………………略
- 通过定义测试目标需要知道的是用户想要什么。
那么如何获得性能需求呢?在此之前请先思考一个问题:上海地铁人民广场站1号线站台和换乘大厅的楼梯应该修建多宽?