LoadRunner-总结(一)

LoadRunner-总结(一)

目录

  • 1、脚本常用函数

  • 2、脚本断言方法

  • 3、批处理执行脚本

  • 4、用函数生成订单编号


1、脚本常用函数

web_url()

模拟用户请求,基本语法如下所示:

web_url("在测试结果中显示的名称","URL=需要访问的超链地址",LAST);
复制代码

web_link()

模拟用户单击一个超链接的操作。VuGen会识别访问页面后服务器返回的HTML正文中有多少个超链接。当使用web_link()函数时,只要写出正确的链接名,VuGen会自动查找并访问页面中该链接名所指向的URL地址。

基本语法如下所示:

web_link("在测试结果中显示的名称”, “TEXT=需要单击的超链接名", Ord=次序, LAST);
复制代码

web_submit_form()、web_submit_data()

实现HTTP请求中的POST方法

lr_convert_string_encoding()

将中文变更为UTF-8格式,那么代码可以这样写:

`lr_convert_string_encoding(`
`"门户",`
`LR_ENC_SYSTEM_LOCALE,`
`LR_ENC_UTF8,`
`"param");`
复制代码

web_convert_param()

将参数HTML的格式从HTML转化为URL模式

web_convert_param("HTML","SourceEncoding=HTML","TargetEncoding=URL",LAST);
复制代码

web_custom_request()

自定义HTTP请求规则

lr_output_message()

内容输出

lr_set_debug_message()

函数手动控制日志的显示

该函数的格式为lr_set_debug_message(日志格式,是否应用)

`lr_set_debug_message(16|4,1) 强制设置日志为启用,并且是扩展日志带参数取值显示`
`lr_set_debug_message(0,1) 强制设置日志关闭`
`lr_set_debug_message(1|2,1) 强制设置日志启用,只查看基本内容`
复制代码

lr_think_time()

等待操作

lr_eval_string(“{参数名}”);

从参数中取得对应的值,并且转化成一个字符串

lr_save_string()

将一个字符串保存为一个参数

lr_save_string("https://www.baidu.com","website");
复制代码

lr_free_parameter()

参数的值释放掉

web_reg_save_param_ex()

关联

web_reg_save_param_regexp

正则表达式关联

web_set_max_html_param_len

可以自定义关联返回值存放的参数的最大长度

web_set_max_html_param_len("9999999");
复制代码

web_add_auto_filter

过滤

web_add_filter

过滤

web_add_auto_header

添加请求头

web_add_header

添加请求头

web_add_cookie

添加cookie

web_add_cookie_ex

添加cookie

web_browser

模拟浏览器

web_button

模拟按钮

web_cache_cleanup

清除cache

web_check_box

点box

web_cleanup_auto_header

清除请求头

web_cleanup_cookies

清除cookies

web_concurrent_start&end

请求并行

web_convert_data_param

时间转换

web_convert_from_formatted

格式转换

web_convert_to_formatted

格式转换

2、脚本断言方法

msg = "AllTests"
if (strstr(lr_eval_string("{msg}"), 'AllTests') !=NULL){
 lr_end_transaction("事物", LR_PASS)
 lr_output_message("成功")
}
else{
 lr_end_transaction("事物", LR_FAIL)
 lr_output_message("失败")
}
复制代码

3、批处理执行脚本

编写批处理文件并结合windows自带的任务计划执行脚本

(1)在记事本中写入命令,指定bin和要执行的scenario的路径:

cls SET M_ROOT="C:\Program Files\Mercury\LoadRunner\bin\" %M_ROOT%\wlrun.exe -TestPath "C:\Program Files\Mercury\LoadRunner\scenario\Scenario1_whole_new2.lrs" -Run
复制代码

(2)将文件保存成.bat格式。

(3)将控制面板–>管理工具–>服务中的Task Schedule启动。

(4)进入控制面板–>任务计划,添加一个新的定时任务,通过浏览方式,添加刚才的批处理文件,并指定执行时间即可。

(5)注意在Result setting中设置结果保存的路径,因为定时任务执行完毕后,Scenario会自行关闭。

bat文件内容:

cls
SET M_ROOT="D:\Program Files\MI\Mercury LoadRunner\bin\"
%M_ROOT%\wlrun.exe -TestPath "D:\Program Files\MI\Mercury LoadRunner\scenario\Test\TestScen_1.lrs" -Run
%M_ROOT%\wlrun.exe -TestPath "D:\Program Files\MI\Mercury LoadRunner\scenario\Test\TestScen_2.lrs" -Run
%M_ROOT%\wlrun.exe -TestPath "D:\Program Files\MI\Mercury LoadRunner\scenario\Test\TestScen_3.lrs" -Run
复制代码

4、用函数生成订单编号

LoadRunner中取时间函数、用时间函数生成订单编号

问题的提出:

(1)取系统时间

(2)需要用时间生成唯一订单号

(3)时间函数加随机数产生不重复的订单号

一、取系统时间:

Action()
{
 lr_save_datetime("现在是:%Y年%m月%d日%H时%M分%S秒", DATE_NOW, "pNextWeek_date");
 lr_output_message("%s", lr_eval_string("{pNextWeek_date}"));
 lr_save_datetime("下周这个时间是:%Y/%m/%d/%H:%M:%S", DATE_NOW + (ONE_DAY * 7), "pNextWeek_date");
 lr_output_message("%s", lr_eval_string("{pNextWeek_date}"));
 lr_save_datetime("%Y%m%d%H%M%S", DATE_NOW, "pNextWeek_date");
 lr_output_message("用时间函数生成订单号:%s", lr_eval_string("{pNextWeek_date}"));
 return 0;
}
复制代码

二、时间函数加随机数产生不重复的订单号

int i;
char OrderId[20];
Action()
{
 srand(time(NULL));
 i=rand()%10;
 lr_save_datetime("%Y%m%d%H%M%S", DATE_NOW,"now");
 sprintf(OrderId,"%s%d",lr_eval_string("{now}"),i);
 lr_output_message("订单号为:%s",OrderId);
 return 0;
}
复制代码

微信公众号:AllTests

分享软件测试、自动化测试、性能测试、测试开发等技术文章与资源,欢迎关注!

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享