一.Loadrunner 三大组建
- 脚本生成器(Virtual user generator)—录制,调试脚本
- 控制台(Controller)–设置场景参数,管理虚拟用户
- 结果分析器(Analysis)–生成测试报告
二.Loadrunner工作原理
1) 录制时,Loadrunner记录下客户端和服器二者之间的对话
2) 回放时,loadrunner模拟真正的客户端,向服务器发出请求,并根据脚本来验证服务器的应答
三.基本测试流程
1. LR自带tours服务用户jojo 密码bean
2. 录制脚本前,要手工执行操作(熟悉AUT)
3. 录制脚本时,一般把关心的内容录制到action中(因为action中可以实现init中不具备的功能),登录的录制到init中,退出录制到end
问题:系统如何产生压力
用户数量
用户数量固定,发送请求频繁,则AUT压力越大
4. Lr录制时,每次都要重新点击“new”操作
5. 注意:当lr的脚本运行得出的result中全部为pass时不一定证明脚本正确,因为lr只是在网络层面上验证了服务器收到了客户端发送的数据包并且返回,但是返回的应答中数据是否正确,(应答页面是否正确)没有验证
6. 录制前设置
1) 录制设置->高级->为每个页面title自动生成检查点函数
2)录制设置->高级-选择UTF-8字符集,这样的测试中文AUT能够减少乱码情况
7. 脚本中快速查找某行:ctrl+G
8. Replay log—脚本每行的运行结果
9. 编译时可以快速检查脚本的语法问题(格式),但是逻辑问题不能查找出来
10.场景:
1)先将运行通过的脚本加入控制台
2)控制台中设置参数
3)运行场景
11.Lr中脚本的注释
1) 注释单行://
2) 注释多行:/* /
12.Loadrunner和QTP相同点和区别
1相同点:工作方式都是录制—回放
2.区别:
1)Loadrunner关心的是客户端和服务器之间的对话(数据包),关心的是请求(客户端发出)和应答(服务端发出)。关心的是网络协议(网络上的语言:HTTP)。
2)QTP关心的是AUT的界面,已经界面上的对象及对象的属性。
13.性能测试策略
1)在进行性能测试之前,功能测试要先通过
2)基准测试:单用户测试,目的是为其他测试提供参考依据
3)递增测试:指每隔一定时间段加载不同数目的虚拟用户执行测试点操作,这样做的意思是,如果所有的虚拟用户同时加载,有可能造成AUT的资源突然增大,进而影响后续测试关心的测试点的数据,所以前面可以稍稍放缓,递增加载虚拟用户
4)在线综合场景测试,能够最真实的模拟实际的生产场景,一般情况下综合场景中要求脚步为3个以上,将虚拟用户分成不同的组,每个组执行不同的脚步。(注意:一般不要将login脚步加到综合场景中,因为综合场景是比较长的,好多执行的脚步是会循环操作的,login脚步不适合做循环)
5)并发测试:多用户在同一时刻同时执行某一操作称为并发,并发测试目的是考察被测系统的瞬间压力的承受能力
6)疲劳强度测试:一般只长时间的在线综合场景测试,即在一定的压力强度下,进行长时间的测试,测试的时间为724小时
7)内存泄漏测试:指当系统运行时,占用的内存没有得到及时的释放,随着时间运行的增加,被占用的内存越来越多,导致可用物理内存被用光,系统运行缓慢甚至宕机,这种现象称为内存泄漏。
8)数据容量测试:观察AUT中数据库服务器中存储不同容量数据时,AUT的性能反应
9)极限测试:也称“摸高测试”,即使用性能测试逐渐增加AUT的压力,测试出AUT的极限值,如最大用户,最大的吞吐量等。