vlambda博客
学习文章列表

不是吧?你居然还不懂性能测试!

出品 | 51Testing软件测试网


1

压测常识


1、性能测试的工作流程


不是吧?你居然还不懂性能测试!

2、性能测试的类别

·负载测试:

通过逐步加压的方法,达到既定的性能阈值的目标,阈值的设定应是小于某个值,如cpu使用率小于等于80%。

·压力测试:

通过逐步加压的方法,使得系统的某些资源达到饱和,甚至失效的状态,简单粗暴的解释就是什么条件能把系统压崩溃。

·并发测试:

在同一时间內,多个虚拟用户在同时访问同一个模块,同一个功能,通常的测试方法就是设置集合点。

·容量测试:

通常是指数据库层面的,目标是获取数据库的最佳容量能力。又称为容量预估。具体测试方法为在一定的并发用户,不同的技术数据量下,观察数据库的处理能力,即获取数据库的各项性能指标。

·可靠性测试: 

又称为稳定性测试或疲劳测试。是指系统在高压情况下,长时间的运行是否稳定。

如cpu使用率在80%以上,7*24小时的运行,系统是否稳定。

·异常测试:

又称为失败测试。是指系统架构方面的测试,如在负载均衡中,要测试宕机,节点挂掉等情况的系统反映。

3、性能指标的定义

·事物

从客户端发起的一个请求或多个请求(这些请求组成一个完成的操作),到客户端收到服务器返回的响应。

·请求响应时间

客户端发起的一个请求开始,到客户端接收从服务器返回的响应,整个过程所耗费的时间。

·事物响应时间

事务可能是一个或者多个请求组成的,事物响应时间主要针对于用户的角度而言,如转账。

·并发

没有严格意义上的并发。并发总有先后,无论差距是1毫秒还是1微秒,总有一个时间差。所以并发讲的是一个时间范围内,比如1S内。

举例:

1、多用户在系统上进行同一操作,比如双11,大家针对同一种商品进行秒杀。

2、多用户在系统上进行不同操作,比如双11,大家针对不同商品进行秒杀,或者大家有进行其他操作,比如商品浏览。

并发用户数:同一单位时间内,对系统发起请求的用户数量。

吞吐量:一次性能测试过程中网络上传输数据量的总和。


2

服务器性能测试范围


1、CPU

2、内存

3、磁盘

4、网络

5、版本

6、性能损耗的计算方式

怎么计算性能损耗?(相同的指标,相同的场景,相同的用户并发数进行多次同样的压测)


3

脚本编写


可以直接用Jmeter的接口案列进行压测—需设置好线程数、循环次数、持续时间和吞吐量控制器(准备好这4大件,就可以开启性能压测之旅了)。


不是吧?你居然还不懂性能测试!



4

压测实践


1、下载Jmeter zip包上传到服务器

2、解压unzip apache-jmeter-3.3.zip

3、给jmeter.sh 赋权 ,进到解压目录的?/jmeter/bin 下,

chmod 777 jmeter.sh,可用??sh jmeter.sh -v 来检测命令是否可用:


不是吧?你居然还不懂性能测试!

不是吧?你居然还不懂性能测试!


4、上传测试计划(将本地保存好的测试计划文件,上传至服务器,我上传到的目录是apache-jmeter-3.3/bin/data)

执行测试计划(在bin目录下执行):

sh jmeter.sh -n -t yali_test/yougou_app_coupon.jmx -l yali_test/test_2018_10_17_001.jtl



5

压测结果查看与分析


导出结果:sz test_2018_10_17_001.jtl


不是吧?你居然还不懂性能测试!

不是吧?你居然还不懂性能测试!


导出jtl文件在window下,用Jmeter文件可打开查看报告(新建一个聚合报告,然后点击浏览,即可查看)


不是吧?你居然还不懂性能测试!



6

异常问题定位分析


不是吧?你居然还不懂性能测试!


后面会讲一个完整的性能测试流程以及服务器性能监控及调优方法。

例如:压测前准备事项、造压测数据的策略与唯度、压测策略、压测结果分析、性能测试压力模型、Dubbo框架、如何发现系统性能问题、调优过程等等,敬请期待···


不是吧?你居然还不懂性能测试!
END
不是吧?你居然还不懂性能测试!


不是吧?你居然还不懂性能测试!

推荐阅读

点击阅读☞

点击阅读☞

点击阅读☞

点击阅读☞

点击阅读☞

“阅读原文”一起来充电吧!