Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做得比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试。因为在做接口测试时可以设置线程组,所以也可做接口性能测试。

本篇使用JMeter完成了一个完整的Http接口性能测试流程,从脚本编写(工具化生成),执行到最终结果分析。

  1. 测试接口的 基本要求

接口地址 :我们选取最常见的百度搜索接口:https://www.baidu.com/s?ie=utf-8&&wd=新闻

ie:编码方式,默认为utf-8

wd: 搜索词

返回结果判断 (断言):

搜索结果,我们可以通过校验结果中是否含有搜索词wd来判断本次请求成功或失败。

  1. 操作

依次进行如下操作:1) 添加线程组 2)添加请求&http消息头管理器 3)添加结果监听器(察看结果树 )

4)添加用户自定义变量 *)添加定时器(集合点)

5)添加请求的断言 6)添加断言结果 7)添加聚合报告 8)执行

9)结果分析(分析测试报告)

  1. 添加线程组

添加虚拟用户组(Thread Group),这些虚拟用户用来模拟访问被测系统

一个线程组(Thread Group)等于一组虚拟用户(virtual users group),

一个Java线程 等于 一个用户

  1. 添加线程组 --菜单

  1. 添加线程组 --参数

2)添加请求、添加 http消息头管理器

2.1)添加请求

接下来的一步就是要加入实际被测页面,右击“线程组” > “添加” > “Sampler” > “HTTP请求”。

ps: 参数,用于get 或put请求;消息体数据用于post 请求; -----很重要,很容易出错!

  1. 添加请求

2.2)http消息头管理器

3)添加查看结果树

添加结果监听器(察看结果树 ), “监听器”让用户来观察测试结果

运行后点击左侧观察结果数,查看请求执行结果,红色为失败,绿色为成功,如下图:

4)添加用户自定义变量 &集合点

4)添加用户自定义变量 -菜单

用户自定义变量 -,需要在HTTP请求处,手动修改请求中为变量形式 ${wd}

*)添加集合点

如果线程数是6,按组分组的模拟用户数是3,超时时间是0,则:当加载完3个用户时,这3个用户开始并发操作;当另外3个用户加载完时,开始第2(6/3)组的并发; ---------------如果要做1000用户并发,则第一个参数为1000,第二个参数为0。========设置超时时间为0时,则要保证线程数是分组并发数的整数倍,否则剩余用户数就会一直等待状态;

5)添加请求的断言 6)添加断言结果

5)添加请求的断言 --菜单

5)添加请求的断言 – 校验返回的文本中是否包含搜索词,添加参数${wd}到要测试的模式中

  1. 断言结果查看,如上失败,可能是添加断言的“测试字段” 勾选错误导致

7)添加聚合报告

7)添加聚合报告–“线程组” -> “添加” -> “监听器” -> “聚合报告”,用以存放性能测试报告

8)执行

至此,就完成了一个完整Http接口的JMeter性能测试脚本编写,点击运行即可

查看运行日志, “选项” > “Log Viewer”看看运行的日志。如果你还是看不到日志,你可以点击下面所示的三角箭头展开或者收集日志视图

8)运行 (后面是清空执行结果)

9)结果分析(分析测试报告)

待性能测试执行完成后,打开聚合报告可以看到:

响应时间的单位是ms. 另外:KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec

  1. 脚本查看

可以使用编辑器查看.jmx文件,如下图所示:

最后: 可以关注公众号:伤心的辣条 ! 进去有许多资料共享!资料都是面试时面试官必问的知识点,也包括了很多测试行业常见知识,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!推荐软件测试交流学习群:914172719 里面会分享一些资深架构师录制的视频录像


好文推荐

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…

什么样的人适合从事软件测试工作?

那个准点下班的人,比我先升职了…

测试岗反复跳槽,跳着跳着就跳没了…

使用JMeter 进行接口并发性能测试相关推荐

  1. 使用jmeter进行接口压力性能测试

    一.Jmeter下载 进入官网:http://jmeter.apache.org/ 二.启动Jmeter 二.修改语言 四.配置jemter测试计划 1.添加本次测试计划 (右键-->添加--& ...

  2. 接口并发测试之:WebSocket从原理到代码实战,我没草率~

    1. WebSocket协议详解 1.1 WebSocket的由来 1.2 WebSocket的原理 2. WebSocket的请求 2.1 WebSocket模块 2.2 WebSocket请求与响 ...

  3. 【技术博客】 利用Postman和Jmeter进行接口性能测试

    利用Postman和Jmeter进行接口性能测试 作者:ZBW 版本:v1.1 在Phylab的开发过程中,对于生成报告接口的性能考量十分重要.原有的Latex接口虽然生成的报告美观,但编译Latex ...

  4. jmeter web服务器协议,【JMeter4.0学习(三)】之SoapUI创建WebService接口模拟服务端以及JMeter测试SOAP协议性能测试脚本开发(示例代码)...

    目录: [阐述]:首先应该遇到了一个共同的问题,JMeter3.2之后就没有WebService(SOAP) Request,后来经过查询网上资料得知其实可以用HTTP请求来操作,结果是一样的. [步 ...

  5. JMeter接口并发测试

    在PostMan批量执行的文章中写道:PostMan批量执行接口是以一种串行的方式在执行,并不是并发的执行.而更多的时候,我们需要的是接口并发执行,因此就需要用到本篇文章了.PostMan文章的链接: ...

  6. form表单用js提前执行函数若不成功则不提交_如何用Jmeter做接口自动化测试?跟着操作一次就明白了...

    Jmeter是Apache公司组织开发的一款基于Java压力测试工具,开源且支持多个操作系统,可以对测试静态和动态资源进行大并发负载模拟,或对服务器网络进行高强度并发测试,业界多将该工具应用于性能测试 ...

  7. 学会针对永洪API接口的性能测试,工作效率提升百倍

    性能测试是指针对产品的业务场景,通过设计场景和压力,对产品进行高并发量.大数据量的测试,主要目的是为了确定产品在高并发情况下的各项指标:平均处理时间,QPS,网络IO,磁盘读写等.永洪BI具有高耦合性 ...

  8. jemter接口并发数怎么算_JMeter学习使用(1) - 接口GET请求并发测试

    前提:已经配置完成JDK和jmeter,进入jmeter的bin目录下,双击jmeter.bat,启动jmeter . 步骤:1.添加线程组 注意: 线程数--请求数     Ramp-up Peri ...

  9. 【转】java接口的性能测试

    这周尝试了一把性能测试,之前都是测试网站的性能测试,java接口的性能测试还是头一次,学到了很多,特此分享一下. 主要用到了两个性能测试工具,一个是jmeter,一个是LoadRunner. 使用jm ...

最新文章

  1. AndroidStudio中提示:This project uses AndroidX dependencies, but the ‘android.useAndroidX‘ property is
  2. 使用ajax方法实现form表单的提交
  3. java 博客系统_讲解开源项目:5分钟搭建私人Java博客系统
  4. 电脑教程从入门到精通_如何自学原画设计|新手如何开始学原画?(附视频教程从入门到精通)...
  5. ubuntu 升级python3.5到python3.7,并升级pip3
  6. linuxmove命令_move命令详解 dos命令 move的用法
  7. 抖音发布2020数据报告:日均视频搜索量破4亿,70后最爱发表情包
  8. Python---String 字符串类型
  9. vs2015-devexpress 安装
  10. python 基础-如何调用函数
  11. Viojs P1484 ISBN号码
  12. Unity支持的C#版本
  13. 算法艺术(一):Hello world
  14. 2022.4月份科研记录【日记】
  15. elementui[el-table]表格全选操作以及翻页选中取消相关效果
  16. Flutter 安装包体积优化
  17. Python execjs(执行js脚本)
  18. 顺序表——有序顺序表的插入
  19. 【uni-app怎么引用使用阿里巴巴矢量图标库iconfont】
  20. 小学数学加减法测试软件,儿童数学练习智能出题系统

热门文章

  1. system v共享内存
  2. 正反斜杠的区别_电脑中的正斜杠(/)与反斜杠(\)的区别
  3. idea 删除补丁_带着好奇心去探索IDEA
  4. java抓取屏幕像素,以像素为单位获取屏幕尺寸
  5. 利用Python制作一个“电子记事本”
  6. Python模块-decimal
  7. 使用tail和head读取字节流
  8. nginx常用的请求过滤
  9. 配置Exchange邮箱完全访问权限
  10. oracle数据库性能调优技术--深入理解散列连接执行计划