全国服务热线:400-6136-679

位置:南京博为峰软件测试培训 > 学校动态 > 性能测试中的8个常见问题总结

性能测试中的8个常见问题总结

来源:南京博为峰软件测试培训时间:2022/12/31 15:27:26

  前言:性能压测中我们需要明白以下几点:

  1、好的开始是成功的一半,前期的准备非常重要

  2、过程中,关注每个细节,多个维度监控

  3、在调优中多积累经验

  4、对结果负责,测试报告要清晰易懂,追求数据的准确性

  一、如何分析性能数据(测试结果)

  答:主要从吞吐量,错误率,资源监控数据,比如一个接口的处理能力为100个/s,高于需求的期望值。错误率为0.001%,期望值为0.01%,较高cpu占用率不超70%。以上指标都符合期待值,那么通过提取这些关键数据就可以记录下来,作为测试的准出标准

  二、如何定位到性能阈值 eg:每秒处理事务数达到较理想的值,有没有什么技巧?

  答:对于一个新的压测单元,建议先设置一个线程数较小的初始值,逐渐增加线程数来观察事务的处理能力的变化。直到达到性能拐点(处理能力下降,响应时间明显增加)

  三、线程数是压的越多越好吗?压到多少线程合理?

  答:线程数受压力产生机的CPU和内存影响较大,并且Jmeter是基于响应原理工作(一个线程在发出请求并得到应答后才会继续发出下一个请求。)举个例子,jmeter(单台)不能在服务器只能处理100个请求每秒的情况下,提供200QPS的压力,一般情况下建议不超过500,默认从100线程开始施压,根据实际处理能力来调整线程数大小

  四、压测持续时间长短有什么区别?压测持续时间长,增加效果更接近期望值?设置压测时间较短时的目的是什么,为了测高并发?

  答:这个问题好比一个问卷调差,你调查的范围越大,取样更广泛得出的结论才更接近平均值(统计年收入,结果只统计了张三跟马云)。一般情况下衡量单个接口的指标,时间不需要太长,因为涉及大量的数据读写操作,但至少不低于5分钟。如果能增加长时间运行稳定的情况下,取样时间可以相对减小

  五、平均响应时间为什么越随着时间的增长,越来越长?除了队列阻塞,还有其他原因吗?

  答:大多数情况下是服务端的处理能力下降导致,在较大压力下,CPU和内存资源长时间被占用无法释放

  六、性能测试通常需要反复测试几轮才能达到预期的结果,有没有硬性标准?

  答:完成变更(优化)后计划所列出的各项测试内容;测试结果稳定,数值无较大浮动(一般适用于较后一轮,已无优化空间)

  七、测试环境是否存在网络瓶颈如何确认?

  答:一般情况下需要压测机和服务器在同一局域网内,走内网带宽,如果走外网很容易达到网络瓶颈。

  a. 找运维人员或机器所属负责人进行确认。

  b. 直接复制文件传输到另一台服务器 查看网速是否达到内网带宽上限

  (scp -r -P 端口号 root@123.123.123.123:/root/

  如内网带宽为100M时,可传输的较大网速为 12M/s 左右。

  如传输速率只是2M/s以下 可能不在同一网段,一般也满足不了压测传输对网速的要求)

  八、我们怎么选择性能压测工具

  【Loadrunner】

  商用,支持各种协议,例如http,tcp,ftp等

  支持多种并发模型,C脚本本身性能较高

  臃肿,麻烦

  【Jmeter】

  开源、使用方便

  基于Java,可扩展,支持模型较单一。本身性能受限于同步等待以及java本身

  比较灵活,可以自己编写符合自己要求的脚本,二次开发更适合我们服务端测试

  【其他】

  Apache bench:工具小巧简单,上手学习较快

  Wrk :性能超级强,某些bench测试使用(https://github.com/wg/wrk)

  Grinder python

  还有很多。。。

  具体使用结合公司项目以及自己的优势来选择,我个人喜欢用jmeter

领取试听课
每天限量名额,先到先得

尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/7724/news/588534/违者必究! 以上就是南京博为峰软件测试培训 小编为您整理 性能测试中的8个常见问题总结的全部内容。

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-6136-679