通过工具,可以发现如下信息:
性能测试结束后,测试工具可以存储性能测试结果供测试后分析。
平均数:一系列数字的算术平均值。 中位数:是一组数据的中间值;比如1,2,2,2,3,9————算术平均数为3.17,中位数为2。
中位数更能体现“平均数”。
标准方差反映所有数据与这组数据平均值之间的平均偏离度;较高的标准方差意味着最终用户的体验不够稳定;性能测试的目标应该使标准方差的值较小。
统计学中的Nth百分比用于定义测试结果的采样比例;比如:40th百分比意味着选取在40%及小于40%的一组结果。
关注响应时间的分布,如:平均值、中位值、P90值、标准方差等。
应用程序或服务器每个事务的响应时间通常是性能测试的重点关注指标。
响应时间:指的是客户端向服务器发起请求到客户端接收到响应所花费的时间
思考时间:所有消耗在客户端的时间,代表最终用户和应用程序之间交互的正常延时与停顿
性能测试工具一般都工作在中间层,也就是说工作在表现层之下。
通常衡量响应时间不应该包括思考时间,关注的是从客户端请求到服务器完全返回响应所花费的时间(某些工具可以区分思考时间和响应时间)。
随着负载用户的增加,响应时间也会相应增加,但是增加幅度不一定同步。
添加事务中的“检查点”的响应时间,有助于提高响应时间的分析粒度,并且可以将相对较差的时间与特定事务的行为进行关联。
所有事务中的最差性能“检查点”排序图,有助于分析事务中突出的问题所在。
事务吞吐量:强调对于某个事务的处理有多快。 容量:强调在某个时间段内能够处理多少事务。
吞吐量的降低是Web服务器层或应用服务器层达到容量极限的标志。
远程监控:Windows注册表、基于Web的企业管理系统、简单网络管理协议、JMX技术、Rstatd(传统的基于RPC的监控工具); 客户端需要关注:CPU 使用率、内存使用率、页使用率、I/O(磁盘和网络)、磁盘可用空间。
最关注的两个指标:CPU 使用率、可用内存大小。
接收和发送字节的网络流量。
负载生成器自己在性能测试过程中超负荷,会导致性能测试无法表现真实的行为,同时产生的结果不可信。
负载生成器需要监控的典型指标:
在进行分析之前,调整测试数据的时间范围,去掉加载和退出的时间,以确保测试结果的准确性。
保证分析的测试数据是一段稳定状态。
良好的可扩展性和响应时间的模型就是随着虚拟用户和事务吞吐量的增加,平均响应时间平稳增长,但增长值处于可接受的范围内;反之,伴随着虚拟用户负载的增加,响应时间随之增加,而且增加趋势不平稳,或者变得不稳定,标准方差远高于平均值。
找到问题的原因,需要结合服务器和网络KPI一起分析原因。
当一般级别应用服务器的监控不能提供更多的信息,我们需要找出具体的哪些组件的调用产生的问题。
拐点:性能测试过程中在一定的吞吐量或一定数量的活动用户下,性能测试图中的一些或者说有事务的响应时间曲线有一个急剧的上升或下降趋势。
检查所有性能测试过程中所发生的错误时非常重要的,因为这些错误可能表示应用程序的部分模块已经达到了性能极限。
一个成功的性能测试项目最后的输出,将是一个基准性能数据,该基准性能数据可能在系统部署后的应用监控中用到。