全栈Jmeter接口测试(八):jmeter接口自动化测试操作流程,计数器,定时器

news2024/11/28 14:42:31

Jmeter(16):jmeter接口自动化测试操作流程

在企业使用jmeter开展实际的接口自动化测试工具,建议按如下操作流程, 可以使整个接口测试过程更规范,更有效。

接口自动化的流程:

1、获取到接口文档:swagger、word、excel ...

2、熟悉接口文档然后设计测试用例(一般都是先在excel中编写)

3、进行用例评审

4、将excel中的测试用例在jmeter中编写完成(配置信息、数据、断言)

5、在相应的测试阶段执行jmeter中的接口用例

6、出接口测试报告

测试时间段:

测试——后端——测试单元、接口——时间:当API开发完成后

测试——前端——测试功能、业务——时间:当前端开发完成后

接口测试用例录入到jmeter中详细操作:

1. 在测试计划下新增一个线程组,并对测试计划和线程组根据项目重新命名

2. 在线程组下新增一个用户定义的变量元件,进行URL等公共参数设置

3. 在线程组下新增一个全局的http请求默认值元件进行取样器公共部分的设置

4. 在线程组下根据公司接口测试需要新增事务控制器元件作为按模块组织接口 的文件夹(事务控制器元件类似文件夹的含义,暂不具体讲解)

5. 在事务控制器下继续新增事务控制器作为单个接口的测试用例汇总文件夹

6. 在单个接口的测试用例汇总文件夹中继续新增事务控制器作为单个测试用例 的文件夹

7. 在单个用例的文件下新增取样器和断言操作(一般断言操作可设置在最后一 个请求中)

8. 反复根据2.5--2.7的过程增添接口测试用例

9. 添加察看结果树进行结果察看

实战如下图:

Jmeter(17):jmeter计数器

jmeter计数器

如果需要引用的数据量较大,且要求不能重复或者需要递增,那么可以使用计数器来实现

如:新增功能,要求名称不能重复

1,新增计数器

计数器:允许用户创建一个在线程组之内都可以被引用的计数器。

计数器允许用户配置一个起点,一个最大值,增量数,循环到最大值,然后重新开始,继续这样,直到测试结束。

配置路径:配置元件——计数器

 2、在http请求中引用计数器 ${data}

 3、在线程组中循环次数为10次

 4、执行后查看结果树,每次循环计数器地址一个数字;如下图:

第一次迭代数据

第二次迭代数据

Jmeter(18):jmeter_定时器

固定定时器

如果你需要让每个线程在请求之前按相同的指定时间停顿,那么可以使用这个定时器;需要注意的是,固定定时器的延时不会计入单个sampler的响应时间,但会计入事务控制器的时间

1、使用固定定时器位置在http请求中;每次http请求前延迟3秒;

配置路径——定时器——固定定时器;如下图:

 2、线程组循环3次,通过表格查看结果;如下图:

统一随机定时器

可以对每个http请求前做随机延迟;如下图:

 2、线程组循环3次,通过表格查看结果;如下图:

高斯定时器

1、可以对每个http请求前做随机延迟;如下图:

 2、线程组循环3次,通过表格查看结果;但是高斯定时器有时会超时设置的延迟时间;延迟3--5秒,有时会延迟导出5秒以上;故建议想要固定延迟时间可使用固定定时器;如下图: 

 同步定时器

同步定时器顾名思义就是所有的操作同一时间开始执行,通过使用同步定时器可以对某个请求进行并发的操作;一般用作压力测试;如下图

同步定时器添加路径:定时器>Synchronizing Timer(同步定时器)

模拟用户组的数量: 设置并发用户数,如果设置为0,代表线程组的线程数。

超时时间: 设置并发用户数等待的时间,0表示等到模拟用户数全部到位后开始释放执行;

举例: 模拟用户组数据设置为10,超时时间设置为5秒 ==》用户1第一个到达同步定时器开始计时,如果3秒钟,10个都到了,就一起释放执行后续的请求;如果5秒钟到了,只来了7个,那么7个一起释放执行后续的请求;特殊情况,超时时间设置为0,表示到达用户数不能达到模拟用户组的数量,则无限等待;

使用同步定时器实例:

以上图中的同步定时器为例,在登录1请求下添加同步定时器,如果线程组的线程数为5,那么在5个用户都到登录1的请求时会同时执行,可通过表格察看结果;如下图:

 

重点:学习资料

600g的学习资料懂的都懂

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/85499.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用openCV在图片上绘画标记

1.在图片上画图(直线,矩形,圆形,多边形) import numpy as np import cv2img cv2.imread(watch.jpg,cv2.IMREAD_COLOR)#给图片加线#参数分别表示,起始和终止点的坐标…

Git---本地仓库有多条commit,如何push某一条commit到远端

默认情况下&#xff0c;git push会推送暂存区所有提交&#xff08;也即HEAD及其之前的提交&#xff09;&#xff0c;使用下面的命令可以改变此默认行为&#xff1a; $ git push <remotename> <commit SHA>:<remotebranchname>举例如下&#xff1a; git pus…

小美,这篇查询SQL执行流程你一定要看

前言 宿舍里&#xff0c;小A兴致满满的将刚写好的查询SQL执行流程文章通过微信发给小美&#xff0c;回想起昨晚透过窗户意外看到小美哭的梨花带雨&#xff0c;问过她室友才知道竟然是因为面试被SQL执行流程给难住了。心里暗自下决心&#xff1a;作为小美背后的男人&#xff0c…

MongoDB Node 驱动简介

MongoDB Node 驱动介绍 1. MongoDB数据库连接指南 使用原生的mongodb Node驱动连接MongoDB数据库。 1.1 数据库连接URI 数据库连接URI是一个指明了数据库地址、名称、用户名、密码的字符串&#xff0c;类似于网页链接。 1.2 Node驱动安装 使用Npm或者Yarn安装数据库驱动程…

LeetCode题解13 (102,226) 二叉树的层序遍历,翻转二叉树

文章目录二叉树的层序遍历(102)代码解答&#xff1a;翻转二叉树(226)代码解答:二叉树的层序遍历(102) 思路(前序,后序,中序遍历): 二叉树的层序遍历不同于二叉树的前序,后序,中序遍历,层序遍历是将二叉树的每一层从根部开始进行遍历&#xff0c; 将每一层的节点都放到1个集合中…

推断统计 | 学习笔记

一.概率与概率分布 概率论&#xff1a;为解决不确定性问题提供方法 1.随机事件及其概率 基本概念 试验&#xff1a;在相同条件下&#xff0c;对事物或现象所进行的观察。特点是可以在相同的条件下重复进行&#xff1b;每次试验的可能结果不止一个&#xff0c;但试验的所有可…

l2a股接口的委托队列有什么作用?

l2a股接口的委托队列是Level 2行情特有的功能&#xff0c;如下图&#xff0c;在传统交易页面中&#xff0c;可以看到个股封板涨停有35994手&#xff0c;但是不能具体看到各笔委托单的数量&#xff0c;不利于我们甄别究竟是主力在强势封板还是散户在跟风。 而在Level 2行情中可以…

高性能、强稳定的工业级服务器冗余方案是怎样的?

前言 服务器是工业数据采集与上位机进行通信的枢纽&#xff0c;一旦遭到攻击或者出现连接不稳定的情况&#xff0c;导致断开连接&#xff0c;工厂就会出现非计划性的停机停产。这种情况带来的损失是难以估量的。因此&#xff0c;为了保障自动化生产的稳定可控&#xff0c;服务…

关于Detectron库预训练模型的权重转换

关于Detectron库预训练模型的权重转换 最近在调试代码的过程中涉及到detectron库的使用&#xff0c;在模型训练前&#xff0c;主干网络的部分需要加载预训练模型&#xff0c;但是原始的预训练模型在detron库中的代码是不能直接使用的&#xff0c;需要通过转换工具对模型的键值…

Sentinel服务熔断降级

除了流量控制以外&#xff0c;对调用链路中不稳定的资源进行熔断降级也是保障高可用的重要措施之一。一个服务常常会调用别的模块&#xff0c;可能是另外的一个远程服务、数据库&#xff0c;或者第三方 API 等。例如&#xff0c;支付的时候&#xff0c;可能需要远程调用银联提供…

Redis Lua脚本 Debug

Redis 编程接口之Lua脚本 Redis 使用Lua脚本和Redis Functions扩展其功能。Redis提供编程接口&#xff0c;允许开发者在服务器执行自定义的脚本&#xff0c;对于不同的版本&#xff0c;实现的方式略有不同 Redis 7 及以上版本 使用Redis Functions 管理、运行脚本Redis 6.2及…

【20天快速掌握Python】day02-数据类型转换及运算符

1、数据类型转换 函数说明int(x [,base ])将x转换为一个整数float(x)将x转换为一个浮点数str(x)将对象 x 转换为字符串bool(x)将对象x转换成为布尔值转换成为整数 print(int("123")) # 123 将字符串转换成为整数 print(int(123.78)) # 123 将浮点数转换成为整数 …

腾讯云存储产品全线升级,满足更多高性能存储场景

数字经济时代&#xff0c;诞生了海量数据资源&#xff0c;促使数据存储技术也在不断推陈出新。12月1日&#xff0c;在2022腾讯全球数字生态大会存储专场上&#xff0c;腾讯云发布了多款云存储产品能力上新&#xff0c;并对分布式存储、高性能存储、日志大数据、云原生数据湖等产…

CMSIS hal库 标准库 pack(芯片支持包)

ARM Cortex™ 微控制器软件接口标准(CMSIS&#xff1a;Cortex Microcontroller Software Interface Standard) 是 Cortex-M 处理器系列的与供应商无关的硬件抽象层 CMSIS英文全称Common Microcontroller Software Interface Standard&#xff0c;☞通用微控制器软件接口标准&a…

OAuth2.0介绍

1. OAuth2.0介绍 OAuth&#xff08;开放授权&#xff09;是一个开放标准&#xff0c;允许用户授权第三方应用访问他们存储在另外的服务提供者上的信息&#xff0c;而不需要将用户名和密码提供给第三方应用或分享他们数据的所有内容。OAuth2.0是OAuth协议的延续版本&#xff0…

【蓝桥杯选拔赛真题51】Scratch赛车训练 少儿编程scratch图形化编程 蓝桥杯选拔赛真题讲解

目录 scratch赛车训练 一、题目要求 编程实现 二、案例分析 1、角色分析

python解决 某文库禁用文段批量下载 并保存到文档

嗨害大家好鸭&#xff01; 我是小熊猫鸭~ 大家是不是在写毕业论文的时候 需要参考某一段的内容 要用到复制粘贴&#xff0c;但是吧&#xff0c;某文库就需要付费&#xff0c; 就老难受了… 我们今天就来解决这个"老难受" 源码、资料点击此处 环境使用&#xff1…

项目实战案例丨教辅机构信息化平台跟着这个做

一. 基本简介 最近正值计算机专业的小伙伴忙着整理毕业设计&#xff0c;有不少童靴问辉哥&#xff0c;有没有合适的项目作为毕业设计项目。恰好辉哥这里就有一个适合作为毕设的项目&#xff0c;那么辉哥就写一篇文章&#xff0c;聊聊这个项目&#xff0c;希望可以对有需要的你…

照片怎么制作动态照片?这篇文章教会你如何制作

大家不知道有没有在网上刷到过一些本来是静态的照片&#xff0c;可照片里的局部却能够动起来的动态图片&#xff0c;我看完后觉得这种特效很神奇&#xff0c;既有趣又不会有违和感。那你想知道动态照片怎么制作吗&#xff1f;今天我就来给大家介绍一下制作动态图片的具体方法&a…

基于JWT用户认证分析

在前后端分离开发时为什么需要用户认证呢&#xff1f;原因是由于HTTP协定是不储存状态的(stateless)&#xff0c;这意味着当我们透过帐号密码验证一个使用者时&#xff0c;当下一个request请求时它就把刚刚的资料忘了。 于是我们的程序就不知道谁是谁&#xff0c;就要再验证一…