添加断言

1.点击 Show  Snapshot pane(快照)按钮

2.在Snapshot 界面中 选择 Page View (查看页面内容)

3.在页面中找到一个可以判断执行成功的文本信息,选中后,右击,选择 “Add Text Check Step” 添加文本信息断言

4.弹出 “Find Text”弹框

  Search for Specific Text 下的文本内容为需要查找的文本内容,例如: test001

  选中 Match Case:表示完全匹配

  Search in : 选项中All、Body、Headers 代表的是响应中的头和内容,不是html的标题和body

  Save count : registerflag :表示在响应中找到文本信息几次,就把次数作为变量registerflag的值,即把出现的次数写到一个变量中

5.action 添加代码如下:

submit_account()
{
    



    web_reg_find("Search=Body",
        "SaveCount=registerflag",
        "Text=test001 ",
        LAST);

    web_submit_data("add_9", 
        "Action=http://192.168.1.102:8000/users/userprofile/add/", 
        "Method=POST", 
        "EncType=multipart/form-data", 
        "RecContentType=text/html", 
        "Referer=http://192.168.1.102:8000/users/userprofile/add/", 
        "Snapshot=t12.inf", 
        "Mode=HTML", 
        ITEMDATA, 
        "Name=csrfmiddlewaretoken", "Value={addaccountcsrfmiddlewaretoken}", ENDITEM, 
        "Name=csrfmiddlewaretoken", "Value={addaccountcsrfmiddlewaretoken}", ENDITEM, 
        "Name=username", "Value={RegistName}", ENDITEM, 
        "Name=password1", "Value={RegistPasswordParam}", ENDITEM, 
        "Name=password2", "Value={RegistPasswordParam}", ENDITEM, 
        "Name=_save", "Value=", ENDITEM, 
        EXTRARES, 
        "Url=/static/xadmin/vendor/font-awesome/fonts/fontawesome-webfont.eot?", "Referer=http://192.168.1.102:8000/users/userprofile/", ENDITEM, 
        LAST);

    return 0;
}

  其中

  

    web_reg_find("Search=Body",
        "SaveCount=registerflag",
        "Text=test001 ",
        LAST);

  为相关代码

6. Text的内容可以换为参数,如下:

    web_reg_find("Search=Body",
        "SaveCount=registerflag",
        "Text={RegistName} ",
        LAST);

7.完整断言代码如下:

submit_account()
{
    
    int registercount = 0; //定义一个整型变量,作为找到预期文本的断言


    web_reg_find("Search=Body",
        "SaveCount=registerflag",
        "Text={RegistName}",
        LAST);

    web_submit_data("add_9", 
        "Action=http://192.168.1.102:8000/users/userprofile/add/", 
        "Method=POST", 
        "EncType=multipart/form-data", 
        "RecContentType=text/html", 
        "Referer=http://192.168.1.102:8000/users/userprofile/add/", 
        "Snapshot=t12.inf", 
        "Mode=HTML", 
        ITEMDATA, 
        "Name=csrfmiddlewaretoken", "Value={addaccountcsrfmiddlewaretoken}", ENDITEM, 
        "Name=csrfmiddlewaretoken", "Value={addaccountcsrfmiddlewaretoken}", ENDITEM, 
        "Name=username", "Value=test{RegistName}", ENDITEM, 
        "Name=password1", "Value=admin111", ENDITEM, 
        "Name=password2", "Value=admin111", ENDITEM, 
        "Name=_save", "Value=", ENDITEM, 
        EXTRARES, 
        "Url=/static/xadmin/vendor/font-awesome/fonts/fontawesome-webfont.eot?", "Referer=http://192.168.1.102:8000/users/userprofile/", ENDITEM, 
        LAST);
    
    registercount = atoi(lr_eval_string("{registerflag}"));   //atoi()函数,把字符串转为整型
                                                             //lr_eval_string("{registerflag}"),表示取变量registerflag的值
    if(registercount>0)
    {
        lr_output_message("注册成功");
        return 0;  //注册成功则返回0
    }   //两行及以上代码需要加大括号
    else
    {
        lr_output_message("注册失败,失败用户为:%s",lr_eval_string("{RegistName}"));
        return -1;  //注册失败,则返回-1
    }
                                                                 
    
}

8.

    web_reg_find("Search=Body",
        "SaveCount=registerflag",
        "Text=test001 ",
        LAST);

  所有带reg的函数都表示为注册类型的函数,先声明注册再使用。

  找到的是服务器响应中的内容,是响应内容,响应接口内容,不是其他。

9.

 

原文地址:https://www.cnblogs.com/jingzaixin/p/13612216.html