接口测试相关知识(八)JMeter的安装以及使用

1、JMeter的安装和相关知识

1.1什么是JMeter?

JMeter是Apache组织开发的基于java的压力测试工具,用于对软件做压力测试的工具,它最初被设计用于web应用测试,但后来扩展到其他测试领域,它可以用户测试静态和动态的资源

JMeter能够对对应用程序做功能/回归测试  ---------对于测试人员来说最重要的是来做性能测试和接口测试

1.2JMeter有什么作用?

1、web自动化测试

2、接口测试

3、性能 压力测试

4、数据库测试

5、java程序测试

1.3JMeter的优点有哪些?

第一个优点开源:JMeter是一款免费的开源软件,使用它你不需要支付任何费用,因为它的开源性,你也可以根据自己的需求,扩展他的功能

第二个优点小巧:占用的资源非常非常少

第三个优点:功能强化,JMeter设计之初就是做一个简单的web性能测试工具,经过不断的更新拓展,现在可以完成数据库等方面的测试

1.4JMeter的下载和安装

1.4.1JMeter的下载

JMeter网址:https://jmeter.apache.org/download_jmeter.cgi

在打开网址后点开红色箭头所指 进行下载

 

 在图中的信息我们可以看到 JMeter的当前版本(5.4.3)--需要java8的环境

这里本人用的版本为JMeter5.4.1来进行演示

解压的路径可以自定义 如下图所示

 

 1.4.2关于JMeter的环境搭建

因为JMeter基于java搭建的 所以我们需要配置jdk和jre的环境变量

关于环境的搭建这部分可以参考 本人之前的博客随笔

环境搭建网址:

https://www.cnblogs.com/jiachao/p/15696144.html

 1.4.2环境搭建好后开启JMeter

 

 我们找到JMeter的bin目录下的jmeter.bat 右键 以管理员方式运行

如果不以管理员方式运行 会出现保存错误 无法继续接下来的测试

 

 控制台中出现如图所示的提示信息 即为成功  如果出现其他信息 需检查java环境变量

1.4.3JMeter设置语言(中文)

 

 1.5JMeter的各种交互

 

 如图所示 按钮交互依次为

1、打开文件

2、保存文件

3、剪切

4、启动

5、不间断启动

6、清空

7、清空全部

8、查找

1.6关于JMeter的保存

 

 1、在测试计划名称 写入你要测试的用例名称 

2、点击保存按钮

3、选择要保存的路径,点击save 进行保存     

JMeter保存的文件类型默认为(.jmx)

 

1.7JMeter创建线程组

 

 我们在测试计划选择右键 然后在添加的线程里面添加线程组

每一个新创建的线程组可以理解成一个项目(或者工程)

1.8添加测试用例(http)

 

 我们对创建好的线程组右键 在添加、取样器里面 选择HTTP请求 点击

 

 

相关代码如下

复制代码
服务器地址:ws.webxml.com.cn
路径:/WebServices/MobileCodeWS.asmx
HTTP请求:POST   

请求数据

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <getMobileCodeInfo xmlns="http://WebXml.com.cn/">
      <mobileCode>在此处添加手机号</mobileCode>
      <userID></userID>
    </getMobileCodeInfo>
  </soap:Body>
</soap:Envelope>
复制代码

 

在上图中我们可以看到 在处理post请求的时候      

消息体数据:里面写的是xml和json的数据类型

参数:里面写的是表单的数据格式

 

 

1.9添加HTTP的请求头

在我们执行测试的时候 因为我们写入的数据类型为xml 所以我们需要创建请求头管理器来进行定义写入的格式

 

 在线程组处右键,选择添加里面的配置原件,选择HTTP信息头管理器 点击。

 

 在请求头管理器输入

Content-Type:text/xml; charset=utf-

这里要注意排列顺序  因为新创建的会默认在最下 所以我们需要将请求头手动调整在测试用例前 才能生效(请求头,请求头,肯定要在最上面才能用)

 

HTTP信息头管理器是填写请求头的地方,它在配置件的组件里面无涯

1.10在JMeter中查看测试结果 使用的是:监听器中“查看结果树”

 

 点击运行后  在查看结果树当中就可以看到响应数据

 

 途中马赛克为本人手机号,正常展示的结果为手机号+归属地

 

1.11用JMeter处理HTTP GET请求

GET /WebServices/MobileCodeWS.asmx/getMobileCodeInfo?mobileCode=string&userID=string HTTP/1.1
Host: ws.webxml.com.cn
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://WebXml.com.cn/">string</string>

根据上一个请求应用同样的方法     

在结果树查看响应数据

 

 1.12JMeter简单控制器

简单控制器的作用就是将请求头,测试用例等 放在控制器里,统一管理  ,可以防止请求头之间的冲突

 

 需要注意的是 我们创建请求头和请求数据需要放在简单控制器下 才可以生效

1.13利用JMeter工具来做断言

 

 将该工具下载好后,那么jmeter-plugins-manager-1.6.jar是jmeter的插件管理,把该文件放在JMeter安装目录下的lib下的ext的目录下

 

 1.13.1 验证断言插件是否安装

 

 在jmeter选项栏里面 选择plugins Manager 点击

 

 

 在Available Plugins 里面 输入JSON 点击勾选 在点击右下方按钮 进行安装

安装成功后 在Installed Plugins 里面输入json 如果出现了 则证明已安装好

 

1.14用JMeter工具进行断言实战

 

 

 

在我们要断言的请求 进行右键  选择添加 选择断言  选择json/yaml 断言

 

 并且测试结构如图所示排列 点击运行

1.15在JMeter工具 处理动态参数的方法

1、使用后置处理器中的正则表达式提取器

2、使用后置处理器中的JSON提取器

什么是后置处理器? 后置处理器值的是测试用例执行结束后,专门来处理执行后的事情

 

 如上所示,bookID是变量,变量的值datas.id,在postman中,调用变量是:{{变量}},那么在JMeter中,调用变量为:${变量}

 

1.16 JMeter工具 处理HTTP请求默认值

添加方式:它是在配置元件里面,它的主要价值是,我们可以把请求地址填写在HTTP请求默认值里面,那么后面的接口就不需要填写请求地址了,它是全局的

 

 在线程组右键 选择添加 选择配置原件 选择 HTTP默认请求值

 

 我们这里利用到了数据驱动的思想  将重复的参数 分离出来  使其在每个测试用例中都能运行   在JMeter里面 我们输入服务器的IP即可

1.17在JMeter工具中 处理编码的方法

因为我们在做测试的时候 产品大多数为中文,如果在测试时候断言错误 则我们需要在测试用例的内容编码中填写 UTF-8(不区分大小写),如下图所示

 

 2、关于个人在JMeter的总结

在一个线程组里  需要如下几个步骤

需有 简单控制器来进行数据类型的分类   ,简单控制器里需要有 HTTP的信息头管理器和请求信息,而在请求信息里 需要有JSON/YAML断言   

在线程组下面 需添加一个HTTP请求默认值  整合重复IP(或代码)

具体关系如下图所示

 

 

 

posted on   钢镚芽儿哟  阅读(165)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

导航

统计

点击右上角即可分享
微信分享提示