1、HTTP请求默认值介绍

我们在JMeter中编辑测试计划时,如果有多个Sampler(取样器)请求中,参数和设置都是相同的,例如请求服务的IP地址、协议、端口号等,这些信息重复的配置在每个Sampler中,就会增加重复工作量和冗余度,如果以后项目服务器地址发生改变,修改起来也是非常麻烦的。

HTTP请求默认值(Http Request Defaults)这个配置元件,可以将这些重复的配置都放在一起,其他的Sampler请求元件就不需要再配置这些重复的内容,那么只要将这些信息留空,这个字段将自动继承HTTP请求默认值组件中的值,达到了一次配置重复调用的效果。

2、HTTP请求默认值界面

配置元件中的HTTP请求默认值HTTP Request Defaults)界面,和取样器中HTTP请求(HTTP Request)基本相同。

添加HTTP请求默认值组件:选中“线程组”右键 —> 添加 —> 配置元件 —> HTTP请求默认值

界面如下图所示:

提示:因为HTTP请求默认值组件的界面和HTTP请求组件的界面基本相同,所以在这里就不进行说明了。如果想查看HTTP请求默认值组件界面的详细说明,请看前面取样器的相关博客:文章直达

3、HTTP请求默认值的使用

(1)用于演示的项目说明

Httpbin是一个使用Python + Flask编写的HTTP Request & Response Service项目,该服务主要用于测试 HTTP库,你可以向他发送请求,然后他会按照指定的规则将你的请求返回(查看你所发送请求中的信息)。

Httpbin支持HTTP/HTTPS请求,支持所有的HTTP动词,能测试HTTP请求和响应的各种信息,比如 cookieipheaders 和登录验证等。

Httpbin接口地址:http://httpbin.org/

提示:按照规则请求http://httpbin.org/,会返回发送请求报文的完整内容。

具体可查看https://www.cnblogs.com/liuyuelinfighting/p/14788860.html文章,有详细说明。

(2)测试计划内包含的元件

添加元件操作步骤

  1. 创建测试计划。
  2. 创建线程组:选中“测试计划”右键 —> 添加 —> 线程(用户) —> 线程组
  3. 在线程组中,添加配置元件"HTTP请求默认值"组件:选中“线程组”右键 —> 添加 —> 配置元件 —> HTTP请求默认值
  4. 在线程组里面,添加取样器“HTTP请求”组件:选中“线程组”右键 —> 添加 —> 取样器 —> HTTP请求
  5. 在线程组里面,添加监听器“察看结果树”组件:查看结果,选中“线程组”右键 —> 添加 —> 监听器 —> 察看结果树

最终测试计划中的元件如下:

点击运行按钮,会提示你先保存该脚本,脚本保存完成后会直接自动运行该脚本。

(3)说明HTTP请求默认值用法

我们需要把每个请求的公共参数,提取到HTTP请求默认值组件中。

如下图所示:

然后在每个请求的元件中,编辑自己独有的信息即可。

例如,编写每个请求中独有的访问路径,和所需的传递参数等。

如下图所示:

而在HTTP请求默认值组件中配置的参数,在这里都不用重复填写,留空就可以,会自动的继承HTTP请求默认值组件中的配置。

如果此时请求取样器中填写了和HTTP请求默认值组件中配置相同的选项,则以当前取样器的配置为准。

(其他请求同理)

4、总结

配置元件中的HTTP请求默认值HTTP Request Defaults)界面,和取样器中HTTP请求(HTTP Request)基本相同,所以该组件可以为HTTP请求设置默认值。

优先级说明

  1. JMeter支持在一个测试计划中添加多个HTTP请求默认值组件,多个HTTP请求默认值组件中的值会合并叠加。
  2. 在相同作用域内,若有多个HTTP请求默认值组件,如果配置了相同的选项,默认使用第一个HTTP请求默认值组件中定义的信息。

5、拓展知识

这里我们拓展一下配置元件中用户定义的变量User Defined Variables)组件的用法。

用户定义的变量组件和HTTP请求默认值组件的用法基本一样。

  • HTTP请求默认值组件:管理测试计划中相同的请求配置,作用域范围内的sample请求无需重复配置。
  • 用户定义的变量组件:管理测试计划中不相同的请求配置,其他的Sample请求直接引用变量即可,方便对变量的统一管理。

参考:https://blog.csdn.net/m0_38039437/article/details/104112804

『动善时』JMeter基础 — 17、JMeter配置元件【HTTP请求默认值】的更多相关文章

  1. 『动善时』JMeter基础 — 16、JMeter配置元件【HTTP信息头管理器】

    目录 1.用于演示的项目说明 2.测试计划内包含的元件 3.HTTP请求界面内容 4.查看脚本执行结果 5.添加请求头信息(HTTP信息头管理器) 6.优先级说明 7.补充:常见请求头信息 JMete ...

  2. 『动善时』JMeter基础 — 8、JMeter主要元件介绍

    目录 1.测试计划(Test Plan) 2.线程组 3.取样器(sampler) 4.逻辑控制器(Logic Controller) 5.配置元件(Config Element) 6.定时器(Tim ...

  3. 『动善时』JMeter基础 — 12、JMeter取样器详解:sampler

    目录 1.取样器介绍 2.JMeter自带的取样器 3."HTTP请求"为例介绍一下取样器 (1)HTTP Request: (2)Web服务器: (3)HTTP请求: (4)同请 ...

  4. 『动善时』JMeter基础 — 24、JMeter中使用“用户参数”实现参数化

    目录 1.用户参数组件介绍 2.用户参数界面介绍 3.使用"用户参数"组件实现参数化 (1)测试计划内包含的元件 (2)线程组元件内容 (3)HTTP请求组件内容 (4)用户参数组 ...

  5. 『动善时』JMeter基础 — 6、使用JMeter发送一个最基础的请求

    目录 步骤1:创建一个测试计划 步骤2:创建线程组 步骤3:创建取样器 步骤4:创建监听器 步骤5:完善信息 步骤6:保存测试计划 步骤7:查看结果 总结:JMeter测试计划要素 当我们第一次打开J ...

  6. 『动善时』JMeter基础 — 20、JMeter配置元件【HTTP Cookie管理器】详细介绍

    目录 1.HTTP Cookie管理器介绍 2.HTTP Cookie管理器界面详解 3.JMeter中对Cookie的管理 (1)Cookie的存储 (2)Cookie的管理策略 4.补充:Cook ...

  7. 『动善时』JMeter基础 — 37、将JMeter测试结果写入Excel

    目录 1.环境准备 (1)引入操作Excel文件的基础JAR包 (2)引入封装自定义操作Excel文件的JAR包 2.准备测试需要的数据 3.测试结果写入Excel演示 (1)测试计划内包含的元件 ( ...

  8. 『动善时』JMeter基础 — 41、使用JMeter连接数据库(MySQL)

    目录 1.为什么要使用JMeter连接数据库 2.JMeter连接数据库的前提 3.JDBC连接配置组件界面介绍 4.JMeter连接数据库演示 (1)测试计划内包含的元件 (2)测试计划中添加链接数 ...

  9. 『动善时』JMeter基础 — 44、JMeter对数据库的更新操作

    目录 1.执行一条insert语句 2.insert语句实现参数化 3.一次执行多条insert语句 4.使用Beanshell生成加密数据示例 (1)测试计划内包含的元件 (2)JDBC连接配置组件 ...

随机推荐

  1. C++并发与多线程学习笔记--atomic

    std::atomic std::async std::atomic 一般atomic原子操作,针对++,--,+=,^=是支持的,其他结果可能不支持. 注意 std::atomic<int&g ...

  2. java面试一日一题:讲对mysql的MVCC的理解

    问题:请讲下对mysql中MVCC的理解 分析:这个问题要回答的是对MVCC的理解,以及MVCC解决了什么问题这几个方面入手. 回答要点: 主要从以下几点去考虑, 1.什么是MVCC? 2.MVCC用 ...

  3. 安装mmdetection,运行报错Segmentation fault

    具体安装过程详见https://github.com/open-mmlab/mmdetection/blob/master/docs/INSTALL.md 在安装完成mmdetection后运行tes ...

  4. 一文简述Java IO

    Java IO 本文记录了在学习Java IO过程中的知识点,用于复习和快速查阅,不够详细的部分可能会在后续补充. 什么是流 流:内存与存储设备(外存)之间传输数据的通道 IO:输入流输出流(如rea ...

  5. 14. VUE 子组件修改父组件的值

    在 Vue 当中,父组件 -> 子组件 传值,都是通过属性的形式传递的. 子组件 修改 传递数据 直接操作父组件传递过来的值,用是可以用的,但是打开控制台后,会发现 Vue 有个警告:你不要直接 ...

  6. Day16_98_IO_一边读一边写

    一边读一边写 import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutp ...

  7. python 闭包函数与装饰器

    1.什么是闭包函数 (1):什么是闭包函数: #内部函数包含对外部作用域而非全局作用域的引用, 简而言之, 闭包的特点就是内部函数引用了外部函数中的变量. 在Python中,支持将函数当做对象使用,也 ...

  8. gitlab支持https最简单方法

    gitlab支持https方法 使用gitlab内部nginx直接支持https 通过外部nginx代理(本次使用的方法) 访问流程外部nginx--->gitlab的gitlab_workho ...

  9. BLE广播信道空中包详解

    广播信道空中包 在学习BLE的过程中,对于广播信道的空中包有许多混淆的地方,包括各个空中包的用途,帧格式等.现在想把他们做一个总结和归纳. BLE广播信道中的空中包分为有以下几种: 可连接非定向广播 ...

  10. OO第一单元总结——求导

    一.基于度量分析程序结构 (一)第一次作业 (1)设计思路 本次作业只涉及到简单幂函数通过加减运算而复合而成的函数,因此笔者自然的把函数分成了函数本体以及单个的项两个部分,在笔者的设计中两个类的功能如 ...