• jmeter--响应断言


    背景

    在测试过程中,我们需要对某个请求的结果进行判定。

    比如我们搜索“你好”,请求发送成功,返回响应码也是200,但是并不能说明返回的响应就是对的,我们可能还需要判定响应结果包含“你好”。这个时候,我们就需要用到Assertion。

    Web测试常用的断言

    Response Assertion:对Web请求响应结果进行验证。

    Duration Assertion:判断是否在给定的时间内收到响应结果。

    Size Assertion:判断响应结果是否包含正确数量的byte。可以定义等于、大于、小于或者不等于等等。

    image

    添加断言示例

    1. 添加断言

    添加方法:在需要验证结果的Sampler上右键,Add –> Assertions –> Response Assertion

    下图就表示响应文本包含 hello 就算Pass。

    image_thumb[1]

    Apply to : 需要应用断言的部分。

       Main sample and sub-samples:作用于父节点取样器及对应子节点取样器

    Main sample only:仅作用于父节点取样器

    Sub-samples only:仅作用于子节点取样器

    JMeter Variable:作用于jmeter变量(输入框内可输入jmeter的变量名称)

    Response Field to Test:需要验证的响应部分。

            Text Response:从服务器返回的响应文本。不包括 HTTP Header。

            Response Code:响应码。比如 200.

            Response Message:响应信息。比如 OK。

    Pattern Matching Rules:匹配规则。

            Contains:上面选中的部分包含下面的正则表达式就算Pass

            Matches:上面选中的整个部分匹配下面的正则表达式就算Pass。

            Equals:上面选中的整个部分和下面的字符串相等就算Pass。不支持正则表达式,同时对大小写敏感。

            Substring:上面选中的部分包含下面的字符串就算Pass。不支持正则表达式,同时对大小写敏感。

            Not:勾选上之后,会对前面选择的进行反转。比如Matches + Not 就是不匹配就算Pass。

    Patterns to Test:需要匹配的正则表达式或字符串。这里可以添加多项。每一项会分开进行验证。如果一条验证失败,后边的不会再进行验证。

    image

    按照上面的方法,我们在 search_你好请求的结果加上断言:你好fsdlgggg。这样断言结果应该是Fail的。

    image

    在 search_helloworld请求结果加上断言:hello。这样断言结果应该是Pass的。

    2. 添加监听

    在Thread Group 上右键 , Add –> Listeners –> Assertion Results。

    3. 运行

    点击运行按钮运行测试计划。

    4. 查看结果

    image

    可以看到 search_你好 显示为红色感叹号,同时点开有 Response Assertion 。点击 Response Assertion 可以看到具体内容。

    search_helloworld 则是绿色的通过。

    image

    在 Assertion Results 监听里面,可以看到所有监听的情况。

    作者:微微微笑
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
    学而时习之不亦说乎!
  • 相关阅读:
    tomcat调试模式出问题的解决方法
    文本输入 的 onfucus 和 onblur
    how to choose one of compenent and control
    C# Captcha 测试 firefox 和 IE
    谈谈对GridView控件DataKeyName属性的一点认识
    Response.Redirect和Server.Transfer的区别
    select 基本常用语法
    top、postop、scrolltop、scrollHeight、offsetHeight
    onchange 和 onpropertychange区别
    try catch 和if else 语句区别细说
  • 原文地址:https://www.cnblogs.com/wxinyu/p/7686762.html
Copyright © 2020-2023  润新知