接口压力测试工具有哪些(jmeter接口压力测试步骤)

Jmeter简介jmeter是啥?ApacheJMeter是Apache组织的开放源代码项目,是一个纯Java桌面应用,用于压力测试和性能测量。它最初被设计用于Web应用测试但后来扩展到其它测试领域。jmeter有啥用?ApacheJMeter

Jmeter简介

jmeter是啥?

Apache JMeter 是Apache组织的开放源代码项目,是一个纯Java桌面应用,用于压力测试和性能测量。它最初被设计用于Web应用测试但后来扩展到其它测试领域。

jmeter有啥用?

Apache JMeter可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,Java对象,数据库和查询,FTP服务器或是其它资源)的性能进行测试。JMeter可以用于分析不同压力条件下的总体性能情况。也可以使用JMeter提供的图形化界面,分析性能指标或者在高负载情况下测试你的服务器,脚本,对象。

jmeter和LR有s’m区别?

接口压力测试工具有哪些(jmeter接口压力测试步骤)

Jmeter安装配置

安装配置号JDK

链接:
https://pan.baidu.com/s/15v8zjGlERZvnwDgYHLd9Jg 提取码: 9×59

Jmeter下载地址(以win10为例)

链接:
https://pan.baidu.com/s/1gl7Y26Rjhj6N6NF214U96A 提取码: rh4y

3.下载后直接点击安装

4.Jmeter启动:解压,bin目录下运行ApacheJMeter.jar进行启动。

Jmeter文件目录介绍

bin:可执行文件目录

bin目录文件:

ljmeter.bat:windows的启动文件

l jmeter.log:日志文件

l jmeter.sh:linux的启动文件

l jmeter.properties:系统配置文件

l jmeter-server.bat:windows分布式测试要用到的服务器配置

l jmeter-serve:linux分布式测试要用到的服务器配置

docs:接口文档目录

extras:扩展插件目录

lib:所用到的插件目录,里面全是jar包,jmeter会自动在JMETER_HOME/lib 和 ext 目录下寻找需要的类

licenses:jmeter证书目录

printable_docs:用户使用手册

jmeter工具组成部分:

资源生成器:用于生成测试过程中服务器、负载机的资源代码。(LR中的VuGen)

用户运行器:通常是一个脚本运行引擎,根据脚本要求模拟指定的用户行为。(LR中的Controller)

报表生成器:根据测试中实时地的数据生成报表,提供可视化的数据显示方式。(LR中的Analysis)

负载发生器:用于产生负载,通常以多线程或是多进程的方式模拟用户行为。(LR中LoadGenerators)

Test Plan (测试计划):用来描述一个性能测试,包含与本次性能测试所有相关的功能。也就说本的性能测试的所有内容是于基于一个计划的。(相当于lr的一个测试场景)

Threads (Users)线程 用户

A. setup thread group

  一种特殊类型的ThreadGroup的,可用于执行预测试操作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试前进行定期线程组的执行。类似LR的init( )

2) teardown thread group.

  一种特殊类型的ThreadGroup的,可用于执行测试后动作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试结束后执行定期的线程组。类似于LR中的end( )

3)threadgroup(线程组).

这个就是我们通常添加运行的线程。可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。线程组中包含的线程数量在测试执行过程中是不会发生改变的。类似LR的action()

测试片段(Test Fragment)

测试片段元素是控制器上的一个种特殊的线程组,它在测试树上与线程组处于一个层级。它与线程组有所不同,因为它不被执行,除非它是一个模块控制器或者是被控制器所引用时才会被执行。

以下是线程组的8类可执行元件

1.配置元件(Config Element)

配置元件(config element)用于提供对静态数据配置的支持。如CSV Data Set config 可以将本地数据文件形成数据池(Data Pool)。

2.定时器(Timer)

定时器(Timer)用于操作之间设置等待时间,等待时间是性能测试中常用的控制客户端QPS的手端。类似于LoadRunner里面的“思考时间”。JMeter 定义了Bean Shell Timer、Constant Throughput Timer、固定定时器等不同类型的Timer。

3.前置处理器(Per Processors)

用于在实际的请求发出之前对即将发出的请求进行特殊处理。例如,HTTP URL重写修复符则可以实现URL重写,当URL中有sessionID 一类的session信息时,可以通过该处理器填充发出请求的实际的sessionID 。

4.后置处理器(PostProcessors)

用于对Sampler 发出请求后得到的服务器响应进行处理。一般用来提取响应中的特定数据(类似LoadRunner测试工具中的关联概念)。

断言(Assertions)

断言用于检查测试中得到的相应数据等是否符合预期,断言一般用来设置检查点,用以保证性能测试过程中的数据交互是否与预期一致。

监听器(Listener)

是用来对测试结果数据进行处理和可视化展示的一系列元件。图行结果、查看结果树、聚合报告。都是我们经常用到的元件。注意:这个监听器可不是用来监听系统资源的元件。

JMeter有两种类型的控制器:取样器(sample)和逻辑控制器(Logic Controller),用这些原件来驱动处理一个测试。

取样器(sample)

取样器(Sample)是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元,JMeter原生支持多种不同的sampler ,如 HTTPRequest Sampler 、 FTP Request Sample 、TCP Request Sample 、JDBCRequest Sampler 等,每一种不同类型的 sampler 可以根据设置的参数向服务器发出不同类型的请求。

逻辑控制器

逻辑控制器,包括两类无件,一类是用于控制test plan 中sampler 节点发送请求的逻辑顺序的控制器,常用的有 如果(If)控制器 、switch Controller 、Runtime Controller、循环控制器等。另一类是用来组织可控制 sampler 来节点的,如 事务控制器、吞吐量控制器。

Jmeter脚本录制

1.Jmeter脚本录制

Http请求+查看结果树

代理服务器操作步骤

创建一个线程组(右键点击“测试计划”->“添加”->“线程组”)

创建一个http代理服务器(右键点击“工作台”->“添加”->“非测试元件”->“http代理服务器”)

Tip HTTP服务器代理设置——分组详解

l 不对样本分组:所有请求全部罗列

l 在组间添加分隔:加入一个虚拟的以分割线命名的动作。

l 每个组放入一个新的控制器:执行时按控制器给输出结果

l 只存储每个组的第一个样本:保存对于一次url请求。

设置完后要启动代理服务器,录制完成后记得关闭,

IE->“internet属性”->“连接”->“局域网设置”

在浏览器里对指定的页面进行访问。录制完成后,把浏览器的代理服务器勾去掉。

2.Badboy 脚本录制

Badboy是一个强大的工具,旨在帮助测试和开发复杂的动态应用。Badboy包括一个简单而全面的捕获/回放界面,强大的负载测试的支持,详细的报告图表等等,从而使Web测试和开发变得更加容易.

关于录制时的脚本错误提示访问者所使用的浏览器不能完全支持页面里的脚本,形成“脚本错误”。遇到“脚本错误”时一般会弹出一个非常难看的脚本运行错误警告窗口,而事实上,脚本错误并不会影响网站浏览,因此这一警告可谓多此一举。要关闭警告则可以在浏览器的工具菜单选择Internet选项,然后单击高级属性页。进入到浏览标签,并选中“禁止脚本调试”复选框,以后你就不会再收到这些警告了。

脚本录制完成后,导出为 Export to Jmeter (见脚本haosou.bx)

badboy检查点与参数化

检查点设置:选择要检查的文字,然后在Tools>step1里添加断言,再回放

参数化:在请求搜索关键字的部分进行参数化,找到请求的字段,然后对其值进行设定。参数化替换${参数名称} 最后在step 1属性里进行设置回放次数和参数化的变量名称。最后检查点也要进行参数化,以及整个step 属性的设置

Jmeter元件作用域和执行顺序

1.元件作用域

8类可被执行的元件(测试计划与线程组不属于可执行元件),这些元件中,取样器(sampler)是典型的不与其它元件发生交互作用的元件,逻辑控制器只对其子节点的取样器有效,而其它元件(配置元件 、定时器、断言、监听器、)需要与取样器(sampler)等元件交互。

在jmeter中,元件的作用域是靠测试计划的的树型结构中元件的父子关系来确定的,作用域的原则是:

• 取样器(sampler)元件不和其它元件相互作用,因此不存在作用域的问题。

• 逻辑控制器(Logic Controller)元件只对其子节点中的取样器和逻辑控制器作用。

• 除取样器和逻辑控制器元件外,其他6类元件,如果是某个取样器的子节点,则该元件对其父子节点起作用。如果其父节点不是取样器 ,则其作用域是该元件父节点下的其他所有后代节点(包括子节点,子节点的子节点等)。

最后一个查看结果树的作用域为循环控制器下面所有取样器的结果

2.元件执行顺序

(1)配置元件(config elements )

(2)前置处理程序(Per-processors)

(3)定时器(timers )

(4)取样器(Sampler)

(5)后置处理程序(Post-processors)

(6)断言(Assertions)

(7)监听器(Listeners)

关于执行顺序,有两点需要注意:

前置处理器、后置处理器和断言等元件功能对取样器作用,因此,如果在它们的作用域内没有任何取样器,则不会被执行。

如果在同一作用域范围内有多个同一类型的元件,则这些元件按照它们在测试计划中的上下顺序依次执行。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/26019.html

(0)
nan
上一篇 2021-09-17
下一篇 2021-09-17

相关推荐

  • 跳跳舞蹈app怎么样(自学跳舞的最好软件推荐)

    想在家自学舞蹈,这些app保证能满足你跳跳舞蹈这个app应该是首选了。人气下载量都是第一教学种类:MV舞、爵士、编舞、抖音舞、曳步舞、宅舞、中国风、古典舞、少儿、现代、拉丁、肚皮舞,基本上算都覆盖了。但是实话说目前里面流行舞做的比较多,广场舞类的基本

    2021-10-23 科技
    0
  • 三年后房价必将大跌真的假的(三年后房价是涨还是降)

    房价是每个人心中最惦记的事情,有的人买房是刚需,而有的人买房是投资,无论是什么需求,低价买房后发现房价上涨肯定是开心的。近期,总有人传三年后房价必将大跌,这到底是真是假呢?一起来看看久久派带来的介绍吧!三年后房价必将大跌

    2021-09-09
    0
  • 杜月笙真的睡了黄金荣老婆吗(杜月笙和黄金荣老婆关系)

    杜月笙作为青帮老大自然情史是极其丰富的,他一生共娶了5位太太,不过有传闻说杜月笙最爱的那个女人不是他的太太们,而是师娘林桂生,也就是黄金荣的老婆,那么杜月笙真的睡了黄金荣老婆吗?杜月笙和黄金荣老婆关系是怎样的?下面就跟久久派小编来详细了解一下吧!杜月笙真的睡了

    2021-09-03
    0
  • 四种解决劳动纠纷的维权途径(劳动争议法律咨询)

    发生劳动纠纷怎么办?直接劳动仲裁啊!但是,劳动仲裁费时费精力。还有什么更简单、免费的方式进行维权吗?当然有!看完这篇文章,get简单维权方式。一、向劳动监察大队投诉1、打12333,电话投诉;2、去人社局,线下投诉。二、哪些

    2021-12-12
    0
  • Win10电脑蓝牙连接手机配对教程(如何让电脑蓝牙连接手机)

    虽然WiFi无线连接现在是主流,但蓝牙无线连接仍然以独特的优势得以在许多设备中保留。例如Win10动态锁自动锁定功能就是利用电脑与手机的蓝牙连接实现的。下面小编就来分享一下Win10电脑蓝牙配对连接手机的方法:首先,把电脑和手机的蓝牙都

    2021-12-11 科技
    0
  • 低版本安卓系统模拟器(十大模拟器排行榜)

    IT之家6月25日消息6月24日晚,微软举行了下一代Windows的发布会,正式宣布名称为Windows11。IT之家获悉,微软正在将安卓应用引入Windows11。安卓应

    2022-01-15 科技
    0

发表回复

登录后才能评论