文章标题

来源:互联网 发布:手机淘宝排行榜 编辑:程序博客网 时间:2024/06/09 22:46

LoadRunner检查点使用小结

    <div class="article_manage clearfix">    <div class="article_r">        <span class="link_postdate">2016-01-20 19:59</span>        <span class="link_view" title="阅读次数">265人阅读</span>        <span class="link_comments" title="评论次数"> <a href="#comments" onclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_pinglun'])">评论</a>(0)</span>        <span class="link_collect tracking-ad" data-mod="popu_171"> <a href="javascript:void(0);" onclick="javascript:collectArticle('LoadRunner%e6%a3%80%e6%9f%a5%e7%82%b9%e4%bd%bf%e7%94%a8%e5%b0%8f%e7%bb%93','50550624');return false;" title="收藏" target="_blank">收藏</a></span>         <span class="link_report"> <a href="#report" onclick="javascript:report(50550624,2);return false;" title="举报">举报</a></span>    </div></div><div class="embody" style="display:none" id="embody">    <span class="embody_t">本文章已收录于:</span>    <div class="embody_c" id="lib" value="{&quot;err&quot;:0,&quot;msg&quot;:&quot;ok&quot;,&quot;data&quot;:[]}"></div></div><style type="text/css">                .embody{            padding:10px 10px 10px;            margin:0 -20px;            border-bottom:solid 1px #ededed;                        }        .embody_b{            margin:0 ;            padding:10px 0;        }        .embody .embody_t,.embody .embody_c{            display: inline-block;            margin-right:10px;        }        .embody_t{            font-size: 12px;            color:#999;        }        .embody_c{            font-size: 12px;        }        .embody_c img,.embody_c em{            display: inline-block;            vertical-align: middle;                       }         .embody_c img{                           width:30px;            height:30px;        }        .embody_c em{            margin: 0 20px 0 10px;            color:#333;            font-style: normal;        }</style><script type="text/javascript">    $(function () {        try        {            var lib = eval("("+$("#lib").attr("value")+")");            var html = "";            if (lib.err == 0) {                $.each(lib.data, function (i) {                    var obj = lib.data[i];                    //html += '<img src="' + obj.logo + '"/>' + obj.name + "&nbsp;&nbsp;";                    html += ' <a href="' + obj.url + '" target="_blank">';                    html += ' <img src="' + obj.logo + '">';                    html += ' <em><b>' + obj.name + '</b></em>';                    html += ' </a>';                });                if (html != "") {                    setTimeout(function () {                        $("#lib").html(html);                                              $("#embody").show();                    }, 100);                }            }              } catch (err)        { }    });</script>  <div class="category clearfix">    <div class="category_l">       <img src="http://static.blog.csdn.net/images/category_icon.jpg">        <span>分类:</span>    </div>    <div class="category_r">                <label onclick="GetCategoryArticles('6076289','Hjianhui24','top','50550624');">                    <span onclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_fenlei']);">LoadRunner<em>(5)</em></span>                  <img class="arrow-down" src="http://static.blog.csdn.net/images/arrow_triangle _down.jpg" style="display:inline;">                  <img class="arrow-up" src="http://static.blog.csdn.net/images/arrow_triangle_up.jpg" style="display:none;">                    <div class="subItem">                        <div class="subItem_t"><a href="http://blog.csdn.net/Hjianhui24/article/category/6076289" target="_blank">作者同类文章</a><i class="J_close">X</i></div>                        <ul class="subItem_l" id="top_6076289">                                                    </ul>                    </div>                </label>                        </div></div><script type="text/javascript" src="http://static.blog.csdn.net/scripts/category.js"></script>  
     判断脚本是否执行成功是根据服务器返回的状态来确定的,如果服务器返回的HTTP状态为 200 OK ,那么VuGen 就认为脚本正确地运行了,并且是运行通过的。

     在绝大多数系统出错时会返回错误页面码? 不会,一般系统都会返回一个消息提示框,来提升用户感受。例如,“网站繁忙,请稍后”。其实这个时候网站已经无法正确响应用户请求了,但是VuGen 脚本无法识别,会错误地认为网站还能正确访问,导致分析错误。

     所以这时需要一种检查点函数帮助验证请求发送出去后,服务器的返回是不是期望的内容,如果不是,那么就说明服务器返回无法提供正常的服务了


LR中检查点有两种:图片和文字。

常用检查点函数如下:

1)web_find()函数用于从 HTML 页中搜索指定的文本字符串;

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

3)web_image_check()函数用于从HTML页面中查找指定的图片;

4)web_global_verfication()属于注册函数,注册一个在web页面中搜索文本字符串的请求,与web_reg_find只在下一个Action函数中执行搜索不同的是它在之后所有的Action类函数中执行搜索指定的文本字符串;


下面分别介绍以上函数的用法:

1、web_find()函数参数举例:

web_find(“web_find”,”RighOf=a”,”LeftOf=b”,”What=name”,LAST);

参数解释:”web_find”定义该查找函数的名称;“LeftOf”和“RighOf=”用来定义查找字符的左右边界;“What=”定义查找内容;

例如上述参数举例中的意思就是在页面中查找左边界为b,右边界为a,内容为name的信息;

使用该函数注意事项:该函数是在查找页面中的内容,所以要放在要查找的内容的后面;该函数只能在基于HTML模式录制的脚本中进行查找

注意事项:使用该函数时,要在Vuser->Run-Tme Settings中更改下设置

勾选Enable Image and text check

系统默认是不勾选该选项的。



2、web_reg_find()函数参数举例:

web_reg_find(“Search=Body”,”SaveCount=ddd”,”Test=aaa”,LAST);

参数解释: Search用来定义查找范围,SaveCount定义查找计数变量名称,该参数可以记录在缓存中查找内容出现的次数,可以使用该值,来判断要查找的内容是否被找到;

例如上述参数举例中的意思就是Body中查找内容为aaa的信息,并将出现次数记录在变量ddd中;


【代码一:

web_reg_find(“Text=Payment Details”,LAST);

代码思路:1.“Payment Details” 为你要检查的文本;

2. 脚本执行到此处,若在页面上找到了这几个字符串,那脚本继续执行下去;若没有找到,脚本将在此报错并且结束。】



【代码二:

 web_reg_find(“Text=Payment Details”, “SaveCount=para_count”, LAST); //check 的函数

 web_submit_form(“reservations.pl_2”, //要check的页面的录制时的代码

“Snapshot=t22.inf”,

ITE  MDATA,

“Name=outboundFlight”, “Value=003;0;06/23/2007”, ENDITEM,

“Name=reserveFlights.x”, “Value=61”, ENDITEM,

“Name=reserveFlights.y”, “Value=2”, ENDITEM,

LAST);
//atoi字符串转换成整型
if (atoi(lr_eval_string(“{para_count}”))>0) //验证是否找到了页面上的要检查的字符串

lr_output_message(“we find the string!”);

else

lr_output_message(“sorry,don’t find the string!”);

代码思路:1.“Payment Details” 为你要检查的文本;

2. 脚本执行到此处,不管页面上是否存在你要检查的字符串,脚本都不会报错,而是执行下去

3. 此段代码将找到的你要检查的字符串的个数,存为一个参数。 然后在页面代码的后面,通过检查这个参数的值是否大于0,来判断是否找到了你所要检查的字符串。
4. atoi()函数的作用是将一个ASCII字符串转换为整型, 
    lr_eval_string()函数作用是取得参数值,将字符串变量中的参数值替换为当前的参数值并将这个字符串返回】


【代码三:

A. web_reg_find(“Text=Payment Detdils”, “Fail=NotFound”,LAST);或

B. web_reg_find(“Text=Payment Detdils”, “Fail=Found”,LAST);

代码思路:

1.“Payment Details” 为你要检查的文本;

2. 若是A代码:脚本执行到此处,若没有找到check的字符串,脚本将FAIL, 并且停止执行下去。反之,则一直执行下去。

3. 若是B代码:脚本执行到此处,若找到check的字符串,脚本将FAIL, 并且停止执行下去。反之,则一直执行下去】

使用该函数注意事项:该函数是在缓存中查找相应的内容,所以要放在查找内容之前;通常情况下写在如下六个函数之前:  Web_castom_request(); web_image(); web_link(); web_submit_data(); web_submit_form(); web_url();

3、web_image_check()函数参数说明:
web_image_check(“web_image_check”,”Alt=”,”Src=”,LAST);

参数解释:“Alt”和“Src”的值直接取该图片在网页源代码中相应参数的值;

注意事项:使用该函数时,要在Vuser->Run-Tme Settings中勾选Enable Image and text check,具体操作请看web_find()中的注意事项。

经过测试,该函数用到查找内容前面或后面,都不影响查找结果。



总结:

1、 这两个函数函数类型不同,WEB_FIND是普通函数,WEB_REG_FIND是注册函数;

2、 WEB_FIND使用时必须开启内容检查选项,而WEB_REG_FIND则不没有此限制;

3、 WEB_FIND只能用在基于HTML模式录制的脚本中,而WEB_REG_FIND没有此限制;

4、 WEB_FIND是在返回的页面中进行内容查找,WEB_REG_FIND是在缓存中进行查找;

5、 WEB_FIND在执行效率上不如WEB_REG_FIND;







document.getElementById("bdshell_js").src = "http://bdimg.share.baidu.com/static/js/shell_v2.js?cdnversion=" + Math.ceil(new Date()/3600000)
    <div id="digg" articleid="50550624">        <dl id="btnDigg" class="digg digg_disable" onclick="btndigga();">             <dt>顶</dt>            <dd>0</dd>        </dl>        <dl id="btnBury" class="digg digg_disable" onclick="btnburya();">              <dt>踩</dt>            <dd>0</dd>                       </dl>    </div> <div class="tracking-ad" data-mod="popu_222"><a href="javascript:void(0);" target="_blank">&nbsp;</a>   </div><div class="tracking-ad" data-mod="popu_223"> <a href="javascript:void(0);" target="_blank">&nbsp;</a></div><script type="text/javascript">            function btndigga() {                $(".tracking-ad[data-mod='popu_222'] a").click();            }            function btnburya() {                $(".tracking-ad[data-mod='popu_223'] a").click();            }        </script>


<div style="clear:both; height:10px;"></div>    <div class="similar_article" style="">            <h4>我的同类文章</h4>            <div class="similar_c" style="margin:20px 0px 0px 0px">                <div class="similar_c_t">                            <label class="similar_cur">                                <span style="cursor:pointer" onclick="GetCategoryArticles('6076289','Hjianhui24','foot','50550624');">LoadRunner<em>(5)</em></span>                            </label>                </div>                <div class="similar_wrap tracking-ad" data-mod="popu_141" style="max-height:195px;">                    <a href="http://blog.csdn.net" style="display:none" target="_blank">http://blog.csdn.net</a>                    <ul class="similar_list fl"><li><em>•</em><a href="http://blog.csdn.net/Hjianhui24/article/details/50550896" id="foot_aritcle_50550896undefined21042722614151543" target="_blank" title="LR使用sitescope监控Linux主机CPU、内存">LR使用sitescope监控Linux主机CPU、内存</a><span>2016-01-20</span><label><i>阅读</i><b>172</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/Hjianhui24/article/details/50550747" id="foot_aritcle_50550747undefined6519474658143838" target="_blank" title="LoadRunner-使用web_get_int_property进行文件下载">LoadRunner-使用web_get_int_property进行文件下载</a><span>2016-01-20</span><label><i>阅读</i><b>174</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/Hjianhui24/article/details/50550633" id="foot_aritcle_50550633undefined12261994726470404" target="_blank" title="Loadrunner集合点Rendezvous知识">Loadrunner集合点Rendezvous知识</a><span>2016-01-20</span><label><i>阅读</i><b>95</b></label></li> </ul>                    <ul class="similar_list fr"><li><em>•</em><a href="http://blog.csdn.net/Hjianhui24/article/details/50550839" id="foot_aritcle_50550839undefined13674652172276947" target="_blank" title="web_url函数详解">web_url函数详解</a><span>2016-01-20</span><label><i>阅读</i><b>83</b></label></li> <li><em>•</em><a href="http://blog.csdn.net/Hjianhui24/article/details/50550671" id="foot_aritcle_50550671undefined4822833289721806" target="_blank" title="lr_eval_string()函数以及LR中参数、变量的简单使用">lr_eval_string()函数以及LR中参数、变量的简单使用</a><span>2016-01-20</span><label><i>阅读</i><b>1000</b></label></li> </ul>                </div>            </div>        </div>    <script type="text/javascript">    $(function () {        GetCategoryArticles('6076289', 'Hjianhui24','foot','50550624');    });</script>

0 0