• jmeter快速入门


    jmeter快速入门

    一.Jmeter能做哪些测试:

    免费的性能测试工具,较loadrunner简单好用。

    1.性能测试及压力测试;

    2.数据库测试;

    3.java程序的测试;

    4.http及ftp的测试;

    5.webservices的测试;

    6.接口测试;

    等等

    二.jmeter的安装及使用:

    1. jmeter是一款java的应用,只需要去官网下载就可以。下载地址:https://jmeter.apache.org/download_jmeter.cgi(建议下载jmeter4版本,因为chrome的安全证书协议支持证书)
    2. jdk环境: 进入计算机-系统属性-高级系统设置,

             --新建系统变量JAVA_HOME;

             变量名:JAVA_HOME;

             变量值:D:Program Files (x86)Javajdk1.8.0(计算机本地jdk的安装目录)

             --新建系统变量CLASSPATH;

             变量名:CLASSPATH

             变量值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;(前面的点一定不能忘记)

             --修改系统变量path的值(建议将此环境变量放在最前面)

             变量名:path

             在path的变量值前添加下面内容: %JAVA_HOME%in;

       %JAVA_HOME%jreBin;%JAVA_HOME%Bin;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;C:Program Files (x86)IntelOpenCL SDK2.0inx86;C:Program Files (x86)IntelOpenCL SDK2.0inx64

    • jmeter的目录结构
    1. bin目录:jmeter的主目录,存放jmeter的主jar包,启动脚本,启动配置,运行日志等;
    2. jmeter.sh/jmeter.bat,通过编辑可修改jmeter启动时的参数等;
    3. jmeter.properties:jmeter的主配置文件,jmeter的超过80%需要配置的内容都在这个文件;
    4. docs:存放官方的api文档,主要用于二次开发;
    5. extras目录:存放ant和jmeter集成所需要的文件;
    6. lib目录:jmeter启动时的classpath,所有需要import的类,只存放jar包;
    7. lib/ext目录:存放jmeter的第三方组件和插件,主要集成jmeter和使用jmeterGUI框架的,可以在图形化界面看到的部分;
    8. printable_docs:开发者存放的jmeter的官方文档。
    • jmeter脚本开发
    1. 第三方软件录制脚本

      badboy:只支持bs架构,下载地址:http://www.badboy.com.au/download;

      --file--export to jmeter的菜单导出jmeter的脚本;

      --使用jmeter打开脚本即可。

      --缺点:只支持BS架构,由于内置浏览器的内核问题(支持IE),会产生兼容性的问题。

      blazeMeter:需要使用163邮箱注册,基于chrome浏览器的录制插件。

      --缺点:需要访问国外的网站,存在风险。目前没啥问题

      2.jmeter的http代理服务来录制:

      通信协议是标准的,是由测试工具自己完成的。

      新增测试计划--新增线程组--添加http cookies管理器--添加http代理服务,设置端口xxxx的时候先要检测本电脑端口是否被占用(netstat),设置internet 选项的局域网设置端口号为xxxx--录制的过程中最好逐步将名称修改为中文--录制完成停止服务即可。

      --优点:灵活,支持cs及bs也可以app。

      3.抓包手写(fiddler)

      通过人用工具去抓包,使用与任何接口,性能的脚本生成。

      --掌握通信协议,主要一http为主; (chrome自带的开发工具,切换至network,需要勾选preserver log--不要清理页面的重定向)

      --bean shell就是java的脚本语言,不支持泛型; 

    三.Jmeter的常用组件:

    • 测试计划:整个测试计划;
    • 线程组:所有的任务都是基于线程组,开通过少个线程就代表了有多少个并发用户;
    1. 线程数:比如线程数10,时间是5秒,循环2次,也就是说,一秒会执行两个线程*2次循环,一秒并发4次请求,这个大白话说的够白了。。。。
    2. Ramp-Up Perriod:代表在多长时间内完成线程数的全部启动,比如说开了2个线程,Ramp-Up Perriod设置为3,代表了每个线程间的时间间隔为1.5s。
    3. 循环次数:每秒要执行的线程数
    4. Delay Thread creation until needed: 默认情况下,测试开始的时候,所有线程就被创建完了。如果勾选了此选项,那么线程只会在合适的需要用到的时候创建。

      5.调度器设置:用于设置该线程组下脚本执行的开始时间、结束时间、持续时间及启动延迟时间。当需要半夜执行性能测试时会用到这个功能。

    设置调度器配置,需要将前面的循环次数设置为永远(自己感觉,因为这样才不会因循环次数不够而终止压测)

      6.取样器错误 当线程执行取样器失败的时候,要执行的策略的选项:

    • 继续:忽略错误,是继续执行
    • Start Next Thread Loop: 忽略错误,线程当前循环终止,执行下一个循环。
    • 停止线程:当前线程停止执行,不影响其他线程正常执行。
    • 停止测试:整个测试会在所有当前正在执行的线程执行完毕后停止
    • 立即停止测试:整个测试会立即停止执行,当前正在执行的取样器如果可能会被中断。

    那么这几个配置控制了,当遇到错误的时候,测试的执行策略,是否会继续执行。

      

    • Sampler:所有的测试任务都是Sampler,其下的测试类型包括很多:http请求,jdbc请求,ftp请求,udp请求,如下图:

    • 监控组件:
    1. 查看结果树:对于每个请求,都可以查看http请求和http相应;
    2. 聚合报告:总体的吞吐量,响应时间,线程总数等;
    3. 图形结果:可以图形显示吞吐量,响应时间等;

      

    Samples:样本数,线程总数,比如,10个线程数设置为10,迭代10次,那么每运行一次测试,该值就增加10*10=100

    Average:平均响应时间,单位ms

    Median:中位数,50%响应时间小于此值,单位ms

    90%line:90%响应时间小于此值,单位ms

    Min:最短响应时间,单位ms

    Max:最大响应时间,单位ms

    Error:未命中数/比率

    Throughput:吞吐量——每秒完成请求事务数【可以理解成tps或者qps,一般100用户压15min左右,其值会在800左右——很多地方并没有严格去计较,就像tps和qps概念是不一样的,可是很多时候可以混为一谈】,线程数/时间=ThoughtOut

    Kb/sec:每秒接收数据量

  • 相关阅读:
    P1019 单词接龙
    P1219 八皇后
    Find a way
    P1056 排座椅
    P1067 多项式输出
    关于前缀和,A
    洛谷P1223
    洛谷P1803
    洛谷P1208
    常用方法 Excel转换为DataSet
  • 原文地址:https://www.cnblogs.com/hupilan521/p/9092688.html
Copyright © 2020-2023  润新知