本文章出自【码同学软件测试
码同学公众号:自动化软件测试
码同学抖音号:小码哥聊软件测试

在实际工作中,Jmeter大多用来做接口的功能和性能测试。要做接口测试,首先要编写接口测试脚本,本节内容以实际案例为主,给大家介绍下如何编写HTTP脚本。

在使用Jmeter过程中,大多数场景下是不需要写代码的,Jmeter对接口场景做了非常完善的封装,几乎所有操作都可以通过组件来完成。

GET类型接口脚本编写

打开Jmeter,先添加一个线程组,线程组可以理解为用户,我们写的脚本需要用户来运行。

在“测试计划”上右键,“添加”-“线程”-“线程组”,具体配置保持默认即可

接下来创建一个HTTP请求,在线程组上右键,“新建”-“取样器”-“HTTP请求”,并把接口信息配置到组件中

服务器名称或IP:填写接口的域名或者IP(本项目部署在本机,所以写localhost)

端口号:写接口的端口号

方法:选择接口请求类型,本接口是GET类型

路径:接口的URI(URL中除去IP和端口后的部分,可以从接口文档中获取)

这样,一个简单的HTTP-GET类型接口脚本就编写完毕了,是不是很简单。

在运行脚本之前,还需要添加一个组件:“查看结果树”,这个组件是用来查看HTTP请求的数据和服务端返回的响应数据,可以根据响应内容来判断接口业务是否成功。

在线程组上右键,“添加”-“监听器”-“查看结果树”

现在可以运行下脚本,先把脚本保存下,点击菜单栏绿色三角图标,点击查看结果树,就可以看到本次请求的数据了

免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章 + 私信「码同学666」获取资料哦

在查看结果树的请求标签里,可以看到本次发送至服务端的数据,分为请求头和请求体。

在查看结果树里的响应数据-response body里,可以看到服务端返回的数据,从上图可以看到,服务端返回了一个json字符串, data字段里保存的是接口的业务数据,message:success代表接口请求成功。

如果查看结果树里请求的名称是红色的,那通常意味着本次请求失败了,具体失败的原因,需要结合本次请求发送的数据和响应的数据综合判断。

Form类型的POST请求

接下来写一个POST请求,在项目接口文档里,找到/pinter/com/login接口,和上述GET一样,添加一个HTTP请求,将相关信息配置到组件中。

因为POST接口的参数是需要放在请求body中,所以接口参数需要在下方面板中按照key-value的格式进行配置,如图:

配置成功后,点击运行,就可以在查看结果树中看到接口的返回值了。

JSON类型的POST接口

现在在企业里,除了上面Form类型的POST接口外,大量的POST接口都采用了JSON数据传输的方式,json数据有自己单独的格式,不是基于key=value格式的。

在HTTP请求中,需要将json参数配置到HTTP请求组件的“消息体数据”里找到项目文档里的“/pinter/com/register”接口,将json参数配置到HTTP请求中

脚本编写完成后,先点击清理按钮清空查看结果树中上次运行的数据

运行接口,在查看结果树中会报错,查看响应内容,提示:”status”:415,”error”:”Unsupported Media Type”

这是因为json类型的接口,需要在请求头中单独添加一个配置

Content-type:application/json

此配置代表本次请求参数的格式为json类型
在对应HTTP请求上右键,“添加”-“配置元件”-“HTTP信息头管理器”

将脚本保存后,再次运行接口,请求成功:

笔者跟大家分享一个福利!扫码回复【csdn码哥群】入软件测试自学交流群,可免费听技术讲座+领学习资料+视频课免费看

作者:码同学软件测试
本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

从0开始学习Jmeter脚本编写相关推荐

  1. Jmeter Web 性能测试入门 (四):一个小实例带你学会 Jmeter 脚本编写

    测试场景: 模拟并发100个user,在TesterHome 站内搜索VV00CC 添加线程组 添加HTTP信息头管理器 添加HTTP Sampler 填写HTTP Sampler中的信息 添加监听器 ...

  2. ns2相关学习——TCL脚本编写(2)

    下面来学习更加复杂一点的TCL脚本的编写 简述:建立有4个节点的拓扑,其中一个节点作为路由器,用来将两个节点发出的数据包转发到第四个节点上面. 在这里将解释将两个节点的数据流区分开来的方法,展示如何去 ...

  3. ns2相关学习——TCL脚本编写(3)

    在这里我们将学习动态网络的建立 1.建立拓扑 当节点很多的时候,我们可以使用循环的方式来建立拓扑. for {set i 0} {$i < 7} {incr i} {set n($i) [$ns ...

  4. ns2相关学习——tcl脚本编写(1)

    新建一个仿真实例: set ns [new Simulator] 为了让nam文件和trace文件有地方可以依托,我们要打开.nam文件进行写入,并且使用句柄nf set nf [open out.n ...

  5. SecureCRT中Python脚本编写学习指南

    引言 在测试网络设备中,通常使用脚本对设备端进行配置和测试以及维护:对于PE设备的测试维护人员来说使用较多是SecureCRT工具:SecureCRT支持VB.JavaScript.Python等多种 ...

  6. 【Linux学习】如何编写Shell脚本调用企业微信api来发消息给企业微信成员?

    一.前言 最近通过python实现了发送消息给企业微信的功能,参考链接: [Jenkins学习 ]如何编写Python脚本来调用企业微信的api通知企业微信成员关于Jenkins的编译结果? http ...

  7. 关于jmeter中编写shell脚本json的应用

    一 .运用参数 在BeanShell脚本中 ,贴上此代码,会输出一个test1为json格式的的字符串. import org.json.*; import java.net.URLEncoder; ...

  8. Gatling学习笔记(四)---脚本编写及功能介绍

    文章目录 1.脚本编写 1.1 脚本示例 1.2 脚本编写 2.SSL使用 3.条件语句 4.Check和Session使用 5.Feeder 1.脚本编写 其实在压测的过程中我们主要也是压测http ...

  9. android x866.0 教程,poco脚本编写之api

    连接设备后使用poco 使用connect_device连接好指定设备后,会返回一个Device对象,将这个对象传入 AndroidUiautomationPoco第一个参数里进行poco的初始化, ...

最新文章

  1. cas服务器支持接口,3、用CAS接口对接
  2. Hadoop学习之路(十八)MapReduce框架Combiner分区
  3. MySQL入门之PHP的MySQL数据库编程
  4. 力扣232. 用栈实现队列(JavaScript)
  5. 大厂难进,Java面试该如何一面即中?
  6. How to install VNC on Ubuntu
  7. Mirth Connect 互联互通 第五章 查询发送者通道
  8. C++-实现matlab的fftshift(OpenCV)
  9. 分省份碳排放量数据(2000-2019年)
  10. 适合计算机中职生见到打拼音的软件,中职计算机基础教案设计(18页)-原创力文档...
  11. BCNF无损分解例题
  12. MathJax 支持的 Latex 符号总结
  13. 每个系统都在用的appid、appkey、appsecret都是什么意思?
  14. Arranging The Sheep 中位数定理
  15. Linux系统如何下载CityScape/KITTI-STEP数据集
  16. 艺赛旗(PRA)根据制式模板批量生成 word 文件
  17. 大数据需要学习哪些知识
  18. BugkuCTF-Crypto题python_jail
  19. 12C OEM 升级13C
  20. 说一下软件测试行业的优缺点

热门文章

  1. 实战:k8s之服务质量-2022.2.20
  2. 冯大辉从丁香园离职,胜利者不应受到谴责吗?
  3. 软件架构师扮演的是角色,提供沟通的实用技巧
  4. 酷冷至尊GP27-FUS 、GP27-FQS怎么样
  5. PHP面向对象的mysql数据库函数封装
  6. 计算机启动什么意思,UEFI启动是什么意思?UEFI和BIOS启动的区别是什么?
  7. uniapp沉浸式状态栏高度 不同手机状态栏高度问题 『 踩坑记录』
  8. YAHOO工具库(二)
  9. 2021社会生活指数调查-廉政态度及分类问题
  10. CAD梦想画图如何新建或修改尺寸样式