Loadrunner工具组成
1、 Lr四大组件:1)、virtual user generator,2)、压力调度:controller,3)、压力结果分析器:Analysis,4)、负载生成器:Load Generator---通过运行虚拟用户产生实际负载。其他三大组件可以单独安装在window系统,load generator可以安装在Linux系统和windows系统上
2、 增加系统压力方式只有增加虚拟用户一种吗?不止,增加虚拟用户可以增加压力,还可以从时间上进行调节,比如去掉脚本中的think time,也会使被测系统压力增大。
3、 代理程序(Agent)---部署在各个客户端,协调,产生步调一致的虚拟用户,监控系统(Monitor)---监控主要的性能计数器。
4、 Lr性能测试过程中,各个Load Gennerator中虚拟的用户产生数据都保存在本地Load Generator中,当测试结束,所有的Load Generator会上传测试过程中产生的所有数据到controller。
5、 最后,controller会将所有的测试数据发送给Analysis,进行分析整理,形成报告
6、 系统监控器(Monitor):监控主要的性能计算器,Lr监控计算器----源于控制面板—管理工具—性能---添加计数器
7、 在Lr性能测试过程中监控的系统资源计算器中的采样数据保存到控制台。
8、 Lr工作流程-----首先,有VUGen使用Http协议,模拟真实客户端和服务器两者之间的对话,生成脚本,在脚本调用后可以对脚本的Run-time Setting进行设置然后将多个脚本放置到controller,对其中多用户进行安排部署,形成场景文件,------控制台可以监控被测系统各个服务器的主要性能计数器,以及对相应load Generator进行控制,运行大量的虚拟用户,其中每个虚拟用户都是模拟真实的客户端。向服务器发送请求,最后测试结束时,load Generators会将测试过程中产生的大量数据上传到controller中。-----controller再将所有生成的测试数据发送给Analysis,生成相应的报告和图表,Lr可以根据Analysis生成的报告,对于其中有问题的数据进行分析帮助用户查找问题原因。(页面细分图)
9、 虚拟用户发生器(Virtual User Generator):主要作用是模拟用户行为:1)、先通过录制或开发完成对单个用户行为的模拟,然后通过(参数化)等功能来实现多个用户间行为的差异化,2):如果录制用户行为,则通常会在脚本中创建用户事物及集合点,经过调试确定脚本运行正确,再将其放到Controller中创建测试场景。
10、 Pacing值-----脚本循环的间隔时间,Pacing值越大,服务压力越小。(生成测试的准备数据即背景数据,数据要求必须成功,快慢不关心,所以Pacing一般要加长(看机器环境情况),以保证生成测试数据过程中被测试系统压力不要过大,以免数据生成失败)。
11、 Think-time越大,服务器压力越小,----Think Time----脚本中步骤(请求)之间时间间隔
12、 Lr脚本中没有响应,均为请求及其他(如think time)相关语句。
13、 Replay log:记录脚本中每条语句的执行结果
14、 Generator log:Lr记录客户端和服务器之间的对话(请求—request,响应—response)
15、 Recording log::记录Lr在生成脚本时的一些信息,主要为客户端到服务器之间传输数据包的大小及其他一些信息,但是并不能看到数据包中的信息。
16、 Run-time Setting的设置原则:尽量模拟实际生产环境。
17、 速定位—使用快捷键Ctrl+G
Day03
1、 参数池策略:select next row(取值方式:How)1)、sequential 2)、
2、 Update value on(更新值的方式:When)
3、 测试计划中经常出现的三种类型测试:基准测试、并发测试、多用户在线综合场景测试。
4、 在线测试一定只能测试一种操作吗?
-------------不一定,但是实际测试过程中经常将在线测试做成综合场景测试,即多种操作同时进行。
------------并发测试经常测试同一种操作,比如并发查询等,考察的是系统的瞬间压力,以及系统对并发进行某一操作的处理能力。
5、 以机票预订为测试点,测试计划一般情况:
---------a)、单用户查询航班。
---------b)、多用户并发测试(20个用户并发查询,40个并发测试)
---------c)、综合场景在线测试。
6、 正常的性能测试一般要测试3次以上,取平均值。
7、 基准测试执行方法:
8、 当控制台中Run-time Setting 和脚本中的Run-time Setting同时设置时,控制台设置优先级高
9、 结果报告中的Duration指的是整体性能测试的时间,包括intit----多次Action—end。
10、 报告中(Std.Deviation)标准方差值----表明系统是否运行稳定,其值越小,系统越稳定。
11、 一般报告中会选择最小、平均、最大、90%事务响应时间值放到报告中。
12、 。
13、 当Run-time Setting中的run logic和控制台的Duration的同时设置时,控制台的Duration优先
14、 脚本中进行任何改动—都要进行重新编译,在控制台可以进行刷新重新加载新脚本,。
15、 首先:脚本中添加集合点的位置:在事务开始之前,二、在控制台中设置集合点策略—scenario---Rendezvous中进行设置集合点策略
------集合点经常和事务结合起来使用,常放在事务的前面------集合点只能插入到脚本中Action部分-------------在controller模块中的Scenario—Rendezvous中可以定义集合点策略。
。
16、 并发测试一般要忽略Think_time的时间。
Day04
1、 浏览器原理:1)、当用户访问某个HTML文件时,浏览器首先获得该HTML文件,然后进行语法分析。如果这个HTML文件包含图片,视频等信息,浏览器会再次访问Web服务器,依次获取这些图像、视频文件,然后把HTML文件组织显示在页面上
2、 选择协议: