jmeter中有个元件叫做断言(Assertion),用于检查测试中得到的响应数据是否符合预期,用以保证性能测试过程中的数据交互与预期一致。
那我们使用它的目的是为了什么? 因为返回的结果是成功的,但是返回的是200,是服务器响应成功,并不代表里面的数据是正确的,我们使用它是为了看到我们请求是否真正的成功
使用:
给某个请求添加好断言
添加对应的断言结果监听器
怎么用?(我们这里用老黄历来举例)
1.线程组右键(获取http请求右键) - 断言 - 响应断言 (断言里面有很多断言方法,我暂时直说响应断言)
2.添加完后,把断言放在某个请求里,然后我们看看有响应断言整个模块哪些东西
Main sample and sub-samples - 主样器或子样器
Main sample only - 主样器
Sub-samples only - 子样器
Jmeter Variable Name to use - 要使用的变量名
一般我们是默认Main sample only
要测试的响应字段 - 一般用最多的是:响应文本、响应头(Response headers)、请求头(request header)
模式匹配规则 (字面上理解就好了)
说了这么多我们要怎么做?
举例:
1.点击添加,然后输入想对比的数据
2.添加断言结果(线程组右键 - 监听器 - 断言结果),这是用来干嘛?这是用来看断言是否正确。
运行一下:
没有报错,察看结果树也没报错,证明断言是成功的
3.那我们怎么使它报错?我们改下响应数据的值,然后看下断言结果和察看结果树
发现我们的断言结果和察看结果树报错了,断言结果错我们可以理解,但是察看结果树报错是怎么回事?明明参数是对的,为啥还要标红?因为你的断言失败了,察看结果树就显示出来了。