LoadRunner11-设置集合点及检查点
最新loadrunner11安装使用
l o a d r u n n e r11安装使用loadrunner 11一、安装4G只要顺序安装即可;二、破解1. 把loadrunner相关程序全部退出;2. 用LR8.0中的mlr5lprg.dll、lm70.dll覆盖LR9.5安装目录下“bin”文件夹中的对应文件;一般是C:\Program Files\Mercury\LoadRunner\bin.3. 清理注册表(不清理的话,在添加licence时,会提示“License security violation……”)可以下载注册表清理器lr_Del_license(LR破解包内有)或者手动修改注册表,删除下面注册表中的所有子键:(最好还是通过上面的注册清理器清除比较可靠)[HKEY_LOCAL_MACHINE\SOFTWARE\MercuryInteractive\LoadRunner\License2][HKEY_LOCAL_MACHINE\SOFTWARE\MercuryInteractive\LoadRunner\License2\History]"AIBGEBFW-JVED-ZKEKEKEKEKEBDNQAF-KBRDN"=""[HKEY_LOCAL_MACHINE\SOFTWARE\MercuryInteractive\LoadRunner\License2\PermanentLicense]@="AIBGEBFW-JVED-ZKEKEKEKEKEBDNQAF-KBRDN""last"="AIBGEBFW-JVED-ZKEKEKEKEKEBDNQAF-KBRDN"[HKEY_LOCAL_MACHINE\SOFTWARE\MercuryInteractive\LoadRunner\License2\TemporaryLicense]@="AEBGEBFS-AKEKEKEKE-KAUCA"[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{87B3ADD4-21EB-11d5-93EF-00105AA0FD2D}]@="IControl"4. 添加下面的licence,即可使用:global-100: AEAMAUIK-YAFEKEKJJKEEA-BCJGIweb-10000: AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB golba-1000:AEACFSJI-YASEKJJKEAHJD-BCLBR提供一个超级license 最高支持6.5w个并发:AEACFSJI-YJKJKJJKEJIJD-BCLBR三、录制脚本创建事务完善脚本部署负载控制器执行负载测试分析测试结果生成组合图生成测试结果文档1、如何录制2、如何创建事务3、如何在已有脚本基础上完善不同用户数据的加载(即脚本参数化,应该也可以本地参数化)4、如何部署负载控制器-多客户机执行同一个负载,并发个数、执行时间、vuser加载时长等问题5、执行测试发生各种错误,如何配置检测服务器6、测试结果各种数据的含义7、合并具有数据意义的图8、生成可用的数据文档四、疑问及解决方案1、如何监控linux服务器资源:Rpcinfo –p : 该工具检测服务器是否开启了rpc相关服务开启rpc的话如图:没有开启rpc相关服务解决:安装rpc.rstatd服务tar -xzvf rpc.rstatd-4.0.1.tar.gz在编译安装目录启动服务:./rpc.rstatd启动portmap服务:/etc/rc.d/init.d/portmap start有些服务器可能是出现这样的问题:如果是rpcinfo command not found的话:先安装portmap : yum install portmap然后启动这个服务:/etc/init.d/rpcbind start如果还出现建立rpc没有成功的话,可以尝试将服务器的防火墙永久关闭:chkconfig iptables offchkconfig iptables on(注意,portmapper和rstatd都需要端口对外开放)2、关于并发用户和集合点的探讨主要资料来自51testing各种大牛回帖集合点:严格意义上讲集合点是为了并发,比如某个提交数据的事务前插入集合点,当vuser运行到集合点时,lr会检查有多少用户到达集合点,如果达到集合点指定并发的要求则lr会命令到达集合点的vuser同时去提交数据;事务:为了衡量一系列操作的性能,需要定义事务,在测试结束后,lr会给定相应事务的性能数据;并发:个人也一直比较迷糊,认为并发可以分为严格上的并发和广泛并发,严格并发:所有的vuser在同一时刻做相同或不同的操作广泛并发:所有的vuser在同一段时间内自由的操作不同的动作(只要有技术人员说上w的并发,都觉得这些人说话不严谨也不负责任,经常会误导小白们,导致每个刚入门性能测试的人觉得不来个上千上万的并发都不好意思拿出测试结果)具体集合点和并发在lr里怎么操作,这里先不赘述,之后会有专门的节介绍;这里主要是要说什么情况下更适合使用集合点:借用一张应用结构图:对于打个操作lr本省执行的时候就已经在模拟一个并发的过程,而插入集合点只是为了实现严格意义上的并发,而如果在一个事务中有多个操作,如有查询,删除等操作行为,则最好分成多个事务,每个事务有自己的集合点(并发点),这样才能准确的获得各个操作的并发数据;一般更多的是单独并发测试一个操作行为,所以可要可不要集合点?但有个duration,这期间这些vuser和集合点又是怎么个关系?一下两段为草稿,待完善:单个操作,设置集合点和不设置集合点的区别是否明显,还是差不多多个操作,如果是多个操作,就必须每个操作作为一个事务,在事务设置集合点,这样才会避免vuser自由的访问任意个操作,而是可以让lr指定在哪个操作并发;可以让action迭代,相当于用户多次操作;是不是在一段duration中,慢慢加载vuser,duration保持一段时间(最大用户数),以更慢的速度让vuser慢慢退出,这比较符合一天vuser从低谷到某个高峰再到低谷的,而每个用户在这期间可以做一系列的操作(事务);五、简单实例录制请求一个url:http://192.168.2.211:5100/game/whitelist?lasttime=0控制器场景:同时初始化所有vuser,每5秒增加2个vuser,所有vuser加载结束后持续1分钟,持续期结束后,每5秒停止2个vuser:执行场景结束后台共接收到4593个请求:从第一个vuser加载并请求开始到最后一个vuser请求结束:(2013-03-14 14:12:15 - 2013-03-14 14:13:55)结果分析:Analysi Summary:Running Vusers – Average Transaction Response Time:UNIX Resources – Running Vusers:六、各种不同场景设置并发的结果分析1、场景1 maxmium running vuser立刻初始化10个vuser,立即启动10个vuser,Run until completion共收到10个请求本次测试中最大同时online vuser为3个,平均每秒3.333点击数,也就是共执行了3秒左右的测试时间2、场景2 start vuser rule立即初始化vuser,每隔1s启动一个vuser,run until completion实际收到10个请求并完成请求,这里说个问题:一个vuser请求结束后就不再参与下一次请求测试本次测试最大同时online vuser数位0,应该是请求量太少10个,测试时间又长10s,导致这个数据,平均每秒点击0.909本次测试的目的:1)、start vuser中simultaneously同时地与有规律渐进启动vuser的区别,后者在vuser启动后即可进入请求(hits点击动作),也就多出一定的duration时间2)、对比场景1我们可以了解stop-simultaneously规则意味着vuser在duration 一结束就停止hits3、场景3 duration and stop rule立即初始化10vuser,立即启动10vuser,run for 30s,stop all vuser simultaneously,这里主要测试duration和stop的起什么效果在30s内,应该是(10+30)s内完成1770次请求,每个vuser在完成一个请求后可以继续发出相同的请求直到duration30s时间结束,并根据stop规则停止请求我们也注意到summary上面分析的duration真正时间是40seconds,本次测试最大同时online vuser为 10,总请求数为1770,平均每秒43.171请求数本次测试的目的:1):duration参数允许vuser直请求直到被stop规则停止2):maximum running vusers并非最大并发vuser,而仅仅是当次测试中最大同时在线的vuser数(在线意味着user一直连接着,并一直请求vuser script中action指定的操作行为)4、场景4被我删除了5、场景5 initialize vuser before run6、场景6 initialize simultaneously7、场景 7 initialize N vusers per X seconds (N ,X 常数)5、6、7场景说明initialize vuser的方案中initialize simultaneously和initialize vuser before run规则基本是瞬间完成vuser的初始化(不论是all vuser init=>start rule=>run或是foreach(one vuser=>init)=>start rule=>run),而采用规则2初始化vuser则会花费一定的时间在初始化用户(模拟登录输入操作花费的时间吗?),其导致的主要后果就是hits per second就会降低,因为测试时间变长了;一般测试并发的场景需要设置集合点,而且需要一次性初始化vuser否则lr默认50个vuser缓慢初始化8、场景8 stop ruleInitialize all vuser simultaneously,start 10 vusers per 1s,duration 10s,stop 10vusers per 1s实际请求1400我们也看到duration时长为30s,也就是包含start和stop vusers的时长,毕竟不是瞬间所有vuser run or stop;本次测试目的:stop 规则不建议stop simultaneously ,实际用户不可能在同一时刻退出连接或请求9、场景9。
Loadrunner11简单压测接口教程
Loadrunner11简单压测接⼝教程⼀、需求使⽤Loadrunner压测⽬标接⼝,要求⽀持1000并发数。
⽬标接⼝:返回结果:结果返回中code的值为1则为保存成功,为4001则为参数异常,为0时则是保存异常。
执⾏设备:Win10(教育版),Loadrunner11破解中⽂版⼆、概述使⽤Loadrunner进⾏压⼒测试⼀般分为3步,第⼀是创建/编辑脚本,第⼆是运⾏负载测试,第三是分析测试结果。
三、创建/编辑脚本点击“创建/编辑脚本”,打开HP Virtual User Generator窗⼝。
点击“新建脚本”或者打开已有的脚本选择协议类型,这⾥选择Web(HTTP/HTML)类型,新建⼀个脚本。
点击“创建”后,会出现录制的对话框。
因我们是提交请求给接⼝,再接受返回值即可。
因此⽆需录制,我们⼿动添加脚本即可。
接下来我们在Action⾥⾯添加脚本,内容为:Action(){web_reg_save_param("return_code","LB=\"code\":","RB=,",LAST);lr_start_transaction("发送请求事务");web_submit_data("web_submit_data","Action=https:///digitaldata/api/signer/1.0/signerRegist","Method=POST","TargetFrame=","Referer=","RecContentType=application/json",ITEMDATA,"Name=signerName", "Value=xx", ENDITEM,"Name=signerType", "Value=个⼈", ENDITEM,"Name=country", "Value=cn", ENDITEM,"Name=organization", "Value=xxx", ENDITEM,"Name=organizationUnit", "Value=xxx", ENDITEM,"Name=signerIDType", "Value=⾝份证", ENDITEM,"Name=signerIDNo", "Value=xxx", ENDITEM,LAST);lr_end_transaction("发送请求事务", LR_AUTO);if (atoi(lr_eval_string("{return_code}"))==1){lr_output_message("操作成功");}else{lr_output_message(lr_eval_string("{return_code}"));}return0;}脚本的简单解释:web_reg_save_param:主要是获取返回值中某些符合规则的值。
LoadRunner11操作手册
第一章Loadrunner11简介随着软件开发技术不断发展和日益成熟,现代应用程序也越来越复杂。
应用程序可以利用数十个甚至数百个组件完成以前用纸或人工完成的工作。
在业务处理过程中,应用程序复杂度与潜在故障点数目之间有直接的关联。
这使得找出问题根本原因变得越来越困难。
软件惊人的变化速度和激增的复杂性为软件开发过程带来了巨大的风险。
严格的性能测试是量化和减少这种风险最常见的策略。
使用HP LoadRunner 进行自动化负载测试是应用程序部署过程中一个非常重要的环。
自动化性能测试是利用产品、人员和流程来降低应用程序、升级程序或补丁程序部署风险的一种手段。
自动化性能测试的核心是向预部署系统施加工作负载,同时评估系统性能和最终用户体验。
一次组织合理的性能测试可以让用户清楚以下几点:➢应用程序对目标用户的响应是否足够迅速?➢应用程序是否能够游刃有余地处理预期用户负载?➢应用程序是否能够处理业务所需的事务数?➢在预期和非预期用户负载下应用程序是否稳定?➢是否能够确保用户在使用此应用程序时感到满意?通过回答这些问题,自动化性能测试可以量化业务状况的更改所带来的影响。
这反过来也可以让用户清楚部署此应用程序的风险。
有效的自动化性能测试可帮助您做出更加明智的发行决定,防止发行的应用程序带来系统停机和可用性问题。
LoadRunner 包含哪些组件LoadRunner 包含以下组件:➢Virtual User Generator 录制最终用户业务流程并创建自动化性能测试脚本,即Vuser 脚本。
➢Controller 组织、驱动、管理并监控负载测试。
➢Load Generator 通过运行Vuser 产生负载。
➢Analysis 用于查看、剖析和比较性能结果。
➢Launcher 使您可以从单个访问点访问所有LoadRunner 组件。
LoadRunner 术语场景场景文件根据性能要求定义每次测试期间发生的事件。
Vuse 在场景中,LoadRunner 用虚拟用户(Vuser)代替真实用户。
LoadRunner11教程完整版
1.1创建负载测试Controller 是中央控制台,用来创建、管理和监控您的测试。
您可以使用 Controller 来运行模拟实际用户操作的示例脚本,并通过让一定数量的 Vuser 同时执行这些操作,在系统上产生负载。
1.打开HP Loadrunner11窗口选择开始>程序>HP Loadrunner11>Loadrunner11,这时将打开Loadrunner11.00的窗口,如下图所示:2.打开Controller在Loadrunner11Launcher窗格中单击Run Load Tests(运行负载测试),默认情况下,Loadrunner11 Controller打开时将显示‘新建场景’对话框。
单击取消。
Scenarios---场景3.打开示例测试在Controller菜单中打开,选择文件---打开,然后打开Loadrunner安装位置\tutorial 目录中的demo_scenario.lrs。
将打开 LoadRunner Controller 的“设计”选项卡,demo_script 测试将出现在“场景组”窗格中。
您可以看到已经分配了 10 个 Vuser 来运行此测试。
图2.2.1备注:如果没有将教程安装在默认 LoadRunner 安装目录下,脚本路径会出错(脚本路径将显示为红色)。
要输入正确的路径,请选择脚本并单击向下箭头。
单击浏览按钮并转至<LoadRunner 安装位置>\tutorial 目录中的demo_script,然后单击确定。
2.2运行负载测试在图2.2.1中,运行选项卡中,点击开始场景按钮,将出现Controller运行视图,Controller开始运行场景。
在场景组窗格中,可以看到Vuser逐渐开始运行并在系统中生成负载,您可以通过联机图像看到服务器对Vuser操作的响应情况。
图2.2.22.3监控负载测试在应用程序中生成负载时,您希望实时了解应用程序的性能以及潜在的瓶颈,使用LoadRunner 的一套集成监控器可以评测负载测试期间系统每一层的性能以及服务器和组件的性能。
LoadRunner11-中文教程
HP LoadRunner Windows 版软件版本:11.00教程文档发布日期:2010 年 10 月软件发布日期:2010 年 10 月法律声明担保随 HP 产品及服务提供的明示性担保声明中列出了适用于此 HP 产品及服务的专用担保条款。
本文中的任何内容均不构成额外的担保条款。
HP 对本文中的技术或编辑错误以及疏漏不负任何责任。
本文中的信息如有更改,恕不另行通知。
受限权利机密计算机软件。
必须有 HP 授予的有效许可证,方可拥有、使用或复制本软件。
根据 FAR 12.211 和 12.212 中有关“商业计算机软件”、“计算机软件文档”和“商业物品技术数据”条款的规定,授权给美国政府使用,使用需遵守供应商的标准商业许可证规定。
版权声明© Copyright 1993 - 2010 Hewlett-Packard Development Company, L.P.商标声明Microsoft® 和 Windows® 是 Microsoft Corporation 在美国的注册商标。
2文档更新本文档的标题页包含以下标识信息:•软件版本号,表示软件的版本。
•文档发布日期,每次更新文档时更改。
•软件发布日期,表示此版软件的发布日期。
要查找最近的更新或验证使用的文档是否为最新版本,请访问:/selfsolve/manuals此网站要求您注册获取 HP Passport 并登录。
要注册获取 HP Passport ID,请访问:/passport-registration.html或单击 HP Passport 登录页面上的 New users - please register(新用户-请注册)链接。
如果您订阅相应的产品支持服务,还会收到更新版本或新版本。
请与 HP 销售代表联系了解详情。
3支持请访问 HP Software 支持网站:/go/hpsoftwaresupport此网站包含联系信息以及 HP Software 所提供的产品、服务和支持的详细信息。
loadrunner学习入门到精通性能测试名词解释(一)
第一课软件性能测试的基本概念引言:亲爱的同学们,欢迎你们来到性能测试教堂,这里将是带领你进入性能测试领域的一个开端。
也许你是满怀欣喜和希望,但我想告诉你,这里也许不如你想想的那么美好,也不会有你想想的那么迷茫,只要你有这个执着的心,能够静心凝神的去关注,去思考,去进取,你的梦想,将不在是梦想,一切皆有可能。
也许有哪一天,你也可以在开发面前自豪的说,我们并不是你们所指的就会在页面上指指点点的,没有一点技术含量的小无知了。
说了这么多了,就不废话了,让我们赶快行动吧!开始我们的第一个章节,了解性能名词解析,为你的今后打下坚实的基础。
1.什么是软件性能?答:性能是一种指标,表明软件系统或构件对于其及时性要求的符合程度;其次,性能是软件产品的一种特性,可以用时间来进行度量。
2.什么是软件呈现时间和软件响应时间?答:用户直接感受到时间就是呈现时间,系统作出处理反应的时间就是响应时间。
3.软件测试人员测试性能时的关注点有哪些?答:首先考虑系统在额定用户访问的情况下状态如何?服务器的cpu使用情况是不是已经达到了最大值?是否还有可用的内存?应用服务器的状态如何?我们设置的jvm(交互式应用)可用内存是否足够?数据库的状态如何?是否需要一些调整?4.什么是并发用户,什么是集合点?答:并发用户是指一次性提交的用户数量(举一个墙面可以承受多少个皮球击打的例子)。
集合点是一个并发访问的点,设置集合点可以在客户运行到提交数据集合点时,loadrunner就会检查同时有多少用户运行到了集合点,如果不到规定的数目,就会让到了集合点的用户等待,如果都到了,可以让规定数目的用户同时提交数据,起到并发访问的目的。
5.下面说一个并发访问用户峰值的计算公式答:c=nl/t c1=c+3√c说明:c是平均的并发用户数,n是login session的数量;l是login session的平均长度;t是指考察时间段的长度。
C1是指并发用户的峰值。
Loadrunner使用手册整理版
一、Loadrunner简介LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具。
通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。
通过使用LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
目前企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且由不同供应商提供软件和硬件产品。
难以预知的用户负载和愈来愈复杂的应用环境使公司时时担心会发生用户响应速度过慢,系统崩溃等问题。
这些都不可避免地导致公司收益的损失。
Mercury Interactive 的 LoadRunner 能让企业保护自己的收入来源,无需购置额外硬件而最大限度地利用现有的IT 资源,并确保终端用户在应用系统的各个环节中对其测试应用的质量,可靠性和可扩展性都有良好的评价。
LoadRunner 是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。
LoadRunner 的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的查找和发现问题。
此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。
负载测试通常由五个阶段组成:计划、脚本创建、场景定义、场景执行和结果分析。
.(1)计划负载测试:定义性能测试要求,例如并发用户的数量、典型业务流程和所需响应时间。
.(2)创建 Vuser 脚本:将最终用户活动捕获到自动脚本中。
选择协议录制脚本编辑脚本检查修改脚本是否有误(3)定义场景:使用LoadRunner Controller 设置负载测试环境。
创建场景(Scenario)选择脚本设置机器虚拟用户数设置Schedule (场景计划表)如果模拟多机测试,设置Ip Spoofer (ip 欺骗)(4)运行场景:通过LoadRunner Controller 驱动、管理和监控负载测试。
Loadrunner进行性能测试的步骤
Loadrunner进⾏性能测试的步骤Loadrunner 11是⼀款免费的性能测试⼯具,他包含三个⼤模块•使⽤VuGen:创建脚本•运⽤Controller:设置⽅案•查看Analysis:分析测试结果结合软件测试的流程可以知道使⽤LoadRunner进⾏性能测试的过程如下:•规划测试:分析应⽤程序、定义测试⽬标、⽅案实施•创建Vuser脚本•创建⽅案:⽅案包括运⾏Vuser 的计算机的列表、运⾏Vuser 脚本的列表以及在⽅案执⾏期间运⾏的指定数量的Vuser 戒Vuser 组。
•运⾏⽅案:可以指⽰多个Vuser 同时执⾏任务,以模拟服务器上的⽤户负载。
可以通过增加戒减少同时执⾏任务的Vuser 的数量杢设置负载级别。
•监视⽅案:使⽤LoadRunner 联机运⾏时、事务、系统资源、Web 服务器资源、数据库服务器资源、⽹绚延时、流媒体资源、防⽕墙服务器资源、Java 性能等、应⽤程序部署和中间件性能监视器杢监视⽅案的执⾏•分析测试结果:在⽅案执⾏期间,LoadRunner 将记录丌同负载下的应⽤程序性能。
可以使⽤LoadRunner 的图和报告杢分析应⽤程序的性能。
根据性能测试计划,搭建好测试环境后,我们使⽤lr进⾏性能测试的步骤如下:1.使⽤VuGen录制vu要执⾏的测试脚本并完善精简。
录制过程可能有点⿇烦,所以录制成功后最好先做好备份,然后使⽤其中的⼀份进⾏完善脚本的操作,其中需要完善的项⽬有:参数化、关联、检查点、集合点、思考时间、事务等。
再完善了脚本后最后⼀步对脚本进⾏精简⼯作。
(录制的脚本回放时不出错不代表脚本是正确的,单⽤户运⾏脚本不出错也不代表多⽤户运⾏时不出错)录制:设置好录制选项和运⾏时选项,录制好脚本后做好备份⼯作。
参数化:a.为什么做参数化(需要⽤户提供不同的数据才能正常运⾏,这个是从脚本⾃⾝⾓度);b.哪些地⽅需要做参数化;3.怎么做参数化。
a.如果⽤户在录制脚本过程中,填写提交了⼀些数据,返些操作都被记录到了脚本中。
Loadrunner中参数的设置
Loadrunner中参数的设置在做负载或者压力测试时,很多人选择使用了Loadrunner测试工具。
该工具的基本流程是先将用户的实际操作录制成脚本,然后产生数千个虚拟用户运行脚本(虚拟用户可以分布在局域网中不同的PC 机上),最后生成相关的报告以及分析图。
但是在录制脚本的过程中会遇到很多实际的问题,比如不同的用户有不同的使用数据,这就牵涉到参数的设置问题。
本文就Loadrunner中参数的设置进行说明,希望对大家有所帮助。
录制程序运行的过程中,VuGen(脚本生成器)自动生成了包含录制过程中实际用到的数值的脚本。
如果你企图在录制的脚本中使用不同的数值执行脚本的活动(如查询、提交等等),那么你必须用参数值取代录制的数值。
这个过程称为参数化脚本。
本文主要包括如下内容:理解参数的局限性、建立参数、定义参数的属性、理解参数的类型、为局部数据类型设置参数的属性、为数据文件设置参数的属性、从已经存在的数据库中引入数据。
除了GUI,以下的内容适合于各种类型的用户脚本。
一、关于参数的定义在你录制程序运行的过程中,脚本生成器自动生成由函数组成的用户脚本。
函数中参数的值就是在录制过程中输入的实际值。
例如,你录制了一个Web应用程序的脚本。
脚本生成器生成了一个声明,该声明搜索名称为“UNIX”的图书的数据库。
当你用多个虚拟用户和迭代回放脚本时,也许你不想重复使用相同的值“UNIX”。
那么,你就可以用参数来取代这个常量。
结果就是你可以用指定的数据源的数值来取代参数值。
数据源可以是一个文件,也可以是内部产生的变量。
用参数表示用户的脚本有两个优点:① 可以使脚本的长度变短。
② 可以使用不同的数值来测试你的脚本。
例如,如果你企图搜索不同名称的图书,你仅仅需要写提交函数一次。
在回放的过程中,你可以使用不同的参数值,而不只搜索一个特定名称的值。
参数化包含以下两项任务:① 在脚本中用参数取代常量值。
② 设置参数的属性以及数据源。
事务、检查点、集合点
1、集合点:插入集合点是为了衡量在加重负载的情况下的性能情况。
在计划中,可能会要求系统能够承受1000 人同时提交数据,在LoadRunner 中可以通过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,LoadRunner 就会检查同时有多少用户运行到集合点,如果不到1000 人,LoadRunner 就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到1000 人时,LoadRunner 命令1000 人同时去提交数据,从而达到计划中的需求。
2、事务(Transaction):为了衡量的性能,我们需要定义事务。
比如:我们在脚本中有一个数据查询操作,为了衡量服务器执行查询操作的性能,我们把这个操作定义为一个事务,这样在运行测试脚本时,LoadRunner 运行到该事务的开始点时,LoadRunner 就会开始计时,直到运行到该事务的结束点,计时结束。
这个事务的运行时间在结果中会有反映。
插入事务操作可以在录制过程中进行,也可以在录制结束后进行。
LoadRunner 运行在脚本中插入不限数量的事务。
问题:事务的start_transaction与end_transaction是否可以嵌套?3、参数化输入如果用户在录制脚本过程中,填写提交了一些数据,比如要增加数据库记录。
这些操作都被记录到了脚本中。
当多个虚拟用户运行脚本时,都会提交相同的记录,这样不符合实际的运行情况,而且有可能引起冲突。
为了更加真实的模拟实际环境,需要各种各样的输入。
参数化输入是一种不错的方法。
[信息来自"岁月联盟"]4、参数化包含以下两项任务:资源来自"岁月联盟"①在脚本中用参数取代常量值。
信息来自"岁月联盟"②设置参数的属性以及数据源。
(注:不是所有的函数都可以参数化的。
)5\参数的类型。
["岁月联盟"]DateTime:很简单,在需要输入日期/时间的地方,可以用DateTime 类型来替代。
LoadRunner11BS压力测试超级详细的电子教程新手必看精品PPT课件
B/S压力测试
简介
LoadRunner是一种预测系统行为和性能的负载 测试工具。通过以模拟上千万用户实施并发负载 及实时性能监测的方式来确认和查找问题, LoadRunner能够对整个企业架构进行测试。
功能
LoadRunner生成虚拟用户,以虚拟用户的方式 模拟真实用户的业务操作行为。它先记录下业务 流程(如下订单或机票预定),然后将其转化为测 试脚本。
个虚拟用户都会按照相同的顺序读取。 random:每一个vuer都随机在参数列表选
择一个参数。 unique:每一个vuer使用的参数都是唯一
的(即均不相同的)
参数设置
更新值的时间: Each iteration:在每一次迭代后更新 Each occurrence:每次出现时该参数时更
新一个新的值。 Once:不管迭代多少次该参数的值一直保
解 决 方 案
解 决 方 案
知识的回顾
1)b/s压力测试使用的协议 2)录制脚本 3)模拟场景 4)迭代规则 5)集合点 6)参数 7)事务
结束语
当你尽了自己的最大努力时,失败也是伟大的, 所以不要放弃,坚持就是正确的。
When You Do Your Best, Failure Is Great, So Don'T Give Up, Stick To The End
问题来了3
vuer是陆陆续续执行的,而不是同时执行。 这与我们实际期望有所出入。
知识背景
集合点: 集合点是使模拟用户到达集合点后全部等待,
等到达一定数量的vuer就绪后同时执行。
作用: 能有效、准确地模拟最大并发的环境
解 决 方 案
解 决 方 案
问题来了4
使用LoadRunner进行性能自动化测试的方法和技巧
使用LoadRunner进行性能自动化测试的方法和技巧LoadRunner是一款常用的性能测试工具,它可以模拟多种负载条件下的应用程序行为,帮助开发人员检测和解决性能问题。
本文将介绍使用LoadRunner进行性能自动化测试的方法和技巧,帮助读者更好地利用LoadRunner提升应用程序的性能。
一、LoadRunner简介LoadRunner是由Micro Focus公司开发的一款性能测试工具,它可以模拟多种负载条件下的应用程序行为,帮助开发人员评估应用程序的性能与稳定性。
LoadRunner提供了丰富的功能和工具,包括脚本录制、负载生成、性能监控和报告分析等,可用于测试各类应用程序,如Web应用、移动应用和企业应用等。
二、性能自动化测试的基本步骤1. 确定测试目标和需求:在进行性能自动化测试之前,需要明确测试目标和需求,例如确定负载要求、并发用户数、响应时间等指标,以便后续的测试设计和执行。
2. 脚本录制与回放:LoadRunner提供了脚本录制功能,可以通过录制用户在应用程序上的操作来生成测试脚本。
在录制完成后,可以使用脚本回放功能对录制的操作进行模拟,以验证应用程序在负载条件下的性能表现。
3. 参数化和数据驱动:在进行性能测试时,往往需要模拟多个用户的行为。
为了实现这一目标,可以通过参数化和数据驱动的方式来设置不同用户之间的差异。
LoadRunner提供了参数化工具和数据驱动功能,可以轻松地设置和管理测试数据。
4. 脚本调优和编辑:在录制和回放过程中,可能会出现一些不必要或重复的操作,这会影响测试的准确性和效率。
通过对脚本的调优和编辑,可以剔除不必要的操作,减少脚本的体积和执行时间。
5. 负载生成和分析:LoadRunner提供了多种负载测试模式,可以模拟不同负载条件下的应用程序性能。
通过调整负载模式和负载参数,可以对应用程序进行不同负载场景的测试。
测试完成后,可以使用LoadRunner提供的分析工具对测试结果进行统计和分析,以便找出性能问题和瓶颈。
LoadRunner使用手册
LoadRunner使用手册测试中心刘艳会1 LoadRunner概要介绍LoadRunner®是一种预测系统行为和性能的工业标准级负载测试工具。
通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。
通过使用LoadRunner ,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
目前企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且由不同供应商提供软件和硬件产品。
难以预知的用户负载和愈来愈复杂的应用环境使公司时时担心会发生用户响应速度过慢,系统崩溃等问题。
这些都不可避免地导致公司收益的损失。
Mercury Interactive 的LoadRunner 能让企业保护自己的收入来源,无需购置额外硬件而最大限度地利用现有的IT 资源,并确保终端用户在应用系统的各个环节中对其测试应用的质量,可靠性和可扩展性都有良好的评价。
LoadRunner 是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。
LoadRunner 的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的查找和发现问题。
此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。
1.1 轻松创建虚拟用户使用LoadRunner 的Virtual User Generator,您能很简便地创立起系统负载。
该引擎能够生成虚拟用户,以虚拟用户的方式模拟真实用户的业务操作行为。
它先记录下业务流程(如下订单或机票预定),然后将其转化为测试脚本。
利用虚拟用户,您可以在Windows ,UNIX 或Linux 机器上同时产生成千上万个用户访问。
所以LoadRunner能极大的减少负载测试所需的硬件和人力资源。
另外,LoadRunner 的TurboLoad 专利技术能提供很高的适应性。
Loadrunner的使用及结果分析
使用率保持在70%-85%较理想,低了说明其它 瓶颈(或大型程序对CPU利用率不足)
Processor queue>2且CPU使用率过低说明系 统架构不理想
Processor queue>2且CPU使用率过高说明 CPU瓶颈
C/S系统中,CPU,内存若某一项根据用户请求 的增加而未发生增加一般是由硬件瓶颈造成
吞吐量( Throughput )
吞吐量极限为网络带宽的10%左右,若均值低于5% , 基本可视为网络无瓶颈
一般随着负载的增加呈线性增长
每秒连接数( Connections Per Second )
当添加系统负载,而每秒连接数无明显增加时,一般为 服务器,数据库连接池限制
录制脚本:将所有功能录制在一个脚本中的不同 事务中
内存(Availiable bytes)
内存随着固定用户,固定操作,持续一段时间后 可用内存明显减少一般是发生内存泄露(稳定性 测试)
平均响应时间( Average Transaction Response Time )
衡量系统性能的重要参数 检查其有效性时一般采用对比,其他参数校验
对比:与不同负载时进行数值对比,一般会呈现线性增 长(针对大型软件),出现状态拐点时进行参数校验 其他参数校验:获取响应时间时看其他参数是否异常(比 如CPU,内存,吞吐量等)
状态
上升:指数函数一般性能较差,另一种为性能理想或系 统瓶颈
下降:出现情况比较少,一般是由于服务异常 水平:负载不够或瓶颈
周期性:波动较大的图形注意周期性
平稳状态线:状ห้องสมุดไป่ตู้相对比较稳定的状态 拐点:相对平稳状态间的拐点
LoadRunner11-遇到问题及解决办法(汇总)
LoadRunner11-遇到问题及解决办法(汇总)LoadRunner11-遇到问题及解决办法1、LoadRunner超时错误:在录制Web服务器端,如果超过120秒服务器协议脚本回放时超时情况经常出现,产⽣错误的原因也有很多,解决的⽅法也不同。
错误现象1:Action.c(16): Error -27728: Step download timeout (120 seconds) has expired when downloading non-resource(s)。
错误分析:对于HTTP协议,默认的超时时间是120秒(可以在LoadRunner中修改),客户端发送⼀个请求到端还没有返回结果,则出现超时错误。
解决办法:⾸先在运⾏环境中对超时进⾏设置,默认的超时时间可以设置长⼀些,再设置多次迭代运⾏,如果还有超时现象,需要在“Runtime Setting”>“Internet Protocol:Preferences”>“Advanced”区域中设置⼀个“winlnet replay instead of sockets”选项,再回放是否成功。
2.LoadRunner脚本中出现乱码:在录制Web协议脚本时出现中⽂乱码,在回放脚本时会使回放停⽌在乱码位置,脚本⽆法运⾏。
错误现象:某个链接或者图⽚名称为中⽂乱码,脚本运⾏⽆法通过。
错误分析:脚本录制可能采⽤的是URL-based script⽅式,如果程序定义的字符集合采⽤的是国际标准,脚本就会出现乱码现象。
解决办法:重新录制脚本,在录制脚本前,打开录制选项配置对话框进⾏设置,在“Recording Options”的“Advanced”选项⾥先将“Surport Charset”选中,然后选中⽀持“UTF-8”的选项。
3.LoadRunner HTTP服务器状态代码:在录制Web协议脚本回放脚本的过程中,会出现HTTP服务器状态代码,例如常见的页⾯-404错误提⽰、-500错误提⽰。
LoadRunner11实例性能测试解析
LoadRunner11实例性能测试1.LoadRunner8.1基础 (2)1.1术语 (2)1.2组件与测试流程 (2)2.生成脚本 (4)2.1应用程序要求 (4)2.1录制脚本 (5)2.2运行脚本 (7)2.3脚本优化 (8)2.3.1关联 (8)2.3.2参数化 (10)3.运行负载测试 (12)3.1生成负载 (12)3.2运行负载测试 (13)3.3运行视图概述 (14)4.分析结果 (16)4.1 Analysis 窗口概述 (16)4.2分析窗口数据 (17)4.2.1查看事务平均响应时间 (18)4.2.2 研究Vuser的行为 (19)5.一些体会 (23)1.LoadRunner11基础1.1术语➤场景:场景是一种文件,用于根据性能要求定义在每一个测试会话运行期间发生的事件。
➤Vuser:在场景中,LoadRunner 用虚拟用户或Vuser 代替实际用户。
Vuser 模拟实际用户的操作来使用应用程序。
一个场景可以包含几十、几百甚至几千个 Vuser。
➤Vuser脚本:Vuser 脚本用于描述 Vuser 在场景中执行的操作。
➤事务:要度量服务器的性能,需要定义事务。
事务表示要度量的最终用户业务流程。
1.2组件与测试流程LoadRunner 包含下列组件:➤虚拟用户生成器:用于捕获最终用户业务流程和创建自动性能测试脚本(也称为虚拟用户脚本)。
➤Controller:用于组织、驱动、管理和监控负载测试。
➤负载生成器:用于通过运行虚拟用户生成负载。
➤Analysis:有助于查看、分析和比较性能结果。
➤Launcher:为访问所有 LoadRunner 组件的统一界面。
负载测试通常由五个阶段组成:计划、脚本创建、场景定义、场景执行和结果分析。
➤计划负载测试:定义性能测试要求,例如并发用户的数量、典型业务流程和所需响应时间。
➤创建 Vuser 脚本:将最终用户活动捕获到自动脚本中。
loadrunner中添加检查点图文详解
Loadrunner中添加检查点在脚本录制完成,回放没有错误后,就可以在脚本中添加检查点了。
一、这里说明两种添加检查点的方法1)在“树”中添加首先要点击如图所示的“树”,左面就会出现所录脚本的所有快找,选择一个你需要设置检查点的快找,点击右键,会出现:在之前插入、在之后插入。
在之前插入:在该操作执行之前插入在之后插入:在该操作执行之后插入选择在执行前后插入后,会出现添加步骤窗口,在“web检查”中测试检查点设置。
2)在“脚本”中添加。
1.点击脚本图标2.页面会切换成脚本的页面,在代码中找到需要添加检查点的位置,光标定位到这里,点击右键—插入—新建步骤。
3.点击新建步骤后,会出现添加步骤窗口,在“web检查”中可以设置文本检查和图片检查。
二、1)添加文本检查点。
“一”中的两种方法都可以添加检查点,这里先讲解“文本检查”1.搜索:键入要验证页面存在与否的字符串,如:页面中出现的文字等。
2.其右侧:页面中可能多次出现该字符串,其右侧则表示验证其右侧是否存在“搜索”中所键入的内容,如:验证页面中ABC右侧是否存在DEF,则需要在“搜索”中键入DEF,在“其右侧”中键入ABC。
3.其左侧:与其右侧相反,表示验证其左侧是否存在“搜索”中所键入的内容。
4. 常规中检查点的操作名5.在树中所添加的文本检查点在脚本中所添加的文本检查点2)添加图像检查点页面源文件中的alt属性和src属性1.备用图像名称(ALT属性):为输出纯文字的参数属性,因为网络等原因,无法渲染图片时,采用的一种补救措施,这时就会显示alt(替换)文字。
2.图像服务器文件名(SRC属性):这里就是输入页面中你所要检查的图片的相对路径。
在你所要添加检查点的页面右键—查看源文件中找到该图片的相对路径即可。
注:这里所输入的相对路径需要加上如图中圈住的双引号中的内容3.“树”中所添加的图片检查点“脚本”中所添加的图片检查点三、检查点添加完成后,需要保存脚本,并且需要启用图像和文本检查。
loadrunner11使用代理录制app脚本的配置方法--CS系统也可以参考该方法录制
app愈发流行的现在,手机的app性能测试也出现了。
不多说了直接上正题。
首先,loadrunner12有了手机端app在手机端录制代码的,试过了,不好用等他们在完善程序吧。
我们要说的是通过loadrunner代理来录制代码的方法。
是这样loadrunner早就提供这种方法,就是其他客户端比如手机app把请求发到loadrunner 上再由loadrunner转给服务器端,这样loadrunner虽然不能直接运行app但是可以监控其数据交互从而录制内容。
大体网络拓扑是这样的:上面的是原来的网络图,下面的是代理录制的网络图,流程就是手机通过局域网把请求发送到LR11所在的电脑的某个端口上,LR11会监控这个端口然后把数据记下来在转发给服务器,服务器的相应发回LR之后LR记下来在通过这个端口发给手机,中间数据交互LR记住了也相当于录制了。
所以我们需要1手机和LR所在电脑应该能够通过内网连接,并且手机能够往一个电脑特定端口发数据。
2 电脑安装loadrunner 并且设置代理服务的远端为被测软件地址端口号,近端端口与手机代理端口一致。
基本流程是以下几步1首先有一台安装loadrunner的电脑本次以LR11为例,然后这台电脑上还得能提供无线网络比如插个360wifi。
如图所示,我的电脑的,这里egg1就是我的无线wifi的名字以及ip地址2然后我们需要启动Loadrunner了这里我们选择win32application然后启动的程序是loadrunner目录下bin文件夹下面的wplus_init_wsock.exe 这个是loadrunner自带的代理程序,但是这还没完,我们点击Option到polt mapping下面,右侧最上面找到socket level data,然后选择New Entry上面填写的是目标地址|端口,就是被测软件所在地址,下面是loadrunner监控本机的端口就是手机把数据发到这个端口上,记得下面填一个不常用的8899啥的,以免冲突。
LoadRunner中的检查点
LoadRunner中的检查点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. 脚本执行到此处,若在页面上找到了这几个字符串,那脚本继续执行下去;若没有找到,脚本将在此报错并且结束。
LOADRUNNER基础教程
correlation) 四、关联(correlation)- Rule Correlation
使用Rule Correlation的步骤 的步骤: 使用Rule Correlation的步骤: 启用auto auto1. 启用auto-correlation 点选VuGen的Tools->Recording Options->Internet Protocol>Correlation,勾选Enable cor relation during reco rding,以启用自动关联。 假如录制的应用系统属于内建关联规则的系统,如AribaBuyer、BlueMartini、BroadVision、 InterStage、mySAP、NetDynamics、Oracle、PeopleSoft、Siebel、SilverJRunner等,请勾 选相对应的应用系统。 或者也可以针对录制的应用系统加入新的关联规则,此即为使用者自订的关联规则。 设定当VuGen侦测到符合关联规则的数据时,要如何处理: Issue a pop-up message and let me decide online:跳出一个讯息对话窗口,询问您 是否要建立关联。 Perform correlation in sceipt:直接自动建立关联 2. 录制脚本 开始录制脚本,在录制过程中,当VuGen侦测到符合关联规则的数据时,会依照设定建立关联.。
Load Runner 基础教程
0
检查点 参数化 集合点(Rendezvous) 集合点(Rendezvous) 关联(Correlation) 关联(Correlation) RunRun-Time Settings设置 Settings设置
1
一、检查点
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、设置集合点集合点可以控制各个Vuser以便在同一时刻执行任务,借助集合点,可以在loadrunner中实现真正意义上的完合一样的并发。
当使用集合点时,可以在系统上模拟较重的用户负载。
当某个Vuser到达该集合点时,Controller会将其保留,直到参与该集合的全部Vuser都到达。
当满足集合条件时,Controller释放Vuser,这样可以产生非常密集的同一类用户操作或请求。
Vuser从集合释放后,将执行脚本中的下一个任务。
集合点一般会创建在用户事务的开始标志彰。
只能在脚本的Action部分(而不是init或end部分)添加集合点。
Lr_rendezvous(“集合点名”)如何设置集合点-录制登录testlink脚本为例:1.从菜单中选择运行Virtual User Generator,在New Virtual User窗口选择Web (HTTP/HTML)协议,点击“Create”按钮。
2.在弹出的窗口中输入要录制的url地址http://192.168.1.251/testlink/login.php?note=expired,并选择"Record into Action"为vuser_init,点击OK正式开始录制,这时会自动打开登录主页面。
3.点击工具条“暂停”按钮暂停录制,并选择“Record into Action”为Action,在登录主页面输入用户名XXX,密码XXX,点击“login”按钮进行登录,登录成功后点击工具条“停止”按钮结束录制,登录脚本录制成功。
4.在脚本Action部分右键选择“Insert→Start Transaction”弹出一个对话框,输入一个事务名字login,点击OK,“Start Transaction”插入完成后,还需要插入一个“End Transaction”,用以标识事务结束。
5.在开始事务前插入集合点,右键选择“Insert”→“rendezvous”弹出一个对话框,输入集合点名字为login,点击OK集合点设置完毕。
二、手动设置检查点为了检查web服务器返回的网页结果是否正确,VuGen支持在脚本中插入Test/Imag检查点。
检查点有两种图片和文字。
可以用三个函数实现:web_find()web_reg_find()web_image_check()1.web_find()函数函数作用:在HTML页面中查找相应的内容参数举例:web_find("web_find","RighOf=a","LeftOf=b","What=name",LAST);参数解释:"web_find"定义该查找函数的名称;“LeftOf”和“RighOf=”用来定义查找字符的左右边界;“What=”定义查找内容。
例如上述参数举例中的意思就是在页面中查找左边界为b,右边界为a,内容为name的信息函数用法:该函数是在查找页面中的内容,所以要放在要查找的内容的后面。
注意事项:1.使用该函数时,要在Vuser->Run-Tme Settings中勾选Enable Image and text check,系统默认是不勾选该选项的。
2.函数只能在基于HTML模式录制的脚本中进行查找。
查找用户是否登录testlink成功信息-Testlink 1.8.5 [test desingner]1.切换到Tree view视图,选择action中树形菜单需要插入检查点的一项,然后点击鼠标右键,选择插入到该操作执行前Insert after,如图:2.在弹出的对话框中选择“Test Check”,点击“OK”出现Text Check Properties对话框,在“search for ”中填入需要查找信息“TestLink 1.8.5 : XXX [test designer]”, 点击“确定”完成添加text检查点。
3.切换到script view视图,可以看到插入test文本检查点函数web_find(),点击“回放”按钮进行搜索所要查询的文本,在replay Log日志中可以看到Action.c(38): "web_find" successful. 1 occurrence(s) of "TestLink 1.8.5 : XXX [test designer]" found(RightOf="", LeftOf="") [MsgId: MMSG-27196]Action.c(38): web_find was successful [MsgId: MMSG-26392]2、web_reg_find()函数函数作用:在缓存中查找相应的内容参数举例:web_reg_find("Search=Body","SaveCount=ddd","Text=aaa",LAST);参数解释:1.Search 用来定义查找范围,默认All,也可选择“headers”或body”部分2.SaveCount定义查找计数变量名称,该参数可以记录在缓存中查找内容出现的次数,可以使用该值,来判断要查找的内容是否被找到3.Text用来定义查找内容4.Fail if指定在任何情况下报错,有“NotFound”和“Found”两种选择A. web_reg_find("Text=testlink", "Fail=NotFound",LAST);或者B. web_reg_find("Text=testlink", "Fail=Found",LAST);代码思路:1.“testlink" 为你要检查的文本;2. 若是A代码:脚本执行到此处,若没有找到check的字符串,脚本将FAIL,并且停止执行下去。
反之,则一直执行下去。
3. 若是B代码:脚本执行到此处,若找到check的字符串,脚本将FAIL,并且停止执行下去。
反之,则一直执行下去。
函数用法:该函数是在缓存中查找相应的内容,所以要放在查找内容之前。
查找用户XXX是否登录testlink成功信息-Testlink 1.8.5 [test desingner]1.切换到Tree view视图,选择action中树形菜单需要插入文本检查点的一项,然后点击鼠标右键,选择插入到该操作执行前Insert before,如图:2.在弹出的对话框中选择“web_reg_find”,点击“OK”出现Find Text 对话框,在“search for specific text”中填入查找信息“TestLink 1.8.5 : XXX [test designer]”, 在“search in”设置查询范围默认“All”,定义Savecount计数变量为“regcheck”,Fail if选择“NotFound”点击“OK”完成添加test检查点。
3.切换到script view视图,可以看到插入test文本检查点函数web_reg_find(),点击“回放”按钮进行搜索所要查询的文本,在replay Log日志中可以看到Action.c(29):Registered web_reg_find successful for "Text=TestLink 1.8.5 : XXX [test designer]" (count=1) [MsgId: MMSG-26364]检查点-打印验证web_reg_find()函数:lr_start_transaction("login");web_submit_data("login.php_2","Action=http://192.168.1.251/testlink/login.php",…LAST);web_reg_find("Fail=NotFound", "Search=All", "SaveCount=regcheck", "Text=TestLink 1.8.5 : XXX [test designer]", LAST);web_url("index.php",...LAST);//判断regcheck是否大于1,如果大于1,检查结果正确,使用lr_output_message 打印,可以供调试时查看//如果检查结果错误,使用lr_error_ message打印,可以在control的errors中显示错误if(atoi(lr_eval_string("{regcheck}"))>0){lr_output_message("成功!");}else{lr_error_message("失败");}lr_end_transaction("login", LR_AUTO);3.web_image_check()函数函数作用:在页面中查找一个具体的图片。
参数说明:web_image_check("web_image_check","Alt=","Src=\'#\'" /span>参数解释:“Alt”和“Src”的值直接取该图片在网页源代码中相应参数的值。
src表示该图片文件的路径,alt表示图片的替代显示文本(在需要检查的页面上右键查看源文件,找到该图片的src和alt值)函数用法:该函数是在缓存中查找相应的内容,所以要放在查找内容之前。
注意事项:使用该函数时,要在Vuser->Run-Tme Settings中勾选Enable Image and text check,具体操作请看web_find()中的注意事项例如:查找用户使用testlink图标-company_logo.png1.切换到Tree view视图,选择action中树形菜单需要插入文本检查点的一项,然后点击鼠标右键,选择插入到该操作执行前Insert before,如图:2.在弹出的对话框中选择“Image Check”,点击“OK”出现Image Check Properties对话框,在“ALT attr”中填入图片的替代显示文本“Company logo”, 在“SRC att”中填入图片的路径“gui/themes/default/images/company_logo.png”点击“OK”完成添加图片检查点。