1、 如何在lr中录制js等
在录制设置中选择url_base,即可
2、cookie问题?
Simulate a new user on each iteration意味着每次Iteration的时候LR会把cookie和session之类的清除。所以如果脚本中登录过程放在Init中的话,使用Simulate a new user on each iteration可能会有问题
3、关联问题
例如
web_reg_save_param("flight_num",
......
lr_eval_string("
{flight_num}
")
------这里就是一个关联
LR中基于URL方式录制和基于Html录制的脚本,并发时候的区别
选择html_base script方式录制脚本如下:
Action()
{
lr_rendezvous("search");
web_url("video",
"URL=http://test.yoqoo.com/search/video?keyword=NBA&moduleType=video",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
return 0;
}
选择url_base script方式录制脚本如下:
Action()
{
lr_rendezvous("search");
web_url("video",
"URL=http://test.yoqoo.com/search/video?keyword=NBA&moduleType=video",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTTP",
LAST);
return 0;
}
2个脚本在并发200的时候得到的页面响应时间出入很大,结果如下
html_base script(Mode=HTML) 平均响应时间16s
url_base script(Mode=HTTP)平均响应时间8s
为什么出现这样的结果呢?
使用LoadRunner Analysis分析结果如下,说明html方式的并发在server time花了很多时间(30s),都是在下载和该url相关的所有页面元素,包括js、图片、甚至视频
而使用http方式的并发在server time只花了6s,并没有下载其他页面元素。
概而言之,就是一个html会包含n〉=1的http,而一个http仅就是一个http。
url_base script(Mode=HTTP)图示![http://10.2.100.220:8081/download/attachments/1131/LR_html_http区别.rar]
html_base script(Mode=HTML)图示
4 启动retatd服务
1) Download rstatd.
2) Build and install rstatd:
$ tar xvzf rstatd.tar.gz
$ cd rpc.rstatd
$ ./configure --prefix=/usr
$ make
# sudo su
# make install
3) Add a line to /etc/hosts.allow to allow certain hosts to make rstatd requests:
rpc.rstatd: 192.168.0.0/255.255.255.0
4) Add rstatd entry in /etc/xinetd.d/rstatd:
# default: off
# description: An xinetd internal service which rstatd's characters back to clients.
service rstatd
{
type = RPC
rpc_version = 2-4
socket_type = dgram
protocol = udp
wait = yes
user = root
only_from = 10.0.95.0/24
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/rpc.rstatd
disable = no
}
5) Restart xinetd: