性能测试2 步骤
由于工程和项目不同,所选用的度量,评估方法也有不同之处。不过仍然有一些通用的步骤:
- 制定目标和系统分析
- 选择测试度量的方法
- 学习相关技术和工具
- 制定评估标准
- 设计测试用例
- 运行测试用例
- 分析测试结果
制定目标和系统分析
每一个性能测试计划中第一步都会制定目标和分析系统构成。只有明确目标和了解系统构成才会澄清测试范围,知道在测试中需要掌握什么样的技术。
系统组成
系统组成这里包含了几方面:系统类别,系统构成,系统功能等。
系统类别:分清系统类别是我们掌握什么样的技术的前提,掌握相应技术做性能测试才可能成功。例如,系统为bs结构,需要掌握http协议,java,html等技术。或者cs结构,可能要了解操作系统,winsock,com等。
系统构成:硬件设置,操作系统设置是性能测试的制约条件,一般性能测试都是利用测试工具模仿大量实际用户操作,系统在超负荷情形下运作。不同的系统构成性能测试就会得到不同结果。
系统功能:系统功能指的是系统提供的不同的子系统。系统功能室测试中要模拟的环节。
选择测试度量的方法
度量的相关方面:制定规范;制定相关流程,角色,职责;制定改进策略;制定结果对比标准。
制定评估标准
通常性能测试有四种模型技术:
线性投射:用大量的过去的,扩展的或者将来可能发生的数据组成散布图,利用这个图表不断和系统的当前状况对比。
分析模型:用排队论公式和算法预测响应时间,利用描述工作量的数据和系统本质关联起来。
PS:排队论(queuing theory), 或称随机服务系统理论, 是通过对服务对象到来及服务时间的统计研究,得出这些数量指标(等待时间、排队长度、忙期长短等)的统计规律,然后根据这些规律来改进服务系统的结构或重新组织被服务对象,使得服务系统既能满足服务对象的需要,又能使机构的费用最经济或某些指标最优。它是数学运筹学的分支学科。也是研究服务系统中排队现象随机规律的学科。
模仿:模仿实际用户的使用方法测试你的系统。
基准:定义测试和你最初的测试作为标准,利用它和所有后来进行的测试结果进行对比。
设计测试用例
设计测试用例是在了解软件业服务流程的基础上。设计测试用例的原则是受最小的影响提供最多的测试信息,设计测试用例的目标是一次尽可能的包含多个测试要素。这些测试用例必须是测试工具可以实现的,不同的测试场景测试不同功能。尽可能把性能测试用例设计复杂,才有可能发现软件的性能瓶颈。
运行测试用例
通过工具运行测试脚本。同一个环境下作的性能测试得到的测试结果是不准确的,所以在运行这些脚本的时候,需要用不同的测试环境,不同的机器配置上运行。
分析测试结果
运行脚本后,收集相关信息,进行数据统计分析,找到性能瓶颈。通过排除误差和其他因素,让测试结果体现接近真实情况。不同的体系结构分析测试结果的方法也不同,bs结构会分析带宽,流量对用户操作响应的影响,而cs结构则更关心系统整体配置对用户操作的影响。