本次笔记主要记录LoadRunner脚本设计、场景设计和结果分析
1、 脚本设计
录制模式
手工模式:插入步骤、手动编写
1.1 脚本增强:
事务、集合点、参数化、关联、检查点
检查点:web_reg_find 、web_find(需要打勾)区别
其中web_reg_find函数在检查页面执行过程中如果检查到数据就会显示结果。而web_find函数则在页面全部加载完成后,再去寻找需要查找的对象。
1.2 脚本调试:RunTime Settings
a. Run Logic:只有action能循环,init 和 end 不行
b. Log
c. Miscellaneous
d. Browser Emulation:Simulate a new user on each iteration (测试时如果服务器未挂,但出现了大量的 Failed to connect to server 时,去除这个勾)
e. Preference:Winlnet replay instead of Socket(Windows Only)(测试时如果服务器未挂,但出现了大量的 Failed to connect to server 时,去除这个勾)
f. d与e的区别:d设置时,结果分析中可以出现网页细分图,e设置时,收集结果中不能出现网页细分图。
1.3 POST的三种方式
a. web_submit_form:只能POST,使用简单,Cache中取数据,不可控性
b. web_submit_data:只能POST,功能与 a 相似,但较复杂,与Cache无关
c. web_custom_request:只能发送 POST 和 GET 请求,所有 b 能实现的请求,本方法都可实现,也可以实现 b 无法实现的请求
2、 场景设计
2.1 手工场景
a. Schedule by 选择 Scenario,则所有脚本使用相同的设置Run的方式;选择Group,则分别为不同的脚本设置Run的方式。
b. Run Mode:选择Real-World Schedule,则可以通过action来增加多个用户;选择Basic Schedule ,只能设置一次负载
2.2 目标场景
a. Virtual Users :以满足虚拟用户数为目标
b. Hits Per Second:以每秒的点击率为目标
c. Transaction Per Second:以每秒通过的事务为目标
d. Transaction Response Time:以事务响应时间为目标
e. Pages Per Second:以每秒访问的页面为目标
2.3 集合点设置
3. 结果分析
3.1 Analysis Summary:简要分析
3.2 Running VUsers(运行并发数),Hit Per Second(每秒点击数),Throughtput(吞吐量),Transaction(事务),Summary(摘要),Average Transaction Response Time(事务平均响应时间)
3.3 Open a new Graph
a. Transaction àTransactions Per Second
b. Web Page Disgnostics
3.4 Cost Time (耗时)
a. Receive Time
b. First Buffer Time:NetWork Time、 Server Time
c. Connection Time
d. DNS Resolution Time
e. Client Time
f. SSL HandShaking Time
g. FTP Authentication Time
h. Error Time
3.5 结果分析中js、css、图片的耗时为0的解决方案:
a. 在脚本中去除 web_concurrent_start() 和 web_concurrent_end() 函数 (若不可以,再设置 b 选项)
b. 使用浏览器模拟并清除缓存