东莞网站建设网站推广win7 iis7 添加网站
1. LoadRunner与Jmeter
Jmeter是开源免费的,LoadRunner是商业收费的。
 但是LoadRunner具有非常强大的录制功能,具有丰富且灵活的场景,具备丰富的报告性能。
 1)Jmeter没有录制功能
 2)LoadRunner可以设计非常丰富的测试场景
 3)LoadRunner能够产出丰富的测试报告
2. LoadRunner三大组件的关系

 Virtual User Generator:VUG用来录制脚本,编写脚本
 Controller:设计场景,运行场景
 Analysis:产出性能测试报告
3.登录性能测试
3.1 脚本编写
- 访问登录页面
 

	web_url("login","URL=http://127.0.0.1:1080/WebTours/","TargetFrame=","Resource=0","Referer=",LAST); 
- 输入账号和密码
登录是formdata形式

 
	web_submit_form("web_submit_form",ITEMDATA,"Name=username", "Value=jojo", ENDITEM,"Name=password", "Value=bean", ENDITEM,LAST); 
- 加入事务

事务执行的状态:status
事务的响应时间:Duration
事务的浪费时间:Wasted Time 
	lr_start_transaction("index");web_url("index","URL=http://127.0.0.1:1080/WebTours/","TargetFrame=","Resource=0","Referer=",LAST);lr_start_transaction("login");web_submit_form("web_submit_form",ITEMDATA,"Name=username", "Value=jojo", ENDITEM,"Name=password", "Value=bean", ENDITEM,LAST);lr_end_transaction("login", LR_AUTO);lr_end_transaction("index", LR_AUTO);
 
- 集合点
让虚拟用户集合到集合点的时候短暂的暂停,在满足条件后一起执行下一步骤。 
	lr_rendezvous("login_rendezvous"); 
- 检查点
需要放在操作请求之前检查。 
web_reg_find("Text=to the Web Tours reservation pages.",LAST); 
- 参数化


 
Action()
{lr_start_transaction("index");web_url("index","URL=http://127.0.0.1:1080/WebTours/","TargetFrame=","Resource=0","Referer=",LAST);lr_rendezvous("login_rendezvous");lr_start_transaction("login");web_reg_find("Text=to the Web Tours reservation pages.",LAST);web_submit_form("web_submit_form",ITEMDATA,"Name=username", "Value={username}", ENDITEM,"Name=password", "Value=bean", ENDITEM,LAST);lr_end_transaction("login", LR_AUTO);lr_end_transaction("index", LR_AUTO);return 0;
} 
3.2 创建场景

 运行场景:
 
 问:明明在脚本中写的2个事务,为啥最后显示有5个事务?
 
 答:因为每个文件就是一个事务,性能测试文件一共有3个,分别为init、action、end。
虚拟用户数增加,点击数也开始增加
 
3.3 分析报告

 对于事务分析这块:一般情况下不关注最大值和最小值,关注平均值和标准偏差。标准偏差值越大说明越不稳定。
测试报表:
 ①运行的虚拟用户数量
 
 根据运行的虚拟用户数量可以判断在哪个时间段给定服务器的负载
②点击率
 
 通过点击率也可以判断某个时间段内服务器的负载
③吞吐量
 
 吞吐量图和点击数图形状十分相似,但是吞吐量图会稍微滞后一点。
 因为吞吐量表示的是响应返回的资源数量,肯定是先有点击率请求再有返回。
如果请求变多,但是吞吐量没啥变化,原因可能是?
答:①服务器响应慢了,来不及响应;
②压力没有到服务器,被拦截了;
③服务器设计了一定的阈值,超过一定的请求就不返回响应(性能调优)
④事务图
 
 ⑤平均事务响应时间
 
 虚拟用户在性能测试过程中,每秒在服务器上命中的次数,因为虚拟用户会想服务器发出请求,可以帮助根据命中次数评估虚拟用户生成的负载。
⑥系统资源使用情况
 I:Processor Time
 CPU的使用时间,被消耗的处理器时间数量
 II: Available Mbytes
 可用的物理内存。【一般根据这个指标推算已经消耗的物理内存有多大】
 已经消耗的物理内存=实际的物理内存-可用的物理内存
