[性能测试]

Jmeter实验案例

样例1

  • 一个线程组,添加http请求
    • 线程数为2,循环3,查看结果
    • 线程数为2,循环2,查看结果
  • 分析:
    • 线程数代表虚拟用户数,用户数越多,负载越大
    • 循环次数代表运行时间,次数越多,运行时间越长

GET POST传递参数

  • GET请求:URL路径为http://www.baidu.com/S?wd=test
    • 要求:使用http请求-路径来传递get请求参数

路径
路径结果

  • 样例3
  • GET请求:URL路径为https://www.baidu.com/S?wd=test
    • 要求:使用http请求-参数列表来传递get请求参数

在这里插入图片描述
在这里插入图片描述

  • 样例4
  • POST请求:URL路径为https://www.baidu.com/S,请求体为wd=test(form表单)
    • 要求:使用http请求-参数列表来传递post请求的form格式参数

在这里插入图片描述
在这里插入图片描述

  • 样例5
  • POST请求:URL路径为http://www.baidu.com/S,请求体为wd=test(form表单)
    • 要求:使用http请求-消息体来传递post请求的form格式参数

在这里插入图片描述

  • 如何配置发送http请求
    • 发送get请求(请求参数在路径中)
      • url:协议 服务器ip等
      • 参数:路径后面添加参数,格式:?键名=键值&键名=键值
    • 发送post请求(请求参数在消息体中)
      • 参数:在消息体中添加请求体post(json/form),参数列表中添加参数(form)

参数化样例----不同测试用例调用相同测试方法

  1. 用户定义变量:定义全局变量,但每次取值(无论是否相同用户)都是固定值
  2. 用户参数:保证不同用户针对同一组参数,取到不同的值,但用一用户多次循环时,会取到相同的值
  3. csv数据文件设置:不同用户及同一用户多次循环,可以取到不同的值,但需要手动进行测试数据的设置
  4. 保证不同用户多次循环时可以取到不同的值,不需要提前设置
  • 定义变量实现----全局变量
    1. https://www.baidu.com:443
    2. 使用用户定义的变量配置被测系统的协议域名和端口号

在这里插入图片描述
在这里插入图片描述

  • 用户参数----为每个用户分配不同的参数值
    • http://www.baidu.com
    • 第一个用户请求附带参数:name=“张三”&age=28;第二个用户请求附带参数:name=“李四”&age=30

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.什么时候使用用户参数?
针对用一组参数,不同用户来访问时,获取不同的值
2.使用用户参数步骤
	1>添加线程组,设置线程数为n(表示模拟的用户数)
	2>添加用户参数,每一列添加多个变量名,每一列为一组用户的数据
	3>添加http请求,引用定义的变量名,格式${变量名}
	4>添加查看结果树
  • CSV数据文件设置----文件方式参数化

在这里插入图片描述
在这里插入图片描述

1.何时使用csv数据文件设置
不同用户或者同一个用户多次循环,获取不同的值
2.使用csv数据文件设置,进行参数化的步骤
	1> 添加csv文件
	2> 添加线程组,读取csv数据(注意格式),第一行没名不用忽略
	3> 添加csv数据文件设置
  • 函数----随机数据
    • http://www.baidu.com/S?num=1
    • 要求:每个用户每次执行脚本都可以使用不同的值

在这里插入图片描述
在这里插入图片描述

Jmeter关联

  • 正则表达式提取器(对任意格式进行提取)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • Xpath提取器

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
取到的值
在这里插入图片描述

1> 何时用XPATH提取器?
	针对html响应格式数据时
2>步骤:
	添加线性组-添加http请求-itcast
	添加XPATH提取器(勾选use tidy),XPATH Query用于提取值得XPATH,//代替
	添加http请求百度
  • JSON提取器

在这里插入图片描述
这个例子实在是写不正确怎么回事,不写了

1> 什么时候用XPATH提取器?
	针对json提取器进行提取
2> 具体操作步骤?
	添加线程组-添加http请求-添加json提取器-参数名路径写对~-添加查看结果树

jmeter属性—跨线程组使用

1.添加线程组1
2.添加HTTP请求
3.添加json提取器
4.添加beanshell取样器(将json提取器提取的值保存为jmeter属性)

在这里插入图片描述
在这里插入图片描述
读取
在这里插入图片描述
在这里插入图片描述

逻辑控制器

  • (if)控制器
1.使用用户定义的变量,定义一个name,name的值可以是baidu或itcast
2.根据name变量值实现对应网站的访问
`````````````````步骤`````````````````
1.添加线程组
2.用户定义的变量
3.添加if控制器,判断name是否等于baidu
4.添加http请求,访问百度
5.添加if控制器,判断name是等于itcast
6.添加http请求访问itcast,查看结果树

注:取消勾选interpret,使用多个name要修改用户定义的变量
在这里插入图片描述
在这里插入图片描述

使用函数解析,勾选interpret
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值