LR 的四大组件我们已经熟悉了,有Vugen,控制器,负载发生器,分析器.
我们先一个个熟悉四大组件,然后介绍他们之间如何协调的.
1.Vugen
简单的说就是 生成脚本, 在录制脚本前首先选择一种协议,接着客户端模拟客户实际使用过程中的业务流程,并生成脚本,
生成脚本之后 你运行一定会报错的,这个时候一定要使用脚本技巧,关联参数 插入事务 参数化 Run-time Setting , 保证运行不会报错.
录制大概 几个小时就完成了,但是调试一个问题有可能卡一天,这个最费时间.
在上篇我总结下我曾经遇到的坑,供你们借鉴下.
2.控制器
控制器包含两大作用: 一是设计场景, 设计符合用户需求的场景. 二是场景监控,就是通过添加计数器来监控资源(
windows 资源,服务器,DB )
越是接近客户使用场景,测试结果越可靠,用到的技巧 有 IP 欺骗,负载均衡
3.负载发生器:
模拟用户对服务器提交请求
负载发生器可以理解为真正做压力测试的机器, 一定要和控制器分离, 因为脚本编辑时会产生大量的参数文件,log 这些都消耗资源
负载发生器的计算 应该根据发生器能容纳多少并发用户数, 再确认需要多负载发生器.
例如:
发生器的内存为1000M ,每个虚拟用户需要内存为 10M, 那最多这台机器能容纳 1000/10 个并发用户数, 如果想并发 600个用户就需要 6台 负载发生器.
4.分析器
主要用于测试结果的分析,Analysis 分析器中提供了很多基础的数据,基础数据是死的,需要得到有效信息,就需要用一些技术 例如
合并,叠加器,页面细分 等,
也同样提供了 多种报告形式 包括 XML ,word 等
LoadRunner 工作过程
如果问测试人员,性能测试从四大组件哪个开始的,好多人 一定说是 Vugen ,VuGen 是脚本 .
我可以明确的说 不是, 因为首先是控制器 ,为什么呢,
控制器好比人的大脑, Vugen 好比人的手脚, 不经过大脑的思考 人的手脚不会动的,想象是不是
1.控制器控制着运行与停止, 控制器里面有运行的场景策略, 同时在脚本运行过程中监控性能测试的相关指标.
2.确定执行策略后, 控制器将控制负载机去产生压力, 负载机就是模拟成千上万个用户, 控制器会给负载机传递二进制文件,里面是执行信号
3.控制器会收集 相关数据, 会讲数据保存在Access 数据库中
4.结果分析,当场景执行测试结束后,会生成一些数据,我们就开始对这些数据进行分析. 来找到系统的瓶颈,和性能调优的建议.
熟悉LR 的工作过程 有益于我们 全局考虑 性能测试每个环节.