IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> jmeter(2)--功能使用 -> 正文阅读

[开发测试]jmeter(2)--功能使用

-bin文件夹

存放启动文件

?

保存项目脚本文件

?

-docs文件夹

java二次开发,接口文档

?

-extras文件夹

持续集成脚本

-lib文件夹

源码包

第三方插件(负载测试)放在里面的ext文件夹里

junit文件夹-单元测试脚本

?

?不要直接从jmeter里引入库,否则可能会出现问题

可以把库放到lib或者第三方库放在lib/ext文件夹里

Jmeter功能

jmeter不是通过工具栏进行功能操作,而是通过右键测试计划进行操作

?

?

工具栏右侧

-脚本的运行时间

?日志面板里是工具本身的日志

线程数,并发用户数

脚本结构树--项目文件夹(根目录)

?

?编辑区-不同元件的编辑区不同

?

元件(主要组成:线程组,取样器,监听器)?

元件放在线程组目录下,就表示线程组目录下的子目录都能使用,如果放在线程组下某个接口目下,就表示只有那个接口能使用

线程组-性能场景设计

?

取样器-根据不同的协议编写脚本的元件

?

监听器-可以查看接口响应结果

jmeter使用过程-http协议?

先编写功能脚本,再设计性能场景

配置元件(优先级别最高)-添加请求头需要的元件

1,在线程组添加http信息头管理器

?信息头管理器放在线程组目录下表示该线程组所有请求都能使用,放在某个接口目录下,表示只有该目录能使用

2,在消息头管理器的编辑区编写请求头的信息

?

与postman和自动化requests库不一样,如果接口需要的请求参数是json格式的话,在jmeter的请求头中一定要手动配置content-type

如果不添加则是默认的请求格式x-www-form-urlencoded

3,编写脚本

?

4,请求参数

Get 请求

当参数有中文,或者有特殊符号的时候,要点编码

post请求

json格式的请求体要写入消息体数据中

?

4,查看结果树

?

?

?Cookie管理器

?放在线程组的最上方,能储存和发送cookie消息

数据参数化

-线程组添加用户自定义变量

?

?

设置之后,每次接口需要的数据都能通过自定义变量获取

用户定义变量,在启动运行时获取一次值,在运行过程中,不再动态获取值,不管并发多少人,不管执行几次

引用参数

-设置用户参数?

?

用户参数,在启动时会获取一次值,在运行过程中,每次使用该参数都会动态获取一次值

勾选每次迭代更新一次

每次迭代更新一次,表示每次执行完一次线程组里完成一次循环之后才动态获取一次值,就是每次执行完一次循环之前,这个变量只会获取一次值,直到开始第二次循环执行,比如2个用户(线程组)要循环5次,那么每循环一次就会获取一次参数

CSV数据文件设置

首先要准备好数据,可以存放在一个txt文件中,或者csv文件,从性能测试来说,最好用txt格式

?然后在线程组下添加csv数据文件的配置元件

设置变量名,中间用逗号隔开

分隔符要跟文件里的分隔符相同

?使用参数变量

?

?相对路径-保证jmx脚本文件跟csv数据文件实在同一个目录

?那么就可以在配置中写相对路径

?

遇到结束符停止循环

?

?

表示在文件中最后一行之后,就是结束,但是如果有3个线程(并发用户),停止循环后会导致第三个用户获取不了数据,开启循环之后就表示第三个用户会获得第一组数据,如此类推

这里停止线程选项T或者F都可以进行所有线程获取到数据

遇到结束符停止线程

?

如果有10个线程(并发用户),在遇到文件结束符之后停止线程,那么最后得到响应的就只有2个线程

这里停止线程选项要选择T才能实现效果,如果停止线程也选F的话,就表示之后的进程都获取不到数据

获取响应结果的数据

json获取器

在所需获取数据的接口处右键选取后置处理器,选择json获取器

?定义变量,输入jsonpath表达式,之后就能定义好变量的值

?

然后需要输入变量值的地方填入变量名称${变量名}

?

?一个json提取器可以获取多个结果,需要用;号隔开,而且default values也要填入数据

?

?

Match No.

是指在获取json指定名称的值中,可能会有多个同名的值获取到,如果想要获取里面其中的一个,就要配置match no.

比如Match No.=1就是找到一个结果

?如果是多个的话,就会显示一个有规律的变量,比如有5个是这个名字的属性,那么就要把Match No.的属性设置为5

?

如果设置成-1,代表获取全部

如果需要取某个值,就可以用拼接函数,把num的值换成想要属性的值

正则表达式提取器

正则表达式选取左右边界,中间加上(.*?)表示获取边界之间的值

模板表示选取第一个()分组,如果表达式有多个分组就能写$1$ $2$

函数

-random随机数/随机字符串

?

?利用函数生成变量,然后可以填入用户参数中,每次迭代后进行一次随机生成

?

-digest 加密函数

?

-property 获取配置表里的属性

-threadGroupName/threadNum 线程组名称/线程数

?线程组数,从开始运行时候才会变化

?-time 时间戳

-V 拼接函数?

Name = 柠檬班 ?num = 1

两个变量合并 ${name}${num} = 柠檬班1

使用V函数拼接

${__V(${name}_${num})}

就等于一个新的变量,它的变量名称就变成name_num,里面的name和num是在运用函数的时候去定义

而name和num都可以动态去获取,还需要对这个新的变量赋值

比如vphone_1 = 1, vphone_2 = 2,之后使用函数就能动态获取这些变量

?默认值是线程数(根据线程组设置动态变化)

?关联函数要把逗号去掉

当线程数为3的时候,就会按顺序取关键字为函数参数的值(vphone)相关的值,这个变量是有一定的规律,比如**_1,**_2

?

?

?

用户参数VS拼接函数

用户参数:每次迭代的时候调用一次,可以使用随机函数,在每次迭代的时候生成一个随机数,比如2个用户(线程组)要循环5次,那么每循环一次就会获取一次参数,2个用户的话就是一共获取10次参数,可用于注册接口,同时模拟多个用户进行注册

拼接函数:多个线程组的时候使用,要先定义多个(跟线程组数相同),前缀相同(变量名相同),后缀有一定规律(1,2,3)的变量,比如3个用户(线程组)循环5次,那么第一个用户执行的5次循环中,这个参数都是**_1,而第二个用户执行的5次循环中,这个参数都是**_2可用于注册之外的接口,比如登录接口,可以同时模拟多个不同用户登录多次.或者充值接口,多个用户充值多次

再多的用户的时候,可以使用CSV数据文件,循环使用参数

jmeter代理录制脚本

1,在测试计划添加线程组

2,在测试计划添加代理服务器

?

3,代理服务器里选择目标控制器为新增加的线程组

?

?设置之后 录制的脚本都会生成在指定的线程组中

4,请求过滤器

?

?过滤不需要的信息

5,启动代理,手工设置电脑的代理服务

地址一定要是127.0.0.1

6,打开页面开始录制

?

禁用,删除css,js结尾的接口,删除域名不是指定项目的接口,删除重复接口

?

?

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-11-17 13:03:05  更:2021-11-17 13:03:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 4:50:39-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码