Jmeter 实践基础-断言及变量


Jmeter 脚本编写一般分五个步骤:

1. 添加线程组

2. 添加 http 请求

3. 在 http 请求中写入接入 url、路径、请求方式和参数

4. 添加查看结果树

5. 调用接口、查看返回值


HTTP 请求默认值

当Web 服务器中的 协议 和 服务器名称或 IP 这两个值都是一样的情况下,使用HTTP 请求默认值来管理这些公共的配置数据

添加步骤:线程组——添加——配置元件——HTTP 请求默认值 然后进行如下配置,并把该元件放置到请求前面







断言设置

设置步骤:选中一个请求,如 http-get ,然后右键选择:添加——断言—响应断言。

各个匹配模式含义如下:

• 包括:响应内容包括需要匹配的内容即代表响应成功,支持正则表达式

• 匹配:响应内容要完全匹配需要匹配的内容即代表响应成功,大小写不敏感,支持正则表达式。

• Equals:响应内容要完全等于需要匹配的内容才代表成功,大小写敏感,需要匹配的内容是字符串正则表

达式

• Substring:返回结果包含指定结果的字串,但是 subString 不支持正则字符串

• 否:不进行匹配






参数设置

Jmeter 支持通过 Query String Parameters 或者 Request body 请求体来传递参数

get 方式:




post方式:

在 Post 请求中参数一般在 body 中传递,Jmeter 也支持在 body 中传递参数。如传递 Json 格式的参数,在 Body

Data 编辑框输入如下参数:

{"username":"wx"}


另外还需要指定参数的格式,因此需要添加 HTTP 信息头管理器

添加步骤:选定请求——添加——配置元件——HTTP 信息头管理器,然后在管理器里面添加参数类型


结果:




变量

在请求过程中,有时我们需要在请求中设置一些变量来测试不同的场景。

Jmeter 支持以下类型变量:

• 用户自定义变量

• 函数生成变量

• BeanShell 变量

• 数据文件变量

用户自定义变量

设置步骤: 选中请求——添加——前置处理器——用户参数 设置变量名称为 user ,值为123





函数生成变量

Jmeter 有许多内置的函数,可以生成随机数。创建步骤:点击菜单栏选项——函数助手对话框——下拉选择

__Random() 函数 函数配置如下:



BeanShell 变量

Jmeter 有哪些 Bean Shell?

• 定时器: BeanShell Timer

• 前置处理器:BeanShell PreProcessor

• 采样器: BeanShell Sampler

• 后置处理器:BeanShell PostProcessor

• 断言: BeanShell 断言

• 监听器: BeanShell Listener

方法如下:

它是测试用例与 BeanShell 交互的桥梁,常用方法:

// 定义 jmeter 变量

vars.put(String key,String value);

// 从 jmeter 中获取变量

vars.get(String key);

log :写入信息到 jmeber.log 文件,使用方法:

log.info(“hello 51zxw!”);

BeanShell 实践案例

1.创建请求名为 beanshell_test 的 Http 请求,请求地址为: http://httpbin.org/get 同时设置传递的参数为

beanshell_user


2.创建 BeanShell PreProcessor 变量设置如下所示:



CSV 数据文件变量

CSV 数据文件变量是指从外部 csv 文件读取数据出来作为变量。

设置步骤: 选择请求——添加——配置元件——CSV 数据文件设置

创建 csv 文件(最好不用用记事本创建,推荐用 Nodepad++)文件编码为 UTF-8 文件内容如下:

user_data.csv

51zxw,8888

CSV 数据文件设置如下:


在 Post 请求中引用变量数据如下:



CSV 参数化


CSV 数据文件设置如下:

修改线程组的线程数量,因为数据中有 4 组数据,所以设置为 4.


你可能感兴趣的:(Jmeter 实践基础-断言及变量)