乍眼一看,你可能觉得这是一个功能需求,怎么和性能有关系呢?但这个确实是性能问题,如果换乘的楼梯修建过窄,会导致大量乘客无法疏散出月台引起事故,而如果修建过宽又会带来不必要的浪费,合适的疏散能力就是性能的吞吐量指标。
可能有些朋友会说,我没去过上海,也没坐过地铁,如何知道这个性能是多少呢?确实,很多时候我们对用户所需要的系统闻所未闻,现在需要我们来做性能需求定义性能测试的目标不是无稽之谈么?那么按照这个道理来说,做性能需求分析的人都应该是业务专家,从某些角度来说需求分析本来就是需要业务或技术的专家才能担当,但并不是说没有简便入手的方法,对于这种情况,可以通过以下几个方法来获得系统的性能需求。
通过用户提供的数据进行分析
用户永远是需求的最后确认人,通过用户介绍和提供的相关数据是分析系统性能需求最直接也是最简便的方式。例如用户想要新建一个系统,来将公司的业务无纸化,那么他会提出相关的要求,例如容量、响应时间、并发量、服务器资源等。而作为实现方,当性能需求分析工程师将用户的需求进行整理后,需要参考以前的项目或相关信息去确定该需求是否合理可实施,进一步和用户协调制定合理有效的性能需求,以达到双赢的结果。
通过系统日志
当进行旧系统升级的时候,历史数据即系统日志的方式是获得真实用户需求最有效的参考数据。作为常用的Web服务器IIS或者Apache,当用户通过客户端发送请求到Web服务器的时候,IIS或者Apache都会在访问日志中记录下来。
……………………略
搭建测试环境
在编写脚本的同时,执行场景之前需要完成测试环境的搭建工作,这里包括硬件和软件环境的搭建。根据性能测试计划中的测试环境规划,完成对整个测试环境的搭建(请协调开发人员及系统管理员等相关角色帮忙完成环境搭建的工作)。
由于性能测试的特殊性,整个测试环境需要在严格的独立监控下管理,避免不受控的情况出现导致性能测试数据的偏差(类似于药品制造中的无菌室概念),而另一方面,在实际应用中很难得到真实的系统环境来完成性能测试。很多时候不可能在研发阶段就在公司搭建出和用户上线时完全相同的测试平台,那么得出来的数据就和真实数据有一定的差距,解决这个问题一般有以下两种解决方式(预估方式均有误差):
1.通过建模的方式实现低端硬件对高端硬件的模拟
通过配置测试来计算不同配置下的硬件性能和系统处理能力的关系,从而推导出满足系统性能的真实配置情况,这种模拟需要精确的建模,模型的采样点越多,那么得到的结果越精确,从而将在低端配置下的性能指标通过该模型转化为高端配置下的最终预估性能指标。
……………………略
6.1.5 分析性能数据
当场景运行结束后,通过Analysis组件可以得到对应的性能测试报告,但是光靠这个报告并不能反映任何问题,还需要人为地对这些数据进行分析,便于进行瓶颈定位和下一步优化的参考。
性能调优原理
性能瓶颈定位和调优是一个复杂的过程,就好像改善春运状况一样,并不是简单地多修几条铁路、多开几部临客就能解决的。对于整个软件系统的性能来说,最终都能反映到单体用户的响应时间上,那么响应时间又是由哪些内容组成的呢?先思考一个问题:我每天早上坐交通工具上班要花费多少时间?这个时间的组成部分有哪些?如何调优?
大家会发现对于自己来说如果采用的交通工具单一且稳定的话,那么时间是比较固定的。例如坐地铁从a到b点的时间误差是非常小的,而选择公交大家都体会过堵车的痛苦。整个上班时间一般由以下3部分组成:
- 家到交通工具
- 交通工具到达目标地
- 目标地进入公司
如果上班经常迟到,那么唯一能做的就是改变交通工具,例如本来坐公交的换出租或者换地铁,其实这就是一种性能调优,通过增加成本来解决性能问题。不过你是否也遇到过打车也堵车的尴尬呢?
我们现在先来做一个上班的性能分析及调优项目,目的就是想能够晚出门早到公司,那么首先来看看现在的情况,假设调优前7:30分出门,走15分钟到达公交车站,一般等待5分钟上公交(偶尔会挤不上公交),即在正常情况下会在7:50上公交,然后坐50分钟公交,在8:40分下公交,走8分钟到公司,等5分钟电梯,所以会在8:53分到达公司。这是通常情况下的状态,所以总计需要消耗大约83分钟在上班路上。
调优方法1:
首先需要对所有内容进行分析,确定哪些是可以优化的,哪些不能优化,如表6.11所示。
……………………略
下载全部6.1节独家试读内容:http://www.51testing.com/ddimg/uploadsoft/20100208/lr6.1.pdf
(未完,精彩待续)
本文选自《51Testing软件测试作品系列》之七——《性能测试进阶指南——LoadRunner9.1实战》。
本站经电子工业出版社和作者的授权,近期将进行部分章节的连载,敬请期待!
版权声明:51Testing软件测试网获电子工业出版社和作者授权独家连载本章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
相关阅读: