断言测试
断言
,对结果的判断。如: 响应时间/返回状态码。
JMeter丰富的断言支持
关于Assertion
的使用,仅会挑选使用频率较高的进行详细说明。JMeter自带了12
种断言方式。
BeanShell Assertion
BSF Assertion
Compare Assertion
Duration Assertion
: 持续时间断言,主要用于响应时间的判断HTML Assertion
JSR223 Assertion
MD5Hex Assertion
-
Response Assertion
-
Apply to
: 判断的范围选择,一般选择Main sample only
Main sample and sub-samples
: 主样例和子样例Main sample only
: 仅主样例Sub-samples only
: 仅子样例JMeter Variable
:JMeter
的变量
-
Response Field to Test
: 需要测试的内容,一般选择Text Response
/Response Code
和Response Header
Text Response
: 文件格式的返回内容,不包括返回的信息头Document(text)
: 文档URL Sampled
: URL样例Response Code
: 返回的状态码Response Message
: 返回信息Response Header
: 返回的信息头Ignore Status
: 忽略状态码
-
Pattern Matching Rules
: 匹配规则,一般选择Substring
Contains
: 包含Matches
: 匹配Equals
: 等于Substring
: 子字符串Not
: 没有
-
Patterns to Test
:真正需要匹配的测试内容
,可通过下方的Add
Delete
按钮来维护。
-
-
Size Assertion
: 返回内容大小
断言,可针对整个响应/响应头/响应数据体/响应信息进行判断 SMIME Assertion
: 主要用于邮件读取时的判断XML Assertion
: 判断是否返回正确的XML
格式内容XML Schema Assertion
: 判断响应的内容与目标XML
文件是否一致XPath Assertion
: 判断返回内容中的XPath
路径
使用断言
实例:返回请求Title
中包含指定内容 + 返回请求状态码验证
访问http://www.jianshu.com/验证返回信息中是否包含简书
- 正常访问http://www.jianshu.com/查看是否在返回信息中存在
简书
- 使用
HTTP Request
+Response Assertion
+Result Tree
- 运行测试,查看结果,测试通过
追加对返回状态码
的验证,提高测试的准确性
- 添加一个新的
Response Assertion
- 添加
Assertion Results
,查看所有断言的执行情况 - 执行测试,查看测试结果