火爆全网,Jmeter接口自动化-参数化CSV实战详解(超级详细)

news2024/10/2 12:20:50

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

一般来说,我们使用Jmeter来模拟HTTP请求时,比如模拟查询学生信息,我们通常把查询接口的入参(如学生姓名)写在HTTP请求中。

当只需要查询1个学生的信息时,我们可以把这名学生的姓名准确的写到入参中,但假如需要依次去查10个学生的信息时,我们需要怎么做呢?

我们也可以再添加9个请求,这就可以查询10个学生的信息,但很明显,这种方法用起来太死板了,当我们要查询100个学生信息时,我们不可能在一个线程组中建100个请求去模拟查询。

我们注意到,这10个请求入参,除了学生姓名,其他的设置都是一致的。
因此,最好的办法是参数化。在HTTP请求中,我们不要把请求入参值写死了,把学生姓名当成变量,这样不管每次传入什么值,我们都可以只用1个请求来处理。

Jmeter参数化

CSV Data Set Config(CSV 数据文件设置)

21

1、准备数据文件
接口地址:
查询学生信息接口:http://api.nnzhp.cn/api/user/stu_info
登录接口:http://api.nnzhp.cn/api/user/login

在这里,我们需要准备2个txt文件,如下:

22

2、添加 CSV Data Set Config
首先,建立测试计划和添加线程组就不多说了,我们选择右键->添加->配置元件->CSV 数据文件设置,添加后就可以配置其参数。

23

24

参数说明:
文件名:这里填写参数化数据文件的路径,如D:/文件名。
文件编码:一般选择UTF-8
变量名称:参数化文件中每列参数的名称,如果有多列参数,则加上英文逗号间隔(如文件2)
其他的参数如无特殊需要,我们一般保持默认即可。

3、在请求中引入参数
在引入参数时,我们需要注意,参数的名称必须和上一步骤中设置的变量名称一致。

25

26

在这里,从接口文档中了解到,返回参数中,当错误编码error_code为0表示操作成功,因此设置了JSON断言来对结果进行断言。

26

4、线程组设置循环次数
一般来说,我们的参数化文件有多少行数据,我们就设置为多少次。在这里,根据需要设置循环次数为2,每次会读取文件中的一行数据。

27

最后,运行,得到察看结果树的情况如下:

28

可能出现的异常问题

有时候,在使用txt文件参数化时,请求数据出现乱码,如下:

29

此时,需检查CSV数据文件设置中的编码格式是否为UTF-8,同时确保txt文件的编码也是UTF-8,最好是新建1个文件,把原文件内容直接复制过去,并保存的文件编码格式选择为“UTF-8”。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

在人生的舞台上,奋斗是自我超越的乐章,成功是坚持不懈的结晶。拥抱挑战,追逐梦想,坚持热爱与努力,我们才能在岁月的长河中留下辉煌的足迹。

无论前路多么崎岖,心中的信念不容动摇;无论困境多么险恶,勇气与毅力必将照亮前行。唯有奋斗,方能开启心灵的瑰丽花朵,绽放出辉煌的人生画卷。

奋斗是奇迹的孵化器,努力是梦想的引路人。挑战自我,超越极限,勇往直前,才能将生命点亮。相信自己的力量,坚持追求,只有勇敢面对困难,才能书写出辉煌的人生篇章。

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

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

相关文章

MachineLearningWu_16/P72-P77_Diagnostic

x.1 导数,计算图,大型网络 计算图就是根据链式法则求取偏导,大型网络就是多层网络堆叠而成。 x.2 Diagnostic 在我们对深度学习有了一些认知后,最重要的就是模型的诊断,以带有L1正则化的线性回归为例,我…

【Linux】系统内核中System.map中字段含义解释

可以通过命令行过来初始化内容 cat System.map-4.18.0-193.el8.x86_64 | grep pci | grep initcall "T":表示该符号是一个全局函数,可以被其他模块或文件访问。 "D":表示该符号是一个全局数据对象,可以被其…

玩转轻叶H5:批量功能上线,落地页创建更高效

在营销领域,落地页作为营销过程的最后一环,不仅要准确传达产品或服务的独特卖点,也要提升互动的友好度,完成承接用户和转化用户的价值作用。 为了满足营销人员的落地页自建需求,我们推出了轻叶H5制作工具,帮…

CVPR 2023 | 4D雷达场景流的跨模态监督学习

注1:本文系“计算成像最新论文速览”系列之一,致力于简洁清晰地介绍、解读非视距成像领域最新的顶会/顶刊论文(包括但不限于 Nature/Science及其子刊; CVPR, ICCV, ECCV, SIGGRAPH, TPAMI; Light‐Science & Applications, Optica 等)。 本次介绍的论文是:CVPR 2023 | 4D雷…

请求转发和请求重定向

目录 1. 定义层面 2. 请求方层面 3. 数据共享层面 4. 最终 url 层面 5. 代码实现层面 请求转发 请求重定向 在Java中,跳转网页的方式有两种,一种是请求转发,另一种是请求重定向,而实际上,这两种方式是有着明显…

最小生成树——prim算法

prim算法详解 prim算法简介prim算法步骤prim复杂度prim样例题目公路修建题目描述输入格式输出格式样例样例输入样例输出 提示 prim样例代码 prim算法简介 P r i m Prim Prim算法是一种用于解决最小生成树问题的贪心算法。最小生成树是一个连通图的生成树,它的所有边…

Vue+SpringBoot项目开发:登录页面美化,登录功能实现(三)

写在开始:一个搬砖程序员的随缘记录上一章写了从零开始VueSpringBoot后台管理系统:Vue3TypeScript项目搭建 VueTypeScript的前端项目已经搭建完成了 这一章的内容是引入element-plus和axios实现页面的布局和前后端数据的串联,实现一个登陆的功能&#x…

LVGL学习笔记 28 - 键盘keyboard

目录 1. 设置关联文本框 2. 设置模式 2.1 LV_KEYBOARD_MODE_TEXT_LOWER 2.2 LV_KEYBOARD_MODE_TEXT_UPPER 2.3 LV_KEYBOARD_MODE_SPECIAL 2.4 LV_KEYBOARD_MODE_NUMBER 2.5 LV_KEYBOARD_MODE_USER_1 ~ LV_KEYBOARD_MODE_USER_4 3. 使能弹窗模式 4. 更改按键布局 5. 事…

uniapp----分包

系列文章目录 uniapp-----封装接口 uniapp-----分包 目录 系列文章目录 uniapp-----封装接口 uniapp-----分包 前言 二、使用步骤 1.创建文件 ​编辑 2.min.js的修改 2.1 subPackages 代码如下(示例): 2.2 preloadRule 代码如下&am…

第一次PR经历

第一次PR测试地址:https://github.com/firstcontributions/first-contributions说明文档: https://github.com/firstcontributions/first-contributions/blob/main/translations/README.zh-cn.md

SAP MM学习笔记17-在库品目评价中的标准原价 S 和移动平均价格 V

SAP中有2种价格,标准原价 S 和 移动平均价格 V。 1,标准原价 S 2,移动平均价格 V 在MM03 会计1 Tab中,现行评价区域中,有原价管理区分。 比如下面这个物料 100-100, 它的原价管理区分是 S。 它的合计额…

在Vue中动态引入图片为什么要用require

静态资源和动态资源 静态资源 动态的添加src 动态资源 我们通过网络请求从后端获取的资源 动态的添加src会被当成静态资源 动态的添加src最终会被打包成: 动态的添加图片最会会被编译成一个静态的字符串,然后再浏览器运行中会去项目中查找这个资源…

ucharts-地图

以唐山地图为例&#xff1a; 先去找需要的区域入下图&#xff0c;会得到一堆的经纬度&#xff0c;我把他它放到静态文件里&#xff0c;需要的是它的features <template><view class"charts-box"><qiun-data-charts type"map":opts"o…

Redis中的数据类型

Redis中的数据类型 Redis存储的是key-value结构的数据&#xff0c;其中key是字符串类型&#xff0c;value有5种常用的数据类型: 字符串string哈希hash列表list集合set有序集合sorted set

【24择校指南】温州大学计算机考研考情分析

温州大学(C) 考研难度&#xff08;☆&#xff09; 内容&#xff1a;23考情概况&#xff08;拟录取和复试分数人数统计&#xff09;、院校概况、23专业目录、23复试详情、各科目以及各专业考情分析。 正文1349字&#xff0c;预计阅读&#xff1a;3分钟。 2023考情概况 温州…

Tomcat的一些配置问题(server.xml/catalina.sh)

在同一机器中运行多个Tomcat时&#xff0c;如果不修改server.xml的端口参数&#xff0c;会出现端口冲突使得Tomcat异常&#xff1b;Tomcat默认配置中&#xff0c;JAVA_OPTS不会设置太大&#xff0c;一般需要在catalina.sh中增加一行配置来加大该参数值。 目录 1.Server.xml配置…

监控Kubernetes 控制面组件的关键指标

控制面组件的监控&#xff0c;包括 APIServer、Controller-manager&#xff08;简称 CM&#xff09;、Scheduler、etcd 四个组件。 1、APIServer APIServer 的核心职能是 Kubernetes 集群的 API 总入口&#xff0c;Kube-Proxy、Kubelet、Controller-Manager、Scheduler 等都需…

【Java 回忆录】Java全栈开发笔记文档

这里能学到什么&#xff1f; 实战代码文档一比一记录实战问题和解决方案涉及前端、后端、服务器、运维、测试各方面通过各方面的文档与代码&#xff0c;封装一套低代码开发平台直接开腾讯会议&#xff0c;实实在线一起分享技术问题核心以 Spring Boot 作为基础框架进行整合后期…

怎么学习AJAX相关技术? - 易智编译EaseEditing

学习AJAX&#xff08;Asynchronous JavaScript and XML&#xff09;相关技术可以让你实现网页的异步数据交互&#xff0c;提升用户体验。以下是一些学习AJAX技术的步骤和资源&#xff1a; HTML、CSS和JavaScript基础&#xff1a; 首先&#xff0c;确保你已经掌握了基本的HTML…

从源代码编译构建Hive3.1.3

从源代码编译构建Hive3.1.3 编译说明编译Hive3.1.3更改Maven配置下载源码修改项目pom.xml修改hive源码修改说明修改standalone-metastore模块修改ql模块修改spark-client模块修改druid-handler模块修改llap-server模块修改llap-tez模块修改llap-common模块 编译打包异常集合异常…