| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> 【jmeter教程——从入门到熟练】 -> 正文阅读 |
|
[开发测试]【jmeter教程——从入门到熟练】 |
安装与配置一:下载jdk——配置jdk环境变量1.新建环境变量变量名:JAVA_HOME变量值:(即JDK的安装路径) 2.编辑Path%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 3.新建环境变量变量名:CLASSPATH变量值: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar 4.验证在cmd窗口中输入java 二:下载JMeter——配置环境变量(下载地址:Apache JMeter - Download Apache JMeter) 1.下载后无需安装,解压后即可使用。解压后目录如下 2.环境配置
%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-2.0.jar;
设置成中文方法一: 方法二:永久设置成中文 找到jmeter下的bin目录,打开jmeter.properties 文件 第三十七行修改为 language=zh_CN 去掉前面的# jmeter——接口测试一.线程组——选择测试计划,右键-->添加-->线程-->线程组线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。 准备时长:设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20个线程。也就是每秒钟启动2个线程。 循环次数:每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。 二.HTTP请求——选择线程组:右键-->添加-->取样器-->HTTP请求请求名称,可不改 Web服务器信息,网络协议、域名或IP、端口号,可自行修改 接口请求:请求方法、请求路径、编码格式,可自行修改 参数传递:消息体数据存储JSON信息 三.HTTP信息头管理器——选择线程组:右键-->添加-->配置元件-->HTTP信息头管理器作用:可以存储请求头里面的信息 四.查看结果——选择线程组:右键-->添加-->监听器-->查看结果树1.开始测试 接口调用成功,通过修改http请求来验证返回值是否符合预期! jmeter——Http请求默认值选择测试计划:右键-->添加-->配置元件-->HTTP请求默认值 一个线程下可以同时存在多个http请求,可以把公共参数,提取到HTTP请求默认值组件中 然后在每个http请求的元件中,编辑自己独有的信息即可。 注:加了http请求默认值之后,在单个http请求里面还填写了同样的数据,那么以哪个为准就近原则——就近原则! jmeter——Http cookie管理器1.添加HTTP cookie管理器之前:有报错,缺少cookies 2.选择测试计划:右键-->添加-->配置元件-->HTTP cookie管理器 3.添加HTTP cookie管理器之后再次测试,不报错。 作用描述:HTTP Cookie管理器可以像浏览器一样存储和发送cookie,如果你要发送一个带cookie的http请求,cookie manager会自动存储该请求的cookies,并且后面如果发送同源站点的http请求时,都可以用这个cookies。 jmeter——接口与线程之间的传参以查询全部课程接口为例,希望提取课程id 一.添加json提取器:右键http请求-》添加-》后置处理器-》json提取器JSON提取公式:$..字段名 查看提取结果——调试取样器:course_id=63 提取全部id如下: 二.引用提取出来的参数1.同一线程下引用:${引用名}2.跨线程引用:后置处理程序直接把进入课程详情接口拉到另一个线程下,课程id没有成功被引用 跨线程需要把提取出来的值设置为全局变量: 右键http请求-》添加-》后置处理器-》后置处理程序 在BeanShell后置处理器中使用__setProperty()函数把courses_id设置为全局变量 ${__setProperty(新值,${提取值},)}; 设置全局变量成功,再次引用查看效果 跨线程引用方法:${__property(变量名)} 跨线程调用成功! 报错是因为没有cookies,下面解决no cookies问题 三.跨线程调用cookies1.找到需要提取的内容 2.添加正则表达式提取器:右键http请求-》添加-》后置处理器-》json提取器 3.查看提取结果——调试取样器 4.成功提取!同样,跨线程需要把提取出来的值设置为全局变量: 右键http请求-》添加-》后置处理器-》后置处理程序 ${__setProperty(nlqtoken,${lqtoken},)}; 5.在第二个线程下添加信息头管理器 6.跨线程引用函数:lqtoken=${__property(nlqtoken)} 7.开始测试 跨线程cookies调用成功! jmeter——参数化一.CSV Data Set Config方式1.新建CSV格式文件 ? 2.CSV——选择测试计划,右键-->添加-->元件-->CSV data Sat config 3.使用参数化变量:${变量名} 4.开始测试 三个登录接口分别使用了不同的账号密码 |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年4日历 | -2025/4/8 9:24:08- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
|