LoadRunner Vuser

原理

1、仍然是代理

2、将客户端和服务器当时说的话(协议)拦截到,理解后,转换成Loadrunner自身理解的形式展 现出来。

录制脚本

 

应用程序类型,可选择 internet应用程序和win32应用程序。loadrunner只关注协议,不关注程序。

录制结果:

loadrunner自动维护cookie ,如果没有特殊需要,可删掉选中的部分。

1、回放日志 2、录制日志 3、关联结果  4、生成日志。包括http请求头和内容。

保存脚本后。可以看到,有很多文件。

.usr 可直接在loadrunner打开脚本

Action.c vuser_end.c vuser_init.c globals.h 分别是程序里 Action vuser_init vuser_end globals.h 的脚本

default.cfg 是运行时配置。程序里按F4调出

mdrv.log 回放日志 

执行顺序。先执行init 在执行 action 最后执行 end

按F4,runlogic 可设置 action迭代次数。 init和end永远只执行一次。

loadrunner自带的网站 默认用户名密码  jojo bean

录制html_based script 高级的2种模式的区别

Action()
{
    web_submit_form("login.pl",  //第一种,按照行为的方式去录制  依赖上下文。 会报错
        "Snapshot=t2.inf", 
        ITEMDATA, 
        "Name=username", "Value=jojo", ENDITEM, 
        "Name=password", "Value=bean", ENDITEM, 
        "Name=login.x", "Value=31", ENDITEM, 
        "Name=login.y", "Value=12", ENDITEM, 
        LAST);
    return 0;
}
Action()
{
    web_submit_data("login.pl",   //第二种 按照协议的方式 不依赖上下文。不会报错
        "Action=http://127.0.0.1:1080/WebTours/login.pl", 
        "Method=POST", 
        "TargetFrame=body", 
        "RecContentType=text/html", 
        "Referer=http://127.0.0.1:1080/WebTours/nav.pl?in=home", 
        "Snapshot=t2.inf", 
        "Mode=HTML", 
        ITEMDATA, 
        "Name=userSession", "Value=121381.591656541zctDfzfpzcAiDDDDDHtzVpDQDHcf", ENDITEM, 
        "Name=username", "Value=jojo", ENDITEM, 
        "Name=password", "Value=bean", ENDITEM, 
        "Name=JSFormSubmit", "Value=off", ENDITEM, 
        "Name=login.x", "Value=19", ENDITEM, 
        "Name=login.y", "Value=9", ENDITEM, 
        LAST);

    return 0;
}

选择哪种方式录制,有以下参考原则:

(1) 基于浏览器的应用程序推荐使用HTML-based Script

(2) 不是基于浏览器的应用程序推荐使用URL-based Script。

(3)如果基于浏览器的应用程序中包含了JavaScript 并且该脚本向服务器产生了请求,比如DataGrid 的分页按钮等,flash等,也要使用URL-based 方式录制

(4 )基于浏览器的应用程序中使用了HTTPS 安全协议,使用URL-based 方式录制

思考时间设置:

日志输出

部分日志
HTTP version: 1.1 [MsgId: MMSG-26845] //http版本 Keep-Alive HTTP connections: Yes [MsgId: MMSG-26845] //是否使用长连接 DNS caching: Yes [MsgId: MMSG-26845] //dns缓存 Simulate browser cache: Yes [MsgId: MMSG-26845] //模拟使用浏览器缓存
Action.c(4): User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; Action.c(4): .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; Action.c(4): .NET4.0E; InfoPath.3)\r\n // User-Agent可以在这里设置 很多网站会根据User-Agent返回手机版url还是pc版

启用浏览器缓存和不启用浏览器缓存

启用缓存输出日志
Action.c(37): Resource "http://127.0.0.1:1080/WebTours/images/hp_logo.png" is in the cache already and will not be downloaded again      [MsgId: MMSG-26655]
Action.c(45): web_url("webtours.png1") 已启动      [MsgId: MMSG-26355]
Action.c(45): Resource "http://127.0.0.1:1080/WebTours/images/webtours.png" is in the cache already and will not be downloaded again      [MsgId: MMSG-26655]
不启用缓存
Action.c(37): t=1008ms: 601-byte response body for "http://127.0.0.1:1080/WebTours/images/hp_logo.png" (RelFrameId=1, Internal ID=5)
Action.c(37): t=1010ms: Request done "http://127.0.0.1:1080/WebTours/images/hp_logo.png"      [MsgId: MMSG-26000]

多个action执行顺序调整.

2个action都会执行2次.这里也可以设置2个action执行的百分比.等等

 

http的配置

 

posted @ 2017-06-27 00:24  米蓝  阅读(677)  评论(0编辑  收藏  举报