一、简介
断言类似于Loadrunner的检查点,对上一个请求返回的信息,做字符串、数据包大小、HTML、XML、图片等;
匹配规则:
- 包括:响应内容包括需要匹配的内容就算成功;
- 匹配:响应内容要完全匹配内容,不区分大小写;
- equals:完全相等,区分大小写;
- substring:响应内容包括匹配内容即为成功;
可以通过添加断言结果来查看断言的执行情况;
不建议在性能测试过程中设置断言,影响测试过程。
二、响应断言-Response Assertion
1、添加响应断言
2、输入要匹配的字符串
三、BeanShell 断言
1、常用内置变量
Jmeter在它的BeanShell中内置了变量,用户可以通过这些变量与Jmeter进行交互,其中主要的变量及其使用方法如下:
- log:写入信息到jmeter.log文件,使用方法:log.info("This is log info");
- ctx:该变量引用了当前线程的上下文,使用方法百度;
- vars(Jmeter variables):操作Jmeter变量,这个变量实际引用了Jmeter线程中的局部变量容器(本质上是Map),它是测试用例与Beanshell交互的容器,常用方法:
-
- vars.get(String key); 从jmeter中获得变量值;
- vars.put(String key,String value); 数据存到jmeter变量中;
- props:操作jmeter属性,该变量引用了Jmeter的配置信息,可以获取Jmeter的属性,它的使用方法与vars类似,但是只能put进去String类型的值,而不能是一个对象。
- prev(SampleResult):获取前面的sample返回的信息,常用方法:
-
- getResponseDataAsString(); 获取响应信息;
- getResponseHeaders(); 获取所有的响应头;
- 更多使用方法:https://jmeter.apache.org/api/org/apache/jmeter/samplers/SampleResult.html
四、JSON断言
1、作用
只能针对响应结果是application/json格式的请求进行断言;
2、使用JSON断言,一般是断言某个字段值是否返回的是我们需要的,所以需要写JSON PATH。