2018-08-30压测

课堂笔记

性能瓶颈
做压测需要准备什么
1.压测脚本
压测思路是什么
由小到大,逐渐添加压力

2018-08-30压测_第1张图片
压测要做什么

jmeter可视化执行
优点:简单,可以看动态过程
缺点:报告需要手工导出
命令行执行
优点:直接生成最终报告
缺点:有命令,复杂

jmeter -n -t d:\softwaredate\jmeterdata\test.jmx -l result.jtl -e -o d:\softwaredate\jmeterdata\report
PS:注意,result.jtl每次要删除,位置在jemter.bat同目录下

2018-08-30压测_第2张图片
image.png
2018-08-30压测_第3张图片
image.png
2018-08-30压测_第4张图片
CVS

课堂总结:

A.压力测试

1.压测的思路:

  • 从小往大压测
  • 每次截图备份结果
  • 最后对比分析
  • 找出压测承受的点


    2018-08-30压测_第5张图片
    image.png
2018-08-30压测_第6张图片
性能测试画图.png
  • 性能测试:资源充足,请求越多,吞吐量越大
  • 负载测试:负载达到最佳,请求数增加,响应时间降低,总的量趋稳
  • 压力测试:超出系统负载,开始部分报错,响应时间大幅降低
  • 之后 :系统崩溃,无法处理业务

2.做压测之前的准备__环境准备

  • 测试工程师需要准备压测脚本

  • 找运维看监控数据


    2018-08-30压测_第7张图片
    找运维看监控数据
  • 找研发根据压测数据和监控数据分析性能瓶颈

3.设置jmeter的线程组的线程数、循环次数和调度器


2018-08-30压测_第8张图片
设置线程组

4.运行后,查看jp@gc - Hits per Second每秒点击数和jp@gc - Transactions per Second每秒响应的事务数,每次结果需截图


2018-08-30压测_第9张图片
25-10-1.png

2018-08-30压测_第10张图片
25-10-2.png

5.导出压测数据-聚合报告、tps每秒响应数
2018-08-30压测_第11张图片
导出聚合报告

6.根据压测数据和监控数据找研发一起分析性能瓶颈

如何分析当前测试处于哪个阶段?

1.看请求响应时间、最大值、最小值、平均值比较接近,吞吐量TPS未达到最大值,说明处于性能阶段,说明当前线程数可以再添加
2.响应时间、最大值、最小值、平均值波动差距逐渐增大,吞吐量TPS开始稳定,说明已处于负载阶段,说明可以尝试降低线程、请求数
3.响应时间、最大值、最小值、平均值波动差距较大,同时请求结果开始出现失败时,吞吐量TPS下降,说明已经处于压力测试阶段,需要调整线程数和请求数

如何判断当前TPS吞吐量达到最优?

通过线程数加大减小多次对比,增大请求持续时间

B.jmeter--CSV 数据文件设置

1.从CSV用jmeter导入数据到数据库
2.流程:

  • 新建CSV格式的数据表,使用Notepad++
    Alt+鼠标左键是增加一列相同的数据


    2018-08-30压测_第12张图片
    使用列模块编辑1

    2018-08-30压测_第13张图片
    使用列模块编辑2

    使用列模块编辑3
  • 用,分隔每列数据


    2018-08-30压测_第14张图片
    image.png
  • 保存CSV文件到指定位置
  • 用fiddle抓包,添加http请求数据
  • 在jmeter里设置CSV 数据文件设置(注意需禁用用户自定义变量)


    2018-08-30压测_第15张图片
    设置CSV 数据文件设置
  • 添加循环控制器,设置添加数据的次数


    2018-08-30压测_第16张图片
    循环控制器
  • 添加http请求的body的传参


    2018-08-30压测_第17张图片
    传参
  • 运行,察看结果树,察看请求和响应数据


    2018-08-30压测_第18张图片
    察看结果树

你可能感兴趣的:(2018-08-30压测)