Controller控制器

一、场景类型

手动测试场景:灵活,更接近用户的实际使用场景;手动测试场景模式:用户组模式和百分比模式

面向目标测试场景:先定义预期目标,根据目标创建场景,然后执行场景,判断是否达到预期目标;未达到则继续创建场景并执行、判断

一、场景设计

 启动Controller控制器后,会弹出新建场景对话框,其中第一个为手动场景,第二个为面向目标场景

1、手动场景Schedule配置

<1>按场景计划Scenario:

Initialite设置:虚拟用户初始化方式:

① 同时初始化所有虚拟用户(很少使用,可能初始化失败,不合逻辑)

② 每隔XX秒初始化XX虚拟用户;

③ 运行脚本之前把所有用户都初始化(最常用)

Start Vusers设置:虚拟用户的加载

④ 同时加载所有虚拟用户

⑤ 每隔XX秒加载XX虚拟用户

Duration设置:场景执行时间

⑥ 一直运行,直到所有虚拟用户运行完毕后停止

⑦ 根据实际情况手动设置运行时间(压测15-30min;稳定性可靠性测试24h或更多)

Stop Vusers运行完毕如何释放虚拟用户

⑧ 同时释放所有虚拟用户

⑨ 每隔XX秒释放载XX虚拟用户

<2>按用户组计划Group:分多个组,每个组都要分别设置自己的Start VusersDurationStop Vusers(更灵活)

LR默认将每个脚本定义为一个组

Start Group设置:按用户组进行场景设置

① 场景执行时立即开始运行该脚本

② 场景执行时XX时间后开始运行该脚本

③ 某个用户组脚本执行完毕后开始执行该脚本
<3>场景开始时间设置:场景立即开始,无延迟;场景延迟XX时间后开始运行;场景在指定时间点开始运行,如当天晚上12点开始执行

<4>百分比模式:先设置用户总数,按百分比分配执行多个同业务时 每个业务的用户数量

适合综合业务模型明确的性能测试(比如银行的转账、存款、取款业务)

 

2、面向目标场景Schedule配置

点击Edit Scenario Goal按钮

 

<1>Scenario Settings选项卡

     Run Time 执行达到目标后场景继续运行XX时间后才停止

    如果没有达到目标值时处理方案:(1)停止运行并记录结果;(2)继续运行直到达到目标

<2>Load Behavior选项卡:加载虚拟用户的方法

    控制器自动加载

    XX时间后达到目标用户

    每执行XX时间加载XX用户

<3>目标类型:用来测试服务器处理并发用户的能力如何

1.Virtusl User目标类型:逐渐增加虚拟用户数到一定数目

2.Hits per Second目标类型:通过多次增加虚拟用户数量来增加点击率,判断点击率是否达到目标值;

如果用户数达到最大值时点击率未达到目标,则停止运行

3.Transactions per Second目标类型:设置每秒处理的事务数量为目标值,通过多次增加虚拟用户数量来增加事务处理率;如果用户数量达到最大值时事务处理率未达到目标,则停止运行

4.Transactions Response Time目标类型:多用户并发时的响应时间。设置一定的响应时间为目标值,不断增加虚拟用户数量,判断响应时间是否达到;如果虚拟用户最大值时仍响应时间未达到目标值,说明系统可以支持更多用户并发;M个用户时达到目标说明在目标响应时间内,系统最多可以处理M个用户的并发

5.Pages per Minute目标类型:设置每分钟处理的页面数量为目标值。一个事务可能由多个页面组成

 

3、Load Generator配置

Load Generato负载发生器,负责与负载机建立连接并控制负载机产生虚拟用户模拟运行

   可以add负载机,完成后connect,测试负载机与控制机连接的情况,如果statusready,表示连接成功;如果为failed,表示连接失败,这时就要检查网络是否存在问题。

控制器通过代理程序控制负载器运行,运行前需先启动代理程序(控制器与负载机都需启动代理)

开始->HP RunLoading->Tools->Loadrunner Agent Runtimes Settings

一、场景执行

场景控制

 

Reset重置/复位:将虚拟用户组重置为场景执行前的关闭状态,准备场景的下一次执行

Vuser虚拟用户组:单击后打开Vuser对话框,对话框中可以查看虚拟用户组中每个用户的状态ID、运行状态、脚本、负载发生器和所用时间),可以对单个虚拟用户进行运行、停止、重置等操作。也可以单击对话框中的Add Vusers来添加新的虚拟用户

Run/Stop Visers:单击打开对话框,可以设置继续运行还是停止某个用户组。场景运行期间,可以在此对话框中添加新的虚拟用户。不同模式下对话框有所不同

场景执行期间查看场景

场景执行期间可以查看Vuser执行情况:

  1)在Scenario Groups视图中查看 Vuser运行状态

 

 2)事物详细信息:在视图右上角查看正在运行的场景概况

 

3)查看输出窗口

打开输出窗口:view->show output

场景运行时,vuser和负载发生器会向controller发送错误、通知、警告、调试和批处理消息,这些信息可以在输出窗口中查看到。(重置时消息仍会保留,可设置为重置时删除消息

 details可查看详细消息文本,如果需要查看更加详细的信息,可以单击相应列的蓝色字体

 

分析输出信息时,需要确定以下几个方面的问题:

1) 出错是由于性能测试引起的还是由于脚本编写的错误引起;

2) 找到出错的日志信息。

 要找到出错的具体日志信息,必须通过输出的信息找出:a错误信息是来自哪台负载机,b错误信息是来自哪个虚拟用户。确定这两方面的信息后就可以找到场景运行时的日志信息了

 

一、场景监视

(一)联机监控

   通过联机监控,loadrunner可以查看场景执行期间生成的数据。

场景监控过程:

① 控制器/优化控制台对监控器进行配置

② 通过负载发生器对被监控的服务器进行配置并监控

③ 数据传递到联机图,通过loadrunner联机图监控性能

监控过程由控制器执行,并在监控过程中收集监控数据,主要包括:

  1. 负载机执行时的数据

      每个虚拟用户运行的数据由负载机获得,控制器监控负载机,在监控过程中,负载机先收集每个虚拟用户运行的相关数据,在将这些数据发给控制器,控制器把数据保存在数据库中

  1. 服务器运行时的相关信息

    服务器的监控主要包括:

        Web服务器:Microsoft I2S,WebSphere,WebLogic,tomcate,Apache

数据库服务器

  LoadRunner主要监控服务器资源使用情况,如需要监控服务器自身的一些特性,则需要第三方监控工具来实现,如Web服务器。在整个性能测试过程中仅仅使用loadrunner是不够的。

     

(二)监控器与度量

在监视服务器之前的工作,用来确保监视连接成功

修改被监控主机的访问模式:

1、进入管理工具-本地安全设置-安全选项-网络访问-本地账户的共享和安全模式-访问方式改为“经典-本地用户以自己的身份验证”

2、保证被监控系统开启服务:Remote Procedure CallRPC),Remote Registry ServiceRemote Registry

3、确认安装控制器的计算机可以连接到被监视的计算机

4、确认并打开共享文件

5、在控制器中添加要监控的计算机资源:Monitors--Add Measurements

(三)联机监视器

场景运行时,可以在监控视图中查看数据变化情况

默认显示的四个视为:Vuser、事物响应时间、每秒点击次数、Windows资源;

单击鼠标右键,选择View Graphs可设置显示视图的个数

 

监视器选择设置:Tool菜单-Options-Monitors

 

 

posted @ 2018-03-09 11:37  LY2018  阅读(1475)  评论(0编辑  收藏  举报