运行测试时,常常需要验证某些内容是否出现在返回的页面上。内容检查验证脚
本运行时 Web 页面上是否出现期望的信息。可以插入两种类型的内容检查:
➤ 文本检查。检查文本字符串是否出现在 Web 页面上。
➤ 图像检查。检查图像是否出现在 Web 页面上。
文本检查
在这一节,您将添加文本检查,检查 Find Flight 是否出现在脚本中的订票页面上。
要插入文本检查,请执行以下操作:
1 打开文本检查向导。
确保出现 “任务”窗格。如果未出现,请单击任务按钮。在 “任务”窗格的增强
功能下单击内容检查。
内容检查向导打开,显示脚本中每个步骤的缩略图。

选择工具栏中的 HTML 视图以显示缩略图的快照。

2 选择包含待检查文本的页面。
单击名为 reservations.pl 的第四个缩略图。
3 选择要检查的文本。
突出显示快照内的文字 Find Flight (查找航班),然后右键单击并选择添加文本
检查 (web-reg-find)。
将打开 “查找文本”对话框,显示在查找选定内容框中选定的文本。单击确定。
4 查看新步骤。
在树视图 (视图 > 树视图)中,您会看到 VuGen 在脚本中插入了一个新步骤
Service: Reg Find。这一步注册文本检查, LoadRunner 将在运行步骤后检查文
本。回放期间, VuGen 将查找文本 Find Flight 并在回放日志中指出是否找到。

注:

回放日志中能看到Registering web_reg_find was successful是让 VuGen 准备好在表单提交后检查文本,而Registered web_reg_find successful for "Text=Find Flight" (count=1)表示查找成功,如果没有,单击action,右键run-time setting中,Internet Protocol --preference 中第一选项,checks,勾选上。

检查点输入中文不能识别的问题:

转载自:http://www.51testing.com/html/44/316844-845447.html

以访问我空间首页为例,设置检查点,检查文本“jmeter参数化”

结果,无论是web_find还是web_reg_find,结果全是失败

Action.c(13): Continuing after Error -26366: "Text=Jmeter参数化" not found for web_reg_find  [MsgId: MERR-26366]

Action.c(13): web_url("www.51testing.com") highest severity level was "continue on error", 240255 body bytes, 18483 header bytes, 162 chunking overhead bytes      [MsgId: MMSG-26387]

Action.c(13):Continuing after error in Vuser script.

Action.c(46):Continuing after Error -27195: "web_find" failed. 0 occurrence(s) of "Jmeter参数化" found (RightOf="", LeftOf="")        [MsgId: MERR-27195]

Action.c(46): web_find highest severity level was "continue on error"      [MsgId: MMSG-26391]

而直接检查jmeter则可以成功,基本判定还是中文识别的问题

网上提到的使用lr_convert_string_encoding函数,将中文转换成UTF8,然后再去检查,不知道是不是我写的不对,结果还是验证失败

最后看到一文章提到中文字符集和中文检查点的关系,发现51的编码是简体中文gbk,而我录制时,录制选项里里,Utf-8是勾选的

于是重新录制脚本,清除Utf-8选项,设置同样中文检查点,回放通过

同样,经试验,UTf-8编码的百度网站,启用UTF-8录制,中文检查点也是可以成功的

因此,在录制脚本时最好还是先看下网站的编码格式,然后设置相应的录制选项-支持字符集,确认是否启用UTF-8,以确保后续的中文检查点的正常运行。

web_find和web_reg_find 区别:

使用web_reg_find不用启用文本检查点功能

使用web_find就一定要启用文本检查点功能,否则检查点无效,

web_reg_find和web_find放的位置有区别,web_reg_find需要放在检查内容的前面,而web_find放在检查内容的后面

正常的结果就是:
1,启用了检查点,当检查到时,返回值为0;当检查不到时,返回值为1。
2,不启动检查点,一直返回0.

web_find
该函数主要针对HTML页面显示的内容进行搜索。
中的百度一下是不可以搜索的到
而标题"百度一下,你就知道" 可以搜索的到。

web_find中文支持问题:

使用URL方式去录制就能解决此问题,另外可能引起的是字符集的问题,不要选则UT-8

web_find当没查找到字符时,就报错,停止继续运行
Action.c(31): Error -27195: "web_find" failed. 0 occurrence(s) of "新闻" found (RightOf="", LeftOf="") [MsgId: MERR-27195]
Action.c(31): web_find highest severity level was "ERROR" [MsgId: MMSG-27181]

web_find()插入检查点回放错误

Action.c(83): Error -27985: There is no context for HTML-based functions. A previous function may not have used "Mode=HTML" or downloaded only non-HTML page(s), or the context has been reset (e.g., due to a GUI-based function)   [MsgId: MERR-27985]
Action.c(83): web_find highest severity level was "ERROR"   [MsgId: MMSG-26391]

原因:web_find()仅支持基于HTML模式录制的脚本中,如果是基于url的脚本插入后会有如上的错误

解决办法:换成使用web_reg_find()函数即可

另外注意:LoadRunner回放默认是不勾选启用检查点的,需要在回放设置中手动勾选才生效

web_reg_find()函数中文查找失败

解决办法:将运行设置-》preference的convert from/to UTF-8设置位yes即可

函数模板:

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, 并且停止执行下去。反之,则一直执行下去。

loadrunner怎么进行内容检查的更多相关文章

  1. 告别被拒,如何提升iOS审核通过率(下篇)——应用内容检查大法与提审资源检查大法

    WeTest 导读 之前的<告别被拒,如何提升iOS审核通过率(上篇)>分享了客户端检查的相关要点,本篇会给大家介绍有关应用内容的检查项和提审资源相关检查项要点. 应用内容检查大法 苹果对 ...

  2. 验证loadrunner对Ajax内容的校验

    前一阵和开发的同事一起測试某个系统的性能.此系统是发送Ajax请求到后台,再调用第三方的某项服务. 第三方服务的性能由不得我们控制.因此开发者做了一下改进.超时则直接返回. 于是在loadrunner ...

  3. LoadRunner 检查点函数总结

    今天我来总结一下Loadrunner中的检查点函数,主要介绍两个函数:web_find()和web_reg_find() 这两个函数均用于内容的查找,但两者也有本质的区别,具体介绍如下: 一.web_ ...

  4. LoadRunner培训初级教程

    一 LoadRunner简介 1.1 Loadrunner介绍 LoadRunner 是 HP Mercury Interactive 用来测试应用程序性能的工具  LoadRunner 通过模拟一个 ...

  5. Loadrunner中web_find和web_reg_find函数的使用与区别

    总结一下Loadrunner中的检查点函数,主要介绍两个函数:web_find()和web_reg_find():这两个函数均用于内容的查找,但两者也有本质的区别,具体介绍如下:一.web_find( ...

  6. loadrunner提高篇-插入检查点与关联函数

    插入检查点   靠LR自动生成的脚本是不够的,很难达到业务要求,因此需要对录制完的脚本进行完善,使其能达到业务模拟的要求 ,这样尽可能地使虚拟用户模拟时更接近用户的实际使用. 在进行压力测试时,经常会 ...

  7. Loadrunner检查点使用总结

    在使用Loadrunner进行性能测试中,有时需要对性能测试中的功能是否全部正确进行判断.这里就需要用到“检查点”,本文总结了常用三种协议下检查点的使用方法,希望阅读本文后的小伙伴们能够掌握其使用方法 ...

  8. LoadRunner场景设置

    创建负载测试场景场景目标:模拟10家旅行社同时登陆.搜索航班.购买机票.查看航班路线并退出打开Controller并创建一个新场景1.打开HP LoadRunner2.打开Controller在Loa ...

  9. LoadRunner脚本准备

    脚本录制1.启动LoadRunner2.打开VuGen在LoadRunner Launcher窗格中,单击创建/编辑脚本3.创建一个空白Web脚本在“新建虚拟用户”对话框里选择新建脚本的协议一般选择W ...

随机推荐

  1. xdebug : Debug session was finished without being paused

    一.当调试模式出现说路径不匹配的时候,需要检查当前请求的URL和设置断点的是否在同样的位置 Debug session was finished without being paused It may ...

  2. 如何安装nginx第三方模块

    nginx文件非常小但是性能非常的高效,这方面完胜apache,nginx文件小的一个原因之一是nginx自带的功能相对较少,好在nginx允许第三方模块,第三方模块使得nginx越发的强大. 在安装 ...

  3. FPGA学习的一点总结

    做FPGA主要是要有电路的思想,作为初学者,往往对器件可能不是熟悉,那么应该要对数字电路的知识熟悉. FPGA中是由触发器和查找表以及互联线等基本结构组成的,其实在逻辑代码里面能够看到的就是与非门以及 ...

  4. linux网络编程、系统编程

    http://blog.csdn.net/lianghe_work/article/category/2871247

  5. [Java.Web]从零开始布署 Tomcat

    1. 下载 JRE 1.7 2. 下载 Tomcat 7.0.77,我使用的是红圈的压缩包版本,也可以使用绿圈的安装包版本[更省心] 3. 加入环境变量 JRE_HOME .CATALINA_HOME ...

  6. SQL 函数:树结构指定父节点遍历所有的子节点

    CREATE function [dbo].[Get_DepChildren] ( @ID int ) , ),PID ), Name )) as begin --declare @ID Int -- ...

  7. kubernetes 学习 pod相关

    1  pod的状态: Pending, Running, Succeeded, Failed, Unknown 2  pod重启策略: Always(自动重启,是默认的) .  OnFailure(容 ...

  8. MySQL性能测试工具之mysqlslap

    MySQL性能测试工具之mysqlslap [日期:2014-10-05] 来源:Linux社区  作者:tongcheng [字体:大 中 小]   --转自Linux社区:http://www.l ...

  9. Django的视图层

    HttpResquest对象: request属性: /* 1.HttpRequest.GET 一个类似于字典的对象,包含 HTTP GET 的所有参数.详情请参考 QueryDict 对象. 2.H ...

  10. C#命名规则和风格(收集)

    1.     文件命名组织 1-1文件命名 1.        文件名遵从Pascal命名法,无特殊情况,扩展名小写. 2.        使用统一而又通用的文件扩展名: C# 类 .cs 1-2文件 ...