性能测试5--Jmeter命令行与以及普罗米修斯的原理

这个内容很重要 ,你要知道你用赛斯模板的原理????为什么搭建普罗米修斯??

Jmeter只能看 tps rt 线程增长  还要监测压力机的情况无法看,压力机的资源使用情况,所以搭建 

搭建这个普罗米修斯有啥用??

常用的压测,返回的数据,jmeter写到内存里 ,那么我想让他把数据写到数据库,首先想到是MySQL,但是MySQL反应慢,因为我只需要看响应时间,不可能压几万次把请求保存,所以需要临时存储,太慢了,因为是关系型数据库 

mysql数据库太慢了,把数据存在时序数据库新的数据库

数据-临时存储的  时序型数据库快,带时间戳的  优点:1.速度快,2.带时间戳 3.临时存储不要就没了,你关了就没了

influxdb 时序数据库的一种    先把数据写到influxdb    存储了jmeter所有的内容 

grafana 负责画图,根据influxdb存的数据画图   

普罗米修斯模板号你可以根据id选  12826 就是监控数据库相关的,5496是负责监控jmeter的  

JMETER命令行????????????

jmeter -n    进入非页面命令

jmeter -n -t  ces.jmx   非页面运行你的测试脚本注意(脚本保存从测试计划开始保存)   会有一个显示结果默认30s更新一次 

-l:JTL文件去保存结果,路径+xxx.jtl

jmeter -n -t ces.jmx -l 11result.jtl       把结果存到jtl文件里 

jtl文件怎么用????? 结果看不到请求和返回,防止让他把请求结果写进去,耗费内存 

-e:在脚本运行结束后生成html报告

-r: 使用远程执行

-j:保存执行log

-g:测试结果文件路径。通过jtl或csv文件生成测试报告

  -o:测试报表文件夹。必须为不存在或空

-H:代理机主机名或者ip地址

-P:代理机端口

3.2  生成HTML测试报告的两种方式

利用已有.jtl文件生成报告?????????????????????

jmeter -g test.jtl -o /path

jmeter -g 11result.jtl -o F:apache-jmeter-5.4.1apache-jmeter-5.4.1inHttpReport           指定jtl 文件在路径下生成测试报告 

 

 

 修改这个文件也可以改jmeter的模板

 没有jtl一边压测一边出测试报告??????????

jmeter -n -t test.jmx -l test.jtl -e -o /path

# -g:后跟test.jtl文件所在的路径

# -o:后跟生成的HTML文件存放的路径

JENKIS的集成 ????????????????

 常态化压测??????????????????

本来接口撑住一千,上来一个小功能就不行了,几百就不行了,版本迭代小功能的迭代是没必要测试一轮完整的性能测试

把性能的东西能不能当成自动化测试,上线后对所有接口性能压二十分钟半个小时,脚本我早就写好了,放到jenkis上去   这种就需要性能和jenkis做集成 

预计结果:开发一点项目,自动运行脚本,生成性能测试报告 

原理:从git拉代码,通过jenkis 命令 向远程机器发送执行,执行完了把报告返回到 jenkis 

实践操作!!!!!!!!!!!!!!!!!!!!!!!

1.登录地址:http://8.141.52.231:8080/login?from=%2F 点击新建任务 

2.任务名字:shuaige_test  ,选择自由风格  ,点击确定按钮

3.构建下选择windows批处理命令,看你电脑了  输入命令:jmeter -n -t   -e -o ./report 

选择html  ./report 

4.选择dashboard-系统管理-节点管理 -新建节点 

名字 ,固定节点 

5.

jenkis的触发器????????

1.远程触发

2.其他工程触发在构建

3.定时构建

 周一到周五  9-16 之间每隔两小时执行下  

H,1,9-16 * * 1-5   周一到周五每隔一小时执行一次 

钩子函数,代码提交后不管有没有更新,再某个时间去触发 

 轮询是啥意思呢???????? 在你的时间先检查,没有变更是不跑的,有变更就跑   ,测试大部分不用轮询 

需要把本地机器当成jenkis节点 

 参数化构建的性能测试

原文地址:https://www.cnblogs.com/weilemeizi/p/14773191.html