在场景设置的时候会有两种场景设置方式:

1,手动模式(Manual Scenario) 2.面向目标的场景设置模式(Goal Oriented scenario)

其中手动模式使用较多,而且灵活应用,能够更灵活的模拟实际的性能测试;这里讲目标场景设置;

首先,选择Goal Scenario

对其进行相关设置

在面向目标的方案中,用户可以定义自己希望实现的测试目标,lr将根据第你故意的目标自动为用户创建一个方案。

目标可以分为五种:VUser,pages per minute, transaction per second, hits per second,trasaction response time;

Virtual Users Goal: 如果需要测试多少人可以同时运行Web应用,那么推荐定义Virtual Users Goal. 运行定义该目标类型的场景和运行Manual 类型的场景类似。

Hits per Second: 如果想测试Web Server的真正实力,推荐定义目标类型为:Hits per Second,Pages per Minute 或者Transactions per Second,这些类型都需要制定一个虚拟用户的最大值和最小值的范围。Controller试图使用最少的虚拟用户来达到定义的目标。如果使用最少的用户,不能达到目标,Controller会自动增加用户数,知道定义的最大值人数。如果使用了最多的虚拟用户数,定义的目标还没有实现,那么需要增加最大用户数,重新执行场景。(这里我不知道这样情况下事停止还是系统会有提示?)

Transactions Response Time: 如果想知道在多少用户并发访问网站时,事务的响应时间达到性能指标说明书中规定响应时间的最大值,那么推荐使用Transactions Response Time类型,指定需要测试的事务的名称,虚拟用户数量的最大值和最小值,还有预先定义好的事务的响应时间。在场景运行中,如果使用了最多的虚拟用户,还不能达到定义的最大响应时间,说明Web Server还有能力接纳定义的虚拟用户的最多数量;如果在使用了部分虚拟用户,就达到了定义的最大的响应时间,或者LoadRunner提示如果使用更多数量的虚拟用户时将要超过最大响应时间,那么需要重新设计或者修补应用程序,同时可能需要升级WEB SERVER的软硬件。

理解各种类型:

如果你定义的类型是Pages per Minute, Hits/Transactions per Second,Controller首先用定义的目标/最小用户数,得到一个值,就可以确定每个用户应该达到的Hits/Transactions per Second或是Pages per Minute,然后Controller开始按照以下的策略加载用户:

1.如果选择的是自动加载虚拟用户,LR会首先加载50个用户。如果定义的最大用户数小于50,LR就会一次性加载所有的虚拟用户。

2.如果选择的是在场景运行一段时间后达到目标,LR就会尝试在定义的这段时间内达到目标,根据时间限制和计算出的每个用户的hits, transactions或者pages,LR确定第一批加载用户多少。(不太理解这个)

3.如果选择的是按照一定的阶段达到目标(也就是先在X长时间内达到y pages/hits,然后再达到下一个目标),lr计算每个用户应该达到的数字后,再确定第一批加载多少用户。

每加载一批用户后,LR会判断是否达到这批用户的目标,如果这批用户的目标没有达到,LR重新计算每一个用户应该达到的目标数字后,重新调整下一批加载用户的数量,默认情况下,LR每两分钟加载一批用户。如果Controller加载了最多数量的用户还没有达到预定的目标,LR会重新计算每个用户的目标,然后同时运行最大数量的用户,尝试达到预定的目标。

如果出现以下情况,pages per minute,hits/transactions per second类型的场景会置于Failed状态:

1.controller使用了指定的最大数量的用户,并且两次都没有达到目标

2.所有的用户运行都失败

3.没有足够的load generators机器(现有的机器已经超载运行的情况下)

4.Controller增加了几批用户后,pages per minute 或者Hits/transaction per second 没有增加

5.Controller记载第一批用户后,定义的目标没有被捕捉到

【Automatic】:指示Controller运行一批中默认数量的Vuser(每两分钟运行50个Vuser,或者在定义的最大Vuser数少于50时运行所有的Vuser)。

【Reach target number of hits per second after XXX HH:MM:SS】:用来选择Controller达场景运行多久内达到预期目标时间。

【Step up by XXX hit per second】(对于每秒事务数和事务响应时间目标类型不可用):用来选择Controller达到定义的目标的速度(一定时间内的虚拟用户数/单击次数/页面数)。

面向目标的场景设置--Goal-Oriented Scenario的更多相关文章

  1. loadrunner基础学习笔记七-面向目标场景

    部署应用程序之前,要执行验收测试以确保系统能够承担预期的实际工作量. 可以为想要生成的每秒点击次数,每秒事务数或事务响应时间设置目标 loadrunner将使用面向目标的场景自动生成所需的目标,当应用 ...

  2. 场景设计以及Manual Scenario和Goal-OrientedScenario的区别

    Manual Scenario 手工场景 主要是设计用户变化,通过手工场景可以帮助我们分析系统的性能瓶颈.手动方案:如果要生成手动方案,请选择此方法.通过创建组并指定脚本.负载生成器和每组中包括的 V ...

  3. LoadRunner场景设置

    创建负载测试场景场景目标:模拟10家旅行社同时登陆.搜索航班.购买机票.查看航班路线并退出打开Controller并创建一个新场景1.打开HP LoadRunner2.打开Controller在Loa ...

  4. loadrunner中面向目标场景的设计

    在一个面向目标的方案中,可以定义五种类型的目标:虚拟用户数.每秒点击次数(仅 Web Vuser).每秒事务数.每分钟页面数(仅 Web Vuser)或方案的事务响应时间.使用“编辑方案目标”对话框可 ...

  5. LR之面向目标场景

    1.目标类型 2.设置目标

  6. 性能测试基础---LR场景设置

    ·场景设置. 性能测试场景依托于性能测试脚本,但是又独立于脚本. 所谓场景(scenario),就是用来模拟多用户运行性能测试脚本的情形,是来源于我们对于业务场景的分析的. 性能测试对于业务场景的分析 ...

  7. LR工具使用之场景设置

    LR工具使用之场景设置 一.操作步骤 1.运行loadrunner,进入运行负载测试控件:

  8. LoadRunner的场景设置

    loadrunner场景设置的方法: 1.逐步增加用户数,分多次去运行场景.比如:第一次运行50并发,第二次运行100并发…… 2.针对同一个脚本设置多个组,使用组策略(点击Edit Schedule ...

  9. LR 场景设置

    LR 场景设置group:多个脚本按照独立设置模式跑,各个脚本可以单独设置虚拟用户.运行时间scenario:多个脚本之间按照相同模式跑,将总的虚拟用户数按照一定比例分配给各个脚本 schedule ...

随机推荐

  1. Apache Spark 2.0三种API的传说:RDD、DataFrame和Dataset

    Apache Spark吸引广大社区开发者的一个重要原因是:Apache Spark提供极其简单.易用的APIs,支持跨多种语言(比如:Scala.Java.Python和R)来操作大数据. 本文主要 ...

  2. math.h函数库

    C语言中之数学函数 C语言提供了以下的数学函数,要使用这些函数时,在程序文件头必须加入: #include <math.h> 编译时,必须加上参数「-lm」(表示连结至数学函式库),例如「 ...

  3. Spring框架第三篇之基于XML的DI注入

    一.注入分类 Bean实例在调用无参构造器创建空值对象后,就要对Bean对象的属性进行初始化.初始化是由容器自动完成的,称为注入.根据注入方式的不同,常用的有两类:设值注入.构造注入.实现特定接口注入 ...

  4. boost circular buffer环形缓冲类

    Boost.Circular_buffer维护了一块连续内存块作为缓存区,当缓存区内的数据存满时,继续存入数据就覆盖掉旧的数据. 它是一个与STL兼容的容器,类似于 std::list或std::de ...

  5. AngularJS 笔记系列(三)模块和作用域

    模块: 在 AngularJS 中,将函数代码全部都定义在全局命名空间中绝对不是什么好主意,全局变量污染会使冲突几率变大,调试困难,降低开发效率.上次写计时器的 controller 时,我们把 co ...

  6. 设置 Quick-Cocos2d-x 在 Windows 下的编译环境

    http://cn.cocos2d-x.org/tutorial/show?id=1304 设置 Quick-Cocos2d-x 在 Windows 下的编译环境 Liao Yulei2014-08- ...

  7. centos7 vim显示行号

    CentOS7下可能有n个账户,让vim显示行号有两种方法:仅让当前用户显示行号和让所有用户显示行号   一.仅让当前用户显示行号 输入命令:vim ~/.vimrc 写入:set nu 保存:wq ...

  8. Django:学习笔记(5)——会话

    Django:学习笔记(5)——会话 配置中间件 Django中使用会话,需要配置一个中间件. 配置会话引擎 默认情况下,Django在数据库中存储sessions(使用了django.contrib ...

  9. 32. Longest Valid Parentheses(最长括号匹配,hard)

      Given a string containing just the characters '(' and ')', find the length of the longest valid (w ...

  10. DataTable转换成IList

    //文章出处: http://www.cnblogs.com/hlxs/archive/2011/05/09/2087976.html DataTable转换成IList 在用C#作开发的时候经常要把 ...