`
liyiye
  • 浏览: 421486 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

LoadRunner脚本编写(5)-- 检查点,关联等函数

阅读更多

本文接着前面脚本编写4 http://www.51testing.com/?34866/action_viewspace_itemid_70224.html来继续翻译wilsonmar的文章。其中在翻译过程中,都以zibeike注的方式添加了自己对相关知识点的一些经验和理解。转载请注明作者zibeike和出处,谢谢。

1.  错误预防和恢复

参数默认是用{}括起来的,但也可以指定用<>

NTLM或用户登录验证

web_set_user("X\\Y", "Z", "A.com:80");

在域与X上的用户名为Y的用户,使用密码Z来登录到A.com:80。在windows基本验证的时候这个脚本被默认录制下来,但如果web服务器需要更安全的NTLM或更深层次的验证,需要手动的添加这个函数到脚本中。对于NTML验证,用户名必须在域名之后,并且以\分割。使用\等符号,需要使用\\,前面的\用来做转义用,否则会出现警告提示。

 

zibeike注:在论坛中也看到了一些朋友讨论windows弹出登录框的操作LR无法录制到,导致回放出错,一般出错信息多为“Error -26547: Authentication required, please use web_set_user, e.g. web_set_user("domain\\user", "password", "host:port");   [MsgId: MERR-26547]”,其实这种情况错误信息已经很明显的给你提示了,需要往脚本中添加web_set_user函数即可。

 

2.  IP欺骗(略)

3.  验证检查点

通常脚本录制完后需要手动添加些脚本来来确保预期的操作确实进行了正确的响应(如在操作之后后验证显示的一段文本或者图片)。这些检查可以使用正则表达式。

Web虚拟用户脚本中不会录制到检查点,需要手动添加或者使用VuGen的用户接口来添加函数代码。

最常用的检查点函数是web_reg_find。这个注册函数会查找脚本中下一个操作如web_url后产生的一段文本。它是从返回的缓冲区扫描而不是在接收的页面中查找。这是比web_find更高效的一个函数。

可以使用下面的代码来验证文本出现的次数:

  • web_reg_find("Text=ABC", "SaveCount=abc_count", LAST); 51Testing软件测试网;` jV)ck
    web_url("Step", "URL=...", LAST); 51Testing软件测试网v)sYa4|)QR
    if (strcmp(lr_eval_string("{abc_count}"), "0") == 0)

lr_output_message("not found");

else

lr_output_message("{abc_count} found");

如果想保存并且显示找到的文本,可以使用web_reg_save_param界定左右边界把找到的信息保存到参数中。如下:

  • char *str1,*str2;51Testing软件测试网F x#K3A\Fq V
    str1="desired text";
    @bd#fm}0// Register the left and right beacons sought:
    .M+yQUtI0web_reg_save_param("param","LB/ic=xxx","RB=xxx");51Testing软件测试网rs$R wG*z
    // Do the monitored deed:51Testing软件测试网/A%]!c_RY{(q
    web_url("some url","URL=www.xxx.com",LAST);
    ibT2U;M;|5}I%Fd%jOB0// Compare:51Testing软件测试网'S9Q*xs6Xp)H2g Xj)]
    str2=lr_eval_string("{param}");
    D \ V z4x8y3vF.o'It0if(strcmp(str1,str2)==0) {

lr_output_message("param found");

}else{

lr_output_message("Value found is %s",str2);

}

zibeike注:1)这里想跟大家说下注册函数,在web/http协议的脚本中,注册函数均以web_reg为前缀,这种注册型的函数都是从缓冲区扫描或者获得数据,因此需要提前声明即需要在能获得该查找信息的函数之前添加这些注册函数。例如,web_url()请求了一个页面,我需要验证该页面中是否有某个特定的文本,那需要在web_url()函数之前加上web_reg_find,类似的还有关联的函数web_reg_save_para是一样的,需要放到能获得想要的数据的请求的函数之前。但如果想查看这些函数最终保存的结果,如想打印关联函数web_reg_save_para中保存的参数内容,打印的操作就需要放到请求的函数之后了。

2web_findweb_reg_find的区别:前面的是查找页面显示的数据,因此需要放在请求页面的函数之后,而且查找的信息是显示的web页面上的信息。后者是注册型函数,需要放到请求的页面之前,而且查找的内容是服务器返回的缓冲数据中查找,所以查找内容应该看html源代码的内容。

基于HTML录制方式的代码,可以使用web_image_checkHTML页面中包含的图片进行验证。并且需要注意的是只有在Runtime Settings > Internet Protocol Preferences 选择了"Enable Image and text check" 检查点才有效。

   

    下面会讲到数据类型转换,字符串操作等LoadRunner脚本编写知识,今天就到这里了。

分享到:
评论

相关推荐

    使用LoadRunner-编写JAVA-测试脚本.zip

    【标题解析】 "使用LoadRunner-编写JAVA-测试脚本.zip" 这个标题指出,这...综上所述,这个压缩包的内容很可能是对以上各个知识点的详细讲解和示例代码,适合希望学习或提升LoadRunner Java脚本编写技能的测试工程师。

    LR 脚本编写教程

    除了“Text/Image”检查点外,VuGen还支持其他类型的检查点函数,例如`Web_reg_find`和`Web_global_verification`等。这些函数可用于更复杂的场景下对特定条件的验证。 #### 六、总结 综上所述,LoadRunner提供了...

    LoadRunner脚本编写[汇编].pdf

    LoadRunner脚本编写 LoadRunner脚本编写是软件开发中的一种重要技术, ...当然 VuGen 还允许插入其他类型的检查点函数,比如Web_reg_find 、Web_global_verification等。而且也可以对搜索Text/Image 值的参数化。

    LoadRunner11设置集合点和检查点.pdf

    【LoadRunner11设置集合点和检查点】 LoadRunner是一款强大的负载测试工具,它允许测试人员模拟大量虚拟用户(Vusers)对应用进行并发访问,以此来评估系统性能和稳定性。在LoadRunner11中,设置集合点和检查点是两...

    性能测试从零开始--loadrunner脚本

    《性能测试从零开始——LoadRunner入门》资源下载,这可能是一份详细的学习资料,包括LoadRunner的基本操作、脚本编写、场景设置以及结果分析等方面,对初学者非常有帮助。 通过深入学习和实践,你将能够熟练掌握...

    LoadRunner设置检查点的几种方法介绍.

    2. **Vuser界面设置**:LoadRunner提供了Vuser界面,允许用户直接在脚本执行的上下文中设置检查点。通过可视化的方式,测试人员可以更清晰地理解脚本的执行流程,并在关键位置插入检查点,确保脚本的每个阶段都能...

    Loadrunner_脚本编程

    11. **报告分析**:LoadRunner生成详细的测试报告,包括事务成功率、响应时间分布、系统资源利用率等,测试团队需要分析这些数据来确定性能问题和改进点。 总之,【Loadrunner_脚本编程】涵盖的内容广泛且深入,从...

    LoadRunner常用函数LoadRunner常用函数

    在进行性能测试时,经常会用到一系列内置的函数来实现各种操作,如数据提取、字符串处理、事务管理和检查点等。以下是对这些常用函数的详细说明: 1. `Int web_reg_save_param`:此函数用于从服务器响应中提取参数...

    HP LoadRunner11 设置集合点及检查点

    - **添加检查点**: 在脚本中选择需要验证的部分,然后通过右键菜单选择插入相应的检查点函数。 - **配置参数**: 根据具体需求设置函数的相关参数。 - **验证效果**: 通过运行脚本来验证检查点的效果,观察是否...

    loadrunner脚本编程

    在复杂场景下,可以编写C或VB函数,并在LoadRunner脚本中调用,以实现自定义功能。这需要理解C或VB编程基础,并在LoadRunner中配置正确的库链接。 1. 跳出迭代 在循环执行过程中,有时需要提前跳出,这可以通过lr_...

    loadrunner关联函数.pdf

    5. Action函数:在LoadRunner脚本中,Action函数代表虚拟用户的行为。一个典型的LoadRunner测试脚本由一个或多个Action函数构成,这些函数内包含了一系列的Web交易。 6. 嵌入式脚本:LoadRunner支持在脚本中嵌入...

    Loadrunner 自动关联手动关联

    web_reg_save_param_ex 函数是 Loadrunner 中最常用的关联函数,它可以将服务端返回的数据存入脚本的一个参数中。该函数的选项包括: * Parameter Name:设置存放参数的名称,关联出来的内容将会存放在该参数中。 *...

Global site tag (gtag.js) - Google Analytics