Jmeter接口测试从0到1打通,从安装到接口测试实例(超细整理)

news2024/11/26 15:41:10

目录:导读

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


前言

1、Jmeter简介

Jmeter是由Apache公司开发的java开源项目,所以想要使用它必须基于java环境才可以;
Jmeter采用多线程,允许通过多个线程并发取样或通过独立的线程对不同的功能同时取样。

2、Jmeter安装

首先需要安装jdk(最好是最新版的);
其次去官网下载最新的jmeter版本;
然后配置jmeter的环境变量;
最后双击jmeter.bat或者在“命令提示符”输入jmeter,运行jmeter。
具体安装步骤请自行网上查看

3、设置Jmeter的中文界面

进入jmeter的bin目录,找到“jmeter.properties”文件,打开文件搜索“language”,将“#language=en”改为“language=zh_CN”,保存之后再打开jmeter就永久变为中文环境了。

4、Jmeter主要元件

测试计划:是使用 JMeter 进行测试的起点,它是其它 JMeter测试元件的容器
线程组:代表一定数量的用户,它可以用来模拟用户并发发送请求。实际的请求内容在Sampler中定义,它被线程组包含。

配置元件:维护Sampler需要的配置信息,并根据实际的需要修改请求的内容。
前置处理器:负责在请求之前工作,常用来修改请求的设置
定时器:负责定义请求之间的延迟间隔。

取样器(Sampler):是性能测试中向服务器发送请求,记录响应信息、响应时间的最小单元,如:HTTP Request Sampler、FTP Request Sample、TCP Request Sample、JDBC Request Sampler等,每一种不同类型的sampler 可以根据设置的参数向服务器发出不同类型的请求。

后置处理器:负责在请求之后工作,常用获取返回的值。
断言:用来判断请求响应的结果是否如用户所期望的。
监听器:负责收集测试结果,同时确定结果显示的方式。

逻辑控制器:可以自定义JMeter发送请求的行为逻辑,它与Sampler结合使用可以模拟复杂的请求序列。

5、Jmeter元件的作用域和执行顺序

元件作用域:
配置元件:影响其作用范围内的所有元件。
前置处理器:在其作用范围内的每一个sampler元件之前执行。
定时器:在其作用范围内的每一个sampler有效
后置处理器:在其作用范围内的每一个sampler元件之后执行。
断言:在其作用范围内的对每一个sampler元件执行后的结果进行校验。
监听器:在其作用范围内对每一个sampler元件的信息收集并呈现。
总结:从各个元件的层次结构判断每个元件的作用域。

元件执行顺序:
配置元件->前置处理器->定时器->取样器->后置处理程序->断言->监听器

6、Jmeter接口测试流程步骤

①测试计划—打开Jmeter,在菜单左侧出现 “测试计划”

31

②线程组—鼠标单击“测试计划”

32

33

线程数:即虚拟用户数。设置多少个线程数也就是设置多少虚拟用户数

Ramp-Up时间(秒):设置虚拟用户数全部启动的时长。如果线程数为20,准备时长为10秒,那么需要10秒钟启动20个线程。也就是平均每秒启动2个线程。

循环次数:每个线程发送请求的个数。如果线程数为20,循环次数为10,那么每个线程发送10次请求。总请求数为20*10=200。如果勾选了“永远”, 那么所有线程会一直发送请求,直到手动点击工具栏上的停止按钮,或者设置的线程时间结束。

③HTTP请求—鼠标右键单击“线程组”

34

35

HTTP请求的名称:本属性用于标识一个取样器,建议使用一个有意义的名称。

注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。
服务器名称或IP :HTTP请求发送的目标服务器名称或IP地址。
端口号:目标服务器的端口号,默认值是80。
协议:向目标服务器发送HTTP请求时的协议,可以是HTTP或者是HTTPS ,默认值为http 。

方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、TRACE、OPTIONS、DELETE等。
路径:目标URL路径(不包括服务器地址和端口)
内容编码:内容的编码方式,常用UTF-8。

自动重定向:如果选中该选项,当发送HTTP请求后得到的响应是302/301时,JMeter 自动重定向到新的页面。
对Post使用multipart/from-data:当发送POST 请求时,使用multipart/from-data方法发送,默认不选中。

同请求一起发送参数 : 在请求中发送URL参数,对于带参数的URL ,jmeter提供了一个简单的对参数化的方法。用户可以将URL中所有参数设置在本表中,表中的每一行是一个参数值对(对应RUL中的 名称1=值1)。

④添加断言—响应断言

36

⑤添加监听器—察看结果树、聚合报告

37

38

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

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有坚持不懈的努力,才能让未来的自己感到骄傲。无论遇到多少困难和挑战,都要勇往直前,因为奋斗是实现梦想的唯一途径。相信自己,努力拼搏,成功将属于你!

永远保持热情,不断追求进步;坚定信念,勇往直前;困难只是暂时的挑战,成功必将属于拼搏者。与其后悔昨天,不如努力奋斗今天,创造明天!

只有拼尽全力,才能超越自我;只有奋斗不止,才能追寻梦想的光芒;只有坚守初心,才能绽放成功的花朵。加油,你一定可以实现你的目标!

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

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

相关文章

安装adobe系列产品,提示错误代码81解决办法

安装adobe系列软件,如Photoshop、Premiere Pro、Illustrator等时,出现如下图提示错误代码81,如何解决呢?一起来看看。 解决方法一 (重启电脑等待5分钟再安装!) 解决方法二 应用程序中打开Adobe Creative Cloud 点击…

分布式文件系统与HDFS的shell操作及查看元数据

启动hadoop和hive的metastore查看sbin的目录下的文件 执行./start-all.sh 查看相关的进程

node.js重装问题

目录 问题一: 问题二: node.js安装分享: node.js重装参考: 问题一: 使用(npm install express -g)报错: config global --global -local are deprecated. Use --locationglobal …

【软件测试】Window与Linux系统下-初始化Git环境(详细)

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

python开发ESP32之环境配置(一)

1、开发编辑器 Thonny 2、串口驱动安装 通过type-c线将芯片链接电脑, 右击我的点电脑——管理——设备管理器,查看驱动安装是否正常。 异常情况下需要安装驱动(CP2102USBQD),根据个人电脑配置选择相应的驱动程序 安装失败的话&…

AcWing1536. 均分纸牌 AcWing122. 糖果传递—数学推导、贪心

均分纸牌 && 糖果传递 均分纸牌糖果传递 均分纸牌 题目链接 AcWing1536. 均分纸牌 问题描述 分析 这道题有个特殊的地方就是A1只能从A2获取纸牌,或者A1只能将多余的纸牌给A2,此操作后A1的纸牌数应该为avg。 A2的纸牌只能从A3获取,…

PS VR2头显有望将与PC兼容,并实现破解6DOF跟踪功能

Sony在今年早些时候推出了专门为PlayStation 5打造的高级虚拟现实头显PS VR2,这款头显赢得了行业的赞誉,为用户提供了独特的体验。 然而,由于其高达599美元(约合4283元人民币)的售价(相比于售价为399美元的…

MySQL学生表和分数表的多表查询

目录 一、创建学生表 二、创建分数表 1.查询student表的所有记录 2.查询student表的第2条到4条记录 3.从student表查询所有学生的学号(id)、姓名(name)和院系(department)的信息 4.从student表中查询计…

【Hello mysql】 mysql的索引

Mysql专栏:Mysql 本篇博客简介:介绍mysql的索引 mysql索引 索引索引是什么索引的分类索引作用查看 磁盘mysql的工作过程认识磁盘定位扇区磁盘随机访问(Random Access)与连续访问(Sequential Access)mysql和磁盘交互的基本单位 索引的理解建立测试表为何I…

Python(十四)数据类型——浮点型

❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

Redis(分布式缓存详解)

Redis 一、Redis简介1.1. 适用场景1.2. 常用数据类型1.3. 单点Redis缺陷 二、持久化机制(解决数据丢失)2.1. RDB2.1.1. RDB优缺点 2.2. AOF2.2.1. AOF配置2.2.2. AOF优缺点 三、Redis集群3.1. 主从(解决并发读)3.1.1. 主从数据同步…

HBase v2.2 高可用多节点搭建

最近刚刚完成了HBase相关的一个项目,作为项目的技术负责人,完成了大部分的项目部署,特性调研工作,以此系列文章作为上一阶段工作的总结. 前言 其实目前就大多数做应用的情况来讲,我们并不需要去自己搭建一套HBase的集群,现有的很多云厂商提供的服务已经极大的方便日常的应用使…

GEE:计算每个对象的面积、标准差、周长、宽度、高度

作者:CSDN @ _养乐多_ 本文记录了面对对对象分割,以及计算每个对象的面积、标准差、周长、宽度、高度的代码。 文章目录 一、代码一、代码 // 设置种子 var seeds = ee.Algorithms.Image.Segmentation.seedGrid(20)

node.js 第一天

目录 使用readFile()方法读取文件内容 判断文件是否读取成功 判断文件是否写入成功 案例 考试成绩整理 path path.join() path.basename() 使用readFile()方法读取文件内容 // 1. 导入 fs 模块,来操作文件 const fs require(fs)// 2.…

Redis(二)网络协议和异步方式(乐观锁悲观锁)

Redis系列文章 Redis(一)原理及基本命令(柔性数组) Redis(二)网络协议和异步方式(乐观锁&悲观锁) Redis(三)存储原理与数据模型(hash冲突、渐…

2023年NOC决赛-加码未来编程赛项决赛模拟题-Python模拟题--卷2

第一题: 题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。 第二题: 题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10…

mysql invalid conn排查

mysql invalid conn排查 问题背景 服务使用golang ,客户端库是go-mysql-driver ,系统测试环境频繁但是不总是报出invalid conn 错误,但实际拿sql执行时却是正常执行。 排查思路 原因分析 客户端使用了无效连接 由于连接无效,首先考虑客…

AI绘画StableDiffusion实操教程:冰霜旗袍美女

飞书原文链接,获取更多资源:AI绘画StableDiffusion实操教程:冰霜旗袍美女 前几天分享了StableDiffusion的入门到精通教程:AI绘画:Stable Diffusion 终极炼丹宝典:从入门到精通 但是还有人就问&#xff1a…

数学专题训练1 概率dp

数学专题训练1 1. RollingDiceDivOne 有 n n n​ 个骰子,第 i i i​ 个骰子拥有 d i c e [ i ] dice[i] dice[i] 面,每面包含 1 , 2 , . . . , d i c e [ i ] 1,2,...,dice[i] 1,2,...,dice[i] 的点数。同时掷这 n n n 个骰子,问掷出来…

JavaWeb——类的加载过程

目录 一、类加载的过程 1、加载 2、连接 (1)、验证 (2)、准备 (3)、解析 3、初始化 二、类加载的触发 三、双亲委派模型 1、定义 2、过程 3、优点 (1)、避免重复加载类 …