LoadRunner错误处理函数

陈绍英

2017-05-23


在脚本的Run-time Settings中,可以设置在脚本运行过程中发生错误的处理方式。进入到Run-time Settings中,切换到Miscellaneous标签页,可以看到Error Handing的第一个设置项:Continue on error,如图1-30所示。勾选Continue on error选项后,如果运行过程中发生错误,也会继续执行脚本。

图1-30 Miscellaneous标签项
显然,无论是否勾选Continue on error项,对于一些在Controller中运行的脚本都可能存在问题:勾选后,将会忽略所有函数的执行错误,即使一些关键业务函数执行发生错误也会忽略掉,而遇到这种情况时继续运行场景显然已经没有意义;如果不勾选,一些无关紧要的函数执行时如果发生错误将导致当前Vuser停止运行,而当较多Vuser因为小错误而停止执行后同样会导致整个场景的运行结果失去意义,显然这种情况也不应该发生。
VuGen提供了错误处理函数lr_continue_on_error,用来在脚本中实时修改Vuser的出错设置。lr_continue_on_error函数语法结构如下:

void lr_continue_on_error ( int value  );

value是是脚本运行出错设置的取值,具体取值及相应值的含义如表1-7所示。在使用表1-7中的参数时,既可以使用常量名称作为参数,也可直接使用对应常量值作为参数。

lr_continue_on_error调用后将对其后面所有的语句产生影响。因此,脚本中较常用的是lr_continue_on_error(0)与lr_continue_on_error(1)。这两个语句成对出现,期间包含着需要设置为发生错误停止执行的关键业务脚本,如例1-71所示。
可以看出,例1-71比较适合压力较大且在夜间自动运行的测试场景,而这类场景通常会在Run-time Settings中开启Continue on error选项,因此需要通过lr_continue_on_error (0) 关闭Continue on error选项,使一些关键业务发生错误停止执行。对于一些非关键业务,则需要通过lr_continue_on_error (1)开启Continue on error选项,这样即使遇到错误也不会影响脚本的继续执行。
例1-71

Action()
{
       ……
       ……
       lr_continue_on_error  (0); //下面是一些重要事务代码,因此关闭出错继续执行设置
    ……
       ……
       lr_continue_on_error(1);  //后面是一些非关键事务代码,例如下载一些图片文件,因
//此开启出错继续执行参数设置。

       ……
       ……
       return 0;
}

反之,如果在Run-time Settings中没有勾选Continue on error项,则应该通过组合使用lr_continue_on_error (1)与lr_continue_on_error (0)来使一些非关键业务发生错误后继续执行。

读者评论

相关博文

  • 深入接下LoadRunner的File类型参数9种取值方式

    深入接下LoadRunner的File类型参数9种取值方式

    陈绍英 2017-05-02

    参数取值作为性能测试人员必须掌握透,但实际中深究者很少,我在面试过程中多数人都不清楚。本文将把这个话题讲透彻,分享给大家。 很多测试工程师尽管能够使用File类型参数,但往往不知道在Controller中各个Vuser的具体取值过程。但...

    陈绍英 2017-05-02
    1286 0 1 0
  • 了解智能一体化

    了解智能一体化

    陈绍英 2017-04-21

    了解智能一体化测试平台 智能一体化测试平台是为支持智能一体化测试理论而开发的平台,这个平台主要面向后台系统的服务/接口测试。借助这个平台,开发测试人员进行服务/接口测试时可以将工作重心集中在测试案例设计与管理上,测试执行与分析主要交...

    陈绍英 2017-04-21
    1105 0 0 0
  • LoadRunner脚本信息函数

    Jessica瑾妞 2017-01-05

    脚本信息函数在实际中用的不是特别多,下面简单介绍几个常见函数的用法。 l lr_whoami lr_whoami用来返回Vuser的ID、组名称、场景ID信息。例1-64的程序演示了lr_whoami函数的用法:首先定义两个整型变量i...

    Jessica瑾妞 2017-01-05
    579 0 0 0