LoadRunner一:录制+自动关联+手动关联

使用Web Tours进行练习
在这里插入图片描述
1、创建测试脚本(Virtual User Generator):
1)录制脚本
2)验证脚本是否能回放成功
3)增强,在脚本中设置注释,添加事务,参数化,时间间隔…
4)Prepare for Load

1)录制脚本之前需要确定要录制的业务逻辑,初始化工作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Init,action,end说明
init录制的一般是业务流程开始之前的初始化工作(如登录,服务器初始化)
action录制的一般是业务流程操作的事件
end录制的一般是退出的时候执行的操作。(用户退出,注销)
init和end不能迭代多次,只能运行一次,action可以迭代多次运行

如果测试需求没有对业务流程没有重复的要求,可以都放在action部分。有重复的要求,如要求一个用户登录之后要求重复订票10次,就需要把订票部分的脚本放在action之中进行迭代。登录部分脚本放在init,退出部分放在end.

在这里插入图片描述
设置关联
许多应用程序都使用动态值,每次使用应用程序时这些值都会变化。例如,有些服务器会为每个新会话分配一个唯一的会话ID,回放录制会话时,应用程序创建的新会话ID与录制的会话ID不同。LoadRunner通过关联解决了这种问题。关联将动态值保存在参数中,运行模拟场景时,Vuser并不使用录制的值,而是使用服务器分配的新会话ID。
设置webTours网站,录制脚本使用用户登录时会产生的会话ID,从而导致回放失败
找到关联参数,进行手动关联,再次回放

LoadRunner有session未设置关联,但是回放passed,其实不代表业务上成功了,设置检查点可以看出来是否真正成功
设置检查点函数,要放在登录提交之前
web_reg_find(“Text=qwe”,
LAST);

回放脚本后,自动关联
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
查看action中的代码
在这里插入图片描述
在这里插入图片描述
设置后回放成功,检查点也成功。
在这里插入图片描述
但是自动关联不是每一次设置好了回放都会成功,所以最好使用手动关联

手动关联:
不知道怎么找左边界值,右边界值:
在这里插入图片描述
在这里插入图片描述
勾选后重新回放。
在这里插入图片描述
即可找到
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重新回放
“RegExp=name=“userSession”\ value=”(.*?)"/>\\n<table\ border"
“RegExp=(?<=userSession” value=").+(?="/>)"

/要放在最前面/
/userSession不设置关联是不能真正回放登录成功的/
web_reg_save_param_regexp(
“ParamName=sessionvalue”,
“RegExp=(?<=userSession” value=").+(?="/>)",
“Group=0”,
SEARCH_FILTERS,
LAST);

web_url("index.htm", 
    "URL=http://127.0.0.1:1080/WebTours/index.htm", 
    "Resource=0", 
    "RecContentType=text/html", 
    "Referer=", 
    "Snapshot=t1.inf", 
    "Mode=HTML", 
    LAST);

/* Login_start */

lr_think_time(37);

/*设置检查点检查是否真的登录成功,要放在查找内容之前*/    


web_reg_find("Text=qwe",LAST);

lr_log_message("sessionvalue:",lr_eval_string("{sessionvalue}"));

web_submit_data("login.pl", 
    "Action=http://127.0.0.1:1080/cgi-bin/login.pl", 
    "Method=POST", 
    "RecContentType=text/html", 
    "Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home", 
    "Snapshot=t2.inf", 
    "Mode=HTML", 
    ITEMDATA, 
    "Name=userSession", "Value={sessionvalue}", ENDITEM, /*userSession不设置关联是不能真正回放登录成功的*/
    "Name=username", "Value=qwe", ENDITEM, 
    "Name=password", "Value=123", ENDITEM, 
    "Name=JSFormSubmit", "Value=on", ENDITEM, 
    "Name=login.x", "Value=59", ENDITEM, 
    "Name=login.y", "Value=16", ENDITEM, 
    LAST);

 
/* Login_end */

猜你喜欢

转载自blog.csdn.net/StillWaters_ing/article/details/88799987