zoukankan      html  css  js  c++  java
  • 性能测试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节点 

     参数化构建的性能测试

  • 相关阅读:
    单例实现c++
    c++智能指针实现方式1
    c++中处理输入输出的方法
    makefile函数
    5. Longest Palindromic Substring
    go 语言中常用的包
    ubuntu14.04 boost动态库找不到 libboost_system.so.1.58.0
    boost-asio-cpp-network-programming阅读笔记
    链接-装载-库,读书笔记
    leecode第二百一十七题(存在重复元素)
  • 原文地址:https://www.cnblogs.com/weilemeizi/p/14773191.html
Copyright © 2011-2022 走看看