Skip to content

Latest commit

 

History

History
72 lines (53 loc) · 2.8 KB

断言测试.md

File metadata and controls

72 lines (53 loc) · 2.8 KB

断言测试

断言,对结果的判断。如: 响应时间/返回状态码。

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 CodeResponse 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,查看所有断言的执行情况
  • 执行测试,查看测试结果