Jmeter(八):jmeter接口自动化测试操作流程、计数器、定时器详解

news2024/12/26 10:58:21

Jmeter: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. 添加察看结果树进行结果察看

实战如下图:

同时,我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,免费领取

软件测试视频教程观看处:

字节大佬教你逼自己如何在15天内掌握自动化测试(接口自动化/APP自动化/Web自动化/性能测试),内含项目实战

Jmeter:jmeter计数器

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

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

1、新增计数器

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

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

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

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

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

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

第一次迭代数据

第二次迭代数据

Jmeter:jmeter_定时器

固定定时器

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

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

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

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

统一随机定时器

1、可以对每个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的请求时会同时执行,可通过表格察看结果;如下图:

写在最后

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

☑ 240集-零基础到精通全套视频课程
☑ [课件+源码]-完整配套的教程
☑ 18套-测试实战项目源码
☑ 37套-测试工具软件包
☑ 268道-真实面试题
☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

 

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

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

相关文章

广州华锐视点:VR3D技术在中学物理实验中的应用

随着科技的飞速发展,VR(虚拟现实)技术已经成为当今教育领域的一股重要力量。它为传统教学带来了前所未有的变革,特别是在初中物理实验教学中,VR技术的应用为学生们开启了全新的学习之旅。下面,让我们一起来探讨VR/3D虚拟仿真中学物…

uboot 启动流程详细分析参考

1 基本概念 1.1 uboot 是什么? 当我们厌倦了裸机程序,而想要采用操作系统的时候,uboot就是不得不引入的一段程序。所以,uboot就是一段引导程序,在加载系统内核之前,完成硬件初始化,内存映射&a…

2016-2023全国MEM国家A类线趋势图:浙大MEM要高多少?

2024年全国MEM联考已经到了关键的冲刺阶段,以目前全国非全日制mem项目的招生录取情况来看,大多数都是以国家A类线作为其录取的基本参考依据。而mem项目的国家线子啊过去的几年中也是有过比较大的波动,最明显的是2022年的国家线达到了历史最高…

【fiddler+loadrunner 两兄弟制霸脚本开发】

前言 一、fiddler工具 1、运行fiddler工具 2、运行需要抓包的网站 这里以loadrunner自带的网站为例 点击“Start web Server” 再点击如下 会看到如下的页面 (备注:这里把127.0.0.1改成本机的ip地址,有时fiddler工具会监控不到127.0.0.1的请…

基于人工智能的图像分类算法研究与实现 - 深度学习卷积神经网络图像分类 计算机竞赛

文章目录 0 简介1 常用的分类网络介绍1.1 CNN1.2 VGG1.3 GoogleNet 2 图像分类部分代码实现2.1 环境依赖2.2 需要导入的包2.3 参数设置(路径,图像尺寸,数据集分割比例)2.4 从preprocessedFolder读取图片并返回numpy格式(便于在神经网络中训练)2.5 数据预…

安卓富文本部分高亮及点击事件

安卓富文本部分高亮及点击事件 前言一、富文本是什么?二、实现方法1.使用html2.使用SpannableString 总结 前言 富文本其实不是很常用,但有遇到了过后使用很方便的场景,例如免责声明。这时候就很重要了,前段时间遇到了&#xff0…

轻松实现文件按大小归类保存,高效管理你的文件库!

如果你像管理自己的财产一样管理你的文件,那么你一定需要一个能够轻松实现文件按大小归类保存的工具。今天,我要向大家介绍一款全新的文件管理软件,它能够将你的文件按照大小进行归类保存,让你的文件管理更加高效和有序&#xff0…

安装jdk1.6

安装jdk1.6 背景安装修改 参考 背景 看资料的时候,涉及到jdk1.6,我看了一下本地的jdk,有1.7、1.8、20的,就是没1.6的。然后就琢磨装一个 安装 我看了一下oracle官网,现成的好像不好用。后面google了一下,好像苹果提供了…

d3dx9_43.dll丢失怎么解决,四个解决方法帮你解决d3dx9_43.dll丢失

随着科技的不断发展,我们越来越依赖各种软件和硬件设备来提高生活和工作效率。然而,有时候我们可能会遇到一些技术问题,如“d3dx9_43.dll丢失”的问题。这个问题可能导致某些程序无法正常运行,给我们的生活带来诸多不便。因此&…

如何编写有效的接口测试

在所有的开发测试中,接口测试是必不可少的一项。有效且覆盖完整的接口测试,不仅能保障新功能的开发质量,还能让开发在修改功能逻辑的时候有回归的能力,同时也是能优雅地进行重构的前提。编写接口测试要遵守哪些原则?测…

发现一款非常好用的学术GPT,可形成知识库,并分析论文,根据观点生成文字

发现一款非常好用的学术GPT,支持CHATGPT3.5交互、论文分析与生成,目前作者并未全面推广,仅在小圈子里使用,可以保证后端api的使用稳定性,不会出现大量用户共享gpt 服务,导致gpt调用超时的情况。 使用方法&a…

unittest自动化测试框架,全网独一份

一、单元测试的定义 1、什么是单元测试? 单元测试是指,对软件中的最小可测试单元在与程序其他部分相隔离的情况下进行检查和验证的工作,这里的最小可测试单元通常是指函数或者类,一般是开发来做的,按照测试阶段来分&…

笔记:绘图进阶

主要功能: 双坐标轴多子图共用一个横坐标横坐标时间刻度设置(方便) # -*- coding: utf-8 -*- import numpy as np import pandas as pd import matplotlib.pyplot as plt import matplotlib.dates as mdatesif __name__ __main__:# 风速da…

Pytest自动化测试框架之Allure报告详解

简介 Allure Framework是一种灵活的、轻量级、多语言测试报告工具。 不仅可以以简洁的网络报告形式非常简洁地显示已测试的内容, 而且还允许参与开发过程的每个人从日常执行中提取最大程度的有用信息和测试。 从开发/测试的角度来看: Allure报告可以…

Elasticsearch实践:ELK+Kafka+Beats对日志收集平台的实现

可以在短时间内搜索和分析大量数据。 Elasticsearch 不仅仅是一个全文搜索引擎,它还提供了分布式的多用户能力,实时的分析,以及对复杂搜索语句的处理能力,使其在众多场景下,如企业搜索,日志和事件数据分析等…

基于PCA主成分分析的BP神经网络回归预测研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

医疗领域的数字化浪潮:互联网医院平台的关键作用

数字化浪潮正在迅速改变医疗领域的方式和效率。互联网医院平台作为数字化医疗的关键元素,正在为医疗行业带来巨大的变革。本文将探讨互联网医院平台的关键作用,并提供一个示例,使用Python编写一个简单的医疗预约系统。 互联网医院平台的关键…

C++11的for循环

在C03/98中&#xff0c;不同的容器和数组&#xff0c;遍历的方法不尽相同&#xff0c;写法不统一&#xff0c;也不够简洁&#xff0c;而C11基于范围的for循环以统一&#xff0c;简洁的方式来遍历容器和数组&#xff0c;用起来更方便了。 for循环的新用法 #include <iostre…

可视化模拟航线

目录 效果图 前言 新社区 将模拟航线引入到自己的html页面中 创建容器 初始化echarts实例对象 配置项给echarts 效果图 前言 模拟航线为echarts社区里面的大佬制作&#xff0c;由于2022.7.28&#xff0c;echarts的社区停止了&#xff0c;所以本文是为了方便直接使用&…