这个内容很重要 ,你要知道你用赛斯模板的原理????为什么搭建普罗米修斯??
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节点
参数化构建的性能测试