jmeter基础功能及认识

1、基础知识:

JMeter是免费开源的,纯java开发的性能测试工具,可以测试静态和动态的资源,例如:静态文件、java服务小程序、CGI脚本、java对象、数据库、FTP服务器、邮件服务器和PerlScript等

JMeter能够对应程序做功能测试和回归测试,通过创建带有断言的脚本来验证程序是否返回了期望结果,JMeter运行使用正则表达式来创建断言。

JMeter只需要java环境,本身不需要安装,运行JMeter之前需要先在机器上安装对应的JDK,安装完JDK之后需要配置环境变量

 

2、JMeter中的组件:

线程组:是用来设置性能测试的运行场景。(所有的常见请求相关组件必须是在线程组下面才能创建,不能直接在测试计划下面创建请求)

 

取样器错误后要执⾏的动作:这部分可以理解为当客户端向服务端发送请求后,以及发送请求的过程中出错后的异常处理⽅式。

    继续:如果有⼀个请求错误,其他的请求会继续,不会因为有⼀个请求错误的导致其他请求终⽌。

       启动下⼀个进程循环:如果请求出现问题,同⼀脚本中的其他请求就都不再执⾏,直接执⾏下⼀个进程的信息。如登录后下⼀个请求是查看个⼈主⻚,但是因为登录出错,下⼀个接

⼝查看个⼈主⻚就不会被执⾏。

    停⽌线程:停⽌线程指的是如果请求失败,就停⽌当前线程执⾏,不再继续执⾏。如果线程数很多的,那么导致的结果是停⽌的线程就会很多,处于真正运⾏的线程会很少,最后导致

服务器的负载不够,⼀般不建议构选改选项。

    停⽌测试:如果请求失败,那么停⽌所有线程执⾏,也就是说停⽌整个测试。

    ⽴即停⽌测试:如果请求失败,⽴即停⽌整个测试场景的执⾏。

线程属性:

 

    线程数:⼀个线程可以理解为对应模拟⼀个⽤户,所以线程数越多,那么也就认为可以模拟的⽤户数越多。

    Ramp-Up时间(秒):该属性指的是所有线程从启动到开始运⾏的时间间隔,单位是秒,也就是说所有线程在多⻓时间内开始执⾏,如线程数设置100,设置的时间为50秒,那么计算的

公式为:

        每秒执⾏线程数=线程数/Ramp-Up

        #如设置的线程数为100,Ramp-up的时间为50,那么也就是说开启执⾏后,每秒会启动2个线程,如果Ramp-Up设置为0,那么开始执⾏后,100个线程会⽴刻启动

    循环次数:循环次数可以理解为,请求的重复次数。如果选择“永远”,那么请求将⼀直进⾏,不建议这样操作。

    延迟创建线程直到需要:如50个线程数,Ramp-Up时间是10秒,执⾏后线程是全部就绪的,那么就是每隔1秒启动5个线程。

    调度器:思维调度器可以理解为设置何时开始运⾏。

    持续时间:测试计划持续多⻓时间 启动延迟 从当前时间延迟多⻓时间开始运⾏测试,也就是说点击执⾏后,仅仅是做初始化的场景,不会执⾏测试,等待延迟 到达后开始运⾏测试,执

⾏的时间为持续时间设置的时间。

 

取样器:就是发送请求的配置元件的选项,里面包含了常见的请求类型(HTTP/FTP文件/JDBC (java连接数据库)/SMTP邮件),BeanShell 取样器添加脚本代码

HTTP请求:就是常见的HTTP协议的请求元件

 

监听器:用来查看请求结果的一些元件(查看结果树)

    聚合报告:是以表格的形式来显示取样器的结果信息,如果不同的取样器拥有相同的名字,那么在聚合报告会显示在 ⼀⾏⾥⾯,那么⼀般来说,聚合报告都是根据取样器来显示每个取样

器的执⾏结果信息。聚合报告的信息具体如下:

          

 

 

     响应时间图:

 

断言:就是对脚本进行断言的

逻辑控制器:就是用来控制脚本运行逻辑的

前置处理器:就是在请求发送之前对请求进行处理

后置处理器:就是在请求之后对响应进行处理

定时器:设置思考时间的一些元件

配置元件:就是对请求做一些配置处理的元件,如:cookie管理、请求默认值等等

    HTTP请求默认值:就是将线程组下面请求的重复参数放到请求默认值中,后续所有请求就不需要重复实现该参数设置, 会默认从该元件中获取所有参数值(将大家一样的部分分离出来,

相当于page层)。

    HTTP Cookie管理器:jmeter不会自动关联cookie,需要添加cookie管理器来关联cookie。

非测试元件:

    HTTP代理服务器:用来录制脚本,要打开浏览器的服务代理器,但是不太可靠。(脚本录制BlazeMeter谷歌插件)

posted @ 2021-09-14 18:34  就不将就就  阅读(352)  评论(0编辑  收藏  举报