当前位置: 首页 > news >正文

Jmeter接口测试企业级项目实战day1

1.接口测试
接口测试工具:
JMeter:支持多种接口类型,还能测试性能,开源,开源进行二次扩展。
Postman:简单,方便,局限性比较大,适合开发临时行调试
APIFox等:新工具,市场占有小,适合小团队尝鲜

接口的类型:
Restful:HTTP传输JSON
WebService:HTTP传输XML
RPC:TCP传输二进制
 

2.JMeter环境搭建

安装步骤:
1.解压/运行
2.解压,记录位置
3.解压,记录位置
4.解压,记录位置
5.解压

把记录的位置添加到环境变量Path的后面

启动JMeter:
1.执行命令:jmeter(cmd中)
2.打开文件:在bin文件下中,双击jmeter.bat

了解JMeter的目录

1.备份目录backups
2.二进制目录bin:软件的主体和软件的配置文件
3.内部API文档目录docs
4.配合外部工具的目录extras
5.依赖库目录lib
6.开源许可证目录licenses
7.可打印文档,使用说明文档目录printable_docs

3.Jmeter结构体系
基本功能:
创建,编辑,保存:测试脚本
修改:测试元件
执行:测试脚本
查看:帮助信息

测试原件:
1.核心元件:
        1)测试计划:容器
        2)线程组:干活的人(可以限制线程数量:性能测试,压力测试)
        3)取样器:要干的活,在线程组里
2.辅助元件
        辅助元件是对取样器的辅助
        1)逻辑控制器:对取样器进行逻辑控制:判断,循环等
        2)定时器:让取样器延迟一定时间后再执行
        3)监听器:记录和展示取样器的执行结果
        4)断言:判断取样器的执行结果
        5)配置元件:配置,修改取样器的内容
        6)前置处理器:取样器执行之前自动执行
        7)后置处理器:取样器执行之后自动执行

元件的加载顺序
1.加载配置元件
2.加载线程组
3.加载取样器
4.为取样器加载辅助元件
        1)加载取样器的父级组件
        2)同级组件
        3)子组件
        4)不会收集 旁系子组件

4.Jmeter接口实战
两种风格:
1.分别的处理每一个接口,然后再整理接口和接口的关系
2.全面分析项目需求和特点,然后按需配置辅助元件,便于后期维护

1.熟悉文档
请求:
        请求方法:GET,POST,HEAD,PUT,OPTTONS
        接口地址
        鉴权要求
        请求参数
响应:
        状态码
        响应头
        响应内容

2.对接接口
根据接口文档要求,请求接口
如果某一个接口依赖另一个接口,那么必须先对其前置接口
这样两个接口之间的关系:依赖

OAth2.0 Token怎么使用
1.添加请求头:Authorization
2.请求头的内容:类型+空格+Token
        类型:Bearer
变量提取
1)从响应中提取内容,并保存为变量
2)便于其他接口或元件使用
3)提取器:
        边界:简单提取1个数据
        正则:复杂的提取N个数据
        JSON:JSON接口专用

相关文章:

Jmeter接口测试企业级项目实战day1

1.接口测试 接口测试工具: JMeter:支持多种接口类型,还能测试性能,开源,开源进行二次扩展。 Postman:简单,方便,局限性比较大,适合开发临时行调试 APIFox等:新…...

接口测试面试题含答案

1、解释一下正向和逆向测试。 正向测试:针对接口设计预期的功能和行为,验证接口是否按照预期工作。 逆向测试:针对错误输入、不合理的条件或非预期的使用方式,验证接口是否能够适当地处理这些情况并提供合理的错误处理。 2、什…...

横板营业执照提取生成

前言 有一段时间没发博客了&#xff0c;今天分享下几个月前做的营业执照提取器UI 预览图 框架 b-ui很好用&#xff0c;这个前端框架作者 发布的插件我都会用&#xff0c;鱿鱼助手也是基于这个框架开发的 代码 html <template><view><template><view…...

webm格式怎么转换成mp4?这5种转换方法很好用

现如今&#xff0c;视频格式繁多&#xff0c;而webm作为一种由谷歌开发的视频格式&#xff0c;以其高画质和低带宽需求著称。然而&#xff0c;并非所有设备和播放器都完美支持webm格式&#xff0c;这时将其转换为兼容性更强的MP4格式就显得尤为重要。下面给大家分享5种非常简单…...

C/C++语言基础--C++异常看这一篇就够了

本专栏目的 更新C/C的基础语法&#xff0c;包括C的一些新特性 前言 通过前面几节课&#xff0c;我们学习了抽象、封装、继承、多态等相关的概念&#xff0c;接下来我们将讲解异常&#xff0c;异常是专门处理错误的&#xff1b;这一次加了不少图标&#xff0c;希望大家喜欢;C语…...

DFT ATPG中常见影响coverage的因素有哪些?

# DFT ATPG中常见影响Coverage的因素 ## 一、电路结构复杂性 1. **逻辑层次深度** - **原理** - 当电路的逻辑层次很深时,信号在传播过程中会经过多个逻辑门的处理。这使得测试向量难以准确地控制和观察内部节点的状态。例如,在一个具有多层嵌套逻辑的电路中,如一个…...

Python机器学习数据清洗到特征工程策略

Python机器学习数据清洗到特征工程策略 目录 ✨ 数据清洗&#xff1a;处理缺失值与异常值的策略&#x1f504; 特征选择&#xff1a;筛选与数据目标高度相关的特征&#x1f6e0; 特征工程&#xff1a;数据转换与生成新特征的多样化方法&#x1f4ca; 类别型变量的数值化&…...

多线程-进阶(2)CountDownLatchConcurrentHashMapSemaphore

目的; JUC(java.util.concurrent) 的常⻅类 接着上一节课到 1.信号量 Semaphore 信号量, ⽤来表⽰ "可⽤资源的个数". 本质上就是⼀个计数器。 理解信号量 可以把信号量想象成是停⻋场的展⽰牌: 当前有⻋位 100 个. 表⽰有 100 个可⽤资源. 当有⻋开进去的时候,…...

密码管理器KeePass的安装及使用

文章目录 软件下载安装汉化新建数据库创建\移动\修改 群组添加/修改/删除/移动 记录展示、搜索、锁定单独使用keepass生成密码的功能AES-256的密钥长度为256位&#xff0c;为啥可以设置超过32个字符的密钥&#xff1f; 软件下载 安装 分别解压&#xff1a;KeePass-2.53.1.zip&…...

星海智算:【萤火遛AI-Stable-Diffusion】无需部署一键启动

部署流程 1、注册算力云平台&#xff1a;星海智算 https://gpu.spacehpc.com/ 2、创建实例&#xff0c;镜像请依次点击&#xff1a;“镜像市场”->“更换”->“AI绘画”->“萤火遛AI-Stable Diffusion”。 程序首次启动可能需要几分钟&#xff0c;待实例显示“运行…...

JS生成器的特殊用法:委托yield*

yield 的基本用法 yield 用于在生成器函数中暂停函数执行&#xff0c;并返回一个值给外部调用者。当生成器再次被调用时&#xff0c;会从暂停的地方继续执行。 示例&#xff1a; function* simpleGenerator() {yield 1;yield 2;yield 3; }const gen simpleGenerator();cons…...

【CuPy报错】NVRTC_ERROR_COMPILATION (6)找不到 ‘vector_types.h‘

cupy安装不要再使用pip install cupy了&#xff0c; 已经替换成基于版本安装了pip install cupy-cuda12x&#xff0c;详见cupy官网。 安装完成后&#xff0c;在import cupy之后报错&#xff0c;找不到 ‘vector_types.h’: CompileException: /home/zoe/venv/lib/python3.10/…...

机器学习:知识蒸馏(Knowledge Distillation,KD)

知识蒸馏&#xff08;Knowledge Distillation&#xff0c;KD&#xff09;作为深度学习领域中的一种模型压缩技术&#xff0c;主要用于将大规模、复杂的神经网络模型&#xff08;即教师模型&#xff09;压缩为较小的、轻量化的模型&#xff08;即学生模型&#xff09;。在实际应…...

【C++入门篇 - 3】:从C到C++第二篇

文章目录 从C到C第二篇new和delete命名空间命名空间的访问 cin和coutstring的基本使用 从C到C第二篇 new和delete 在C中用来向系统申请堆区的内存空间 New的作用相当于C语言中的malloc Delete的作用相当于C语言中的free 注意&#xff1a;在C语言中&#xff0c;如果内存不够…...

YOLOv8模型改进 第七讲 一种新颖的注意力机制 Outlook Attention

随着目标检测技术的不断发展&#xff0c;YOLOv8 作为最新一代的目标检测模型&#xff0c;已经在多个基准数据集上展现了其卓越的性能。然而&#xff0c;在复杂场景中&#xff0c;如何进一步提升模型的检测精度和鲁棒性依然是一个重要挑战。本文将探讨将 Outlook Attention 机制…...

C#多线程基本使用和探讨

线程是并发编程的基础概念之一。在现代应用程序中&#xff0c;我们通常需要执行多个任务并行处理&#xff0c;以提高性能。C# 提供了多种并发编程工具&#xff0c;如Thread、Task、异步编程和Parallel等。 Thread 类 Thread 类是最基本的线程实现方法。使用Thread类&#xff0…...

PHP DateTime基础用法

PHP DateTime 的用法详解 一、引言 在开发 PHP 应用程序时&#xff0c;处理日期和时间是一个至关重要的任务。PHP 提供了强大的日期和时间处理功能&#xff0c;其中 DateTime 类是最常用的工具之一。DateTime 类提供了丰富的方法来创建、格式化、计算和比较日期时间&#xff…...

一次Fegin CPU占用过高导致的事故

记录一下 一次应用事故分析、排查、处理 背景介绍 9号上午收到CPU告警&#xff0c;同时业务反馈依赖该服务的上游服务接口响应耗时太长 应用告警-CPU使用率 告警变更 【WARNING】项目XXX,集群qd-aliyun,分区bbbb-prod,应用customer,实例customer-6fb6448688-m47jz, POD实例CP…...

【Go初阶】两万字快速入门Go语言

初见golang语法 package mainimport "fmt"func main() {/* 简单的程序 万能的hello world */fmt.Println("Hello Go")} 第一行代码package main定义了包名。你必须在源文件中非注释的第一行指明这个文件属于哪个包&#xff0c;如&#xff1a;package main…...

【React】使用 react hooks 需要遵守的原则

1&#xff09;只能在顶层调用Hooks 这是指你不能在循环、条件语句或嵌套函数中调用Hooks。确保每次组件渲染时&#xff0c;Hooks的调用顺序保持一致。因此&#xff0c;你应该始终在React函数组件的最顶层调用Hooks。 React依赖于Hooks的调用顺序。如果这些调用在不同的渲染中顺…...

【Linux】shell脚本忽略错误继续执行

在 shell 脚本中&#xff0c;可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行&#xff0c;可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令&#xff0c;并忽略错误 rm somefile…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

学校招生小程序源码介绍

基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码&#xff0c;专为学校招生场景量身打造&#xff0c;功能实用且操作便捷。 从技术架构来看&#xff0c;ThinkPHP提供稳定可靠的后台服务&#xff0c;FastAdmin加速开发流程&#xff0c;UniApp则保障小程序在多端有良好的兼…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

Spring是如何解决Bean的循环依赖:三级缓存机制

1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间‌互相持有对方引用‌,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

计算机基础知识解析:从应用到架构的全面拆解

目录 前言 1、 计算机的应用领域&#xff1a;无处不在的数字助手 2、 计算机的进化史&#xff1a;从算盘到量子计算 3、计算机的分类&#xff1a;不止 “台式机和笔记本” 4、计算机的组件&#xff1a;硬件与软件的协同 4.1 硬件&#xff1a;五大核心部件 4.2 软件&#…...