zoukankan      html  css  js  c++  java
  • loadrunner与返回消息有关的函数

    1.web_reg_save_param()

    web_reg_save_param是一个注册类型的函数。它注册一个请求,以在检索到的响应消息中查找并保存一个文本字符串。只有在执行了下一个操作函数(如web_url)后才会执行该操作。

    其主要作用是将返回消息中的某个字符串存入一个参数,用来做后续使用。比如发送下一条消息必须携带上一条消息中返回的session id,这个函数就能派上用场。或者对返回的消息的某个字段进行校验

    定义:

    int web_reg_save_param (const char *ParamName, , LAST);

    例子:

    web_reg_save_param("return_length2",

                           "LB=Content-Length: ",

                           "RB= ",

                           "Ord=ALL",

                            LAST);

    LB 参数的左边界
    RB 参数的右边界
    Ord 匹配的序号位置,默认为1。如果Ord=ALL表示会将所有查找到的匹配值保存到一个list当中。
    Notfound 当没有找到边界时的处理选项,选项有:Notfound=error -
    Notfound=empty
    Search : 搜索字符串的搜索范围,如ALL、Body、Header

    比如返回消息如下:

    HTTP/1.1 200 OK

    Server: Apache-Coyote/1.1

    X-Powered-By: Servlet/3.0; JBossAS-6

    Content-Length: 0

    Date: Fri, 18 Jul 2014 02:35:47 GMT

    则上述函数会将Content-Length的长度0存到return_length2这个参数当中。

     web_reg_save_param("result",

    "LB="user_token":"",
    "RB="",
    "Ord=1",
    "Notfound=empty",
    "Search=Body",
    LAST);

    例:(如下json)

    {"mobile":"18900001234","password":"123456"}
    匹配手机号,那么它的左边界为:"mobile":",右边界为:","password

    备注: 引号需要用斜杠进行转义

    2.web_get_int_property

    web_get_int_property函数返回关于最后一个 HTTP 请求的指定信息。如果一个操作函数返回多条响应消息,则只取最后一个响应详细的结果

    该函数可以指定的返回消息类型:

    HTTP_INFO_RETURN_CODE   HTTP请求响应码,如200,404

    HTTP_INFO_DOWNLOAD_SIZE   HTTP请求响应大小  包含消息头和消息体

    HTTP_INFO_DOWNLOAD_TIME   最后一个http请求返回的下载时长,单位为毫秒

    定义:

    int web_get_int_property (constintHttpInfoType);

    例子:

    int flen;

    flen = web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE);

    3.web_reg_find

    web_reg_find函数注册一个请求,以在下一个操作函数(如web_url)检索到的网页上搜索一个文本字符串

    这个与web_reg_save_param有些类似,也是从下一个操作函数中从返回中取出一个文本字符串,所不同的是从返回的消息当中查找某个字符串,而并不需要该字符串位于某个特定位置,也就是存在固定的左右边界。而且可以将查找到的次数保存在相应的参数当中。需要注意的是,如果查询的字符为中文字符,在录制前,需要在option中选择编码格式为UTF-8。

    定义:

    int  web_reg_find (const char *attribute_list, LAST);

    例子:

    web_reg_find("Search=Body",
    "Text=user_id",
    "SaveCount=para_count",
    LAST);

    Search : 搜索字符串的搜索范围,如ALL、Body、Header
    Text : 搜索的字符串
    SaveCount : 匹配的数量,并存储在一个参数中

    4.web_image_check

    语法:
    int web_image_check(const char*CheckName,<List of Attributes>,<"Alt=alt"|| "Src=src">, LAST );

    参数:
    1、CheckName:Check名称。
    2、List of Attributes:
    支持的属性有:Frame(在多Frame的情况下,定义要查找Frame的范围)。
    支持的选项有:
    Expect:检查通过的条件,默认为Found
    Matchcase:是否区分大小写,默认为no
    Repeat:找到第一个符合条件字符串后,是否还继续搜索,默认为yes
    Report:什么情况下(success、failure、always)显示检查结果,默认always
    Onfailure:失败(expect的值决定)的情况下,是否继续,默认为Continue on Error。
    3、Alt:图片的ALT标记。
    4、Src:图片的SRC标记。

    备注:

    1、注意勾上Runtime Settings—Internet Protocl—Preferences—Checks:Enable Image and text check
    2、注意该函数放到web_url后面,且Web_url的Mode须为html(此函数仅仅支持基于HTML的脚本)
    3、Web_image_check检查指定的图象是否在HTML页面中出现。
    4、Alt或者Src两者必须有一个在参数列表中出现。如果两项都通过,那么检查成功。

     web_url("google",
      "URL=http://127.0.0.1:8000/test.html",
      "TargetFrame=",
      "Resource=0",
      "RecContentType=text/html",
      "Referer=",
      "Snapshot=t1.inf",
      "Mode=HTML",
      LAST);

     web_image_check("web_image_check",
      "expect=NotFound",
      "Alt=Google8",
      "matchcase=no",
      "repeat=no",
      "report=failure",
      "Onfailure=abort",
      LAST);

    5.web_find 此函数的作用是在HTML页面中查找指定的字符串

    语法:
     int web_find (const char*StepName, <Attributes and Specifications list>,char*searchstring, LAST ); 

    说明:
    1、注意勾上Runtime Settings—Internet Protocl—Preferences—Checks:Enable Image and text check
    2、注意该函数放到web_url后面,且Web_url的Mode须为html
    3、此函数的作用是在HTML页面中查找指定的字符串。
    4、函数只能在基于HTML录制的脚本中使用。当指定的HTML请求全部完成以后,开始执行搜索过程,比web_reg_find要慢。
    5、web_find函数在C语言的脚本中已经被web_reg_find所替代,web_reg_find运行速度比较快,而且在HTML-based和URL-based的录制方式中都可以使用。
    6、在C语言脚本中,web_find是向后兼容的。Java和Visual Basic脚本中不支持它。
    7、WAP和WSP协议不支持。

    6.web_global_verification

    属于注册函数,注册一个在web页面中搜索文本字符串的请求,与web_reg_find只在下一个Action函数中执行搜索不同的是,它是在之后所有的Action类函数中执行搜索的。可以搜索页面的body,headers,html代码或者是整个页面。

    在检测一些应用程序级别(不通过http状态码来表现)的错误时,web_global_verification是非常有用的。如果要定位通过HTTP状态码表现的错误时,使用web_get_int_property。

    语法:
     int web_global_verification(<List of Attributes>, LAST );

    参数:
    List of Attributes:

    Text:此属性是一个非空的,以NULL结尾的字符串,表示要查找的内容。语法是”Text=string”。还可以使用text flags自定义字符串。

    TextPfx:没有指定Text的情况下使用此属性。要查找的字符串的前缀。语法是” TextPfx =string”。还可以使用text flags自定义字符串。

    TextSfx:没有指定Text的情况下使用此属性。要查找的字符串的后缀。语法是” TextSfx =string”。还可以使用text flags自定义字符串。

    Search:可选项,在哪里查找字符串。可选的值是:Headers,Body,NORESOURCE或All。默认值是NORESOURCE。语法是“Search=value”。

    Fail:当字符串找不到时的处理选项:Found (默认值)或NotFound。Found表示当找到对应的字符串时发生了错误(例如“Error”)。NotFound表示当找不到字符串时发生了错误。语法是“Fail=value“。

    ID:在日志文件中标识当前函数。

    注:text flags:/IC表示忽略大小写;/BIN表示指定的是二进制数据。

    如果不知道要查找的精确的文本,或者要查找的多个文本不是完全相同的,可以使用前缀和后缀来表示。这时需要用到TextPfx和TextSfx属性。这2个属性必须同时指定,一旦指定了其中一个,就不能指定Text属性了。

    注意:web_global_verification在WAP协议下不能运行。

    web_global_verification("Text/IC=google",
      "Fail=NotFound",
       LAST);

  • 相关阅读:
    文本属性和属性连写
    并集选择器
    子代选择器
    后代选择器
    交集选择器
    xpath helper 表格爬取
    爬取xiachufang图片试手
    bs4 beautifullsoup网页内容选择器
    requests第三方库使用 抓取
    python 爬虫学习
  • 原文地址:https://www.cnblogs.com/mayyan/p/9884264.html
Copyright © 2011-2022 走看看