一、虚拟用户迭代一次的时间对整个压力场景的影响。

1、虚拟用户迭代一次的时间大于等于压力场景的上行周期。

  此种情况,在压力场景的上行周期中,所有虚拟用户根据压力场景设置的策略全部依次运行。压力场景的上行周期过后,进入虚拟用户运行的稳定期,因为此时第一个运行的虚拟用户尚未退出迭代。当第一个运行的虚拟用户退出迭代时,即进入运动期。在运动期中,会不断的有虚拟用户上线和下线,此起彼伏,但当前运行的总虚拟用户数与总虚拟用户数接近,实际中会有所偏差,偏差的数量与压力场景步长的设定以及脚本的睡眠时间有关。当场景设置的步长为0时,运动期的时间等于压力场景的上行周期,因为当步长设置为0时,意味着虚拟用户一上线便下线,这与他们上行的速率相等。运动期后,便又进入稳定期,因为运动其第一个运行的虚拟用户尚未退出迭代。如果结束时间点落在稳定期时,虚拟用户不会立即停止迭代,而是等到下一次的运动期时才会陆续退出运行。如果结束时间点落在运动期,当有虚拟用户退出迭代时,便将该用户下线,不会再进入下一次的迭代,因为运动期时刻都有用户上线下线,所以虚拟用户会按照压力场景设置的退出策略全部退出迭代。

2、虚拟用户迭代一次的时间小于压力场景的上行周期。

  此种情况是没有稳定期的,虚拟用户的上线下线贯穿于整个压力测试始末。假设有100个虚拟用户,每秒钟上一个虚拟用户,如上图所示。在虚拟用户第一次迭代的时间里,前50个用户依次上线。在虚拟用户第二次迭代的时间里,第51个用户到第100个用户依次上线,同时,因为虚拟用户第一次迭代时间里的1到50个用户陆续下线和上线,所以当第51个用户上线时,第1个用户也上线,第2个用户下线;当第52个用户上线时,第2个用户上线,第3个用户下线。按照此种规律,在压力场景的上行周期中,后一次迭代时间里的虚拟用户上下线是前几次迭代时间里的虚拟用户的同步上下线。当进入压力场景的运行周期时,虚拟用户上下线是上行周期所有迭代时间里的虚拟用户的同步上下线,所以当进入运行周期时,第1个和第51个虚拟用户上线,同时因为第2个和第52个虚拟用户上一次迭代时间的结束,所以第2个和第52个虚拟用户下线。在下一秒时,第2个和第52个虚拟用户上线,第3个和第53个虚拟用户下线,以此类推。因为此种情况没有稳定期,时刻都有虚拟用户上线下线,所以当到达结束时间点时,虚拟用户会按照压力场景设置的退出策略全部退出迭代。值得注意的是,当进入压力场景的运行周期时,实际正在运行的虚拟用户总数接近与所有虚拟用户总数。他们的偏差与压力周期的上行周期与虚拟用户一次迭代的时间的商值有关,微观看来,在压力场景运行周期的某个时间点上,商值个数的虚拟用户正在上线,同时商值个数的虚拟用户正在下线,其余的虚拟用户正在执行迭代,当然这是理论状况,实际运行情况将会复杂得多,与脚本的逻辑和场景的设置有关系。

二、File参数化的设置。

  上图中,将参数选择策略设定为Unique、Each iteration、Continue in a cyclic manner,意思是每次迭代时从File中选择参数(同一迭代内的相同参数取值一样),每次都取不一样的参数,如果备选的参数全部选完,以循环的方式从头继续选择参数。我们更深入的挖掘一下,LoadRunner是如何做到上述策略的呢?做法是这样的,假设有10个虚拟用户,备选的参数有1000个,为了保证10个虚拟用户每次的取值不一样,将备选的1000个参数平均分为10等份,每一份分给一个虚拟用户。每个虚拟用户来取值时,都顺序取自己分得的Block,当达到Block的末尾时,再重头取值。注意,上述策略只有在迭代有效的情况下有效,即必须要选择下图中的第二个选项,否则当1000个参数被全部取光时,LoadRunner将会报错。

  有时我们需要将两个参数一一对应,例如每个用户都有自己的用户名,即UserID参数和TrueName参数是一一对应的,如何实现参数的一一对应呢?做法是这样的,将这两个参数的数据源记录到一个参数表中,并将选择参数的策略设置为一样。

注意,上图中的记事本的最后一行必须为空行,否则LoadRunner会报“Missing Line”的异常。

三、场景设置。

1、步长的设置:

步长的设置会影响虚拟用户一次迭代中的Action之间的等待时间和该虚拟用户上次迭代和下次迭代的等待时间,不同虚拟用户之间的迭代等待时间是不受影响的。

2、压力场景上行策略设置:

上图设置的策略是每隔3秒上10个用户,不是3秒内陆续上10个用户。

3、其他设置。

停用日志:

设置思考时间:

错误处理策略和虚拟用户的运行策略:

网络速度控制策略:

LoadRunner压力测试心得总结的更多相关文章

  1. SoupUI 结合loadrunner压力测试

    SoupUI 结合loadrunner压力测试 上一篇介绍了SoupUI接口测试,因为工作需要,需要在loadrunner进行websocket的压力测试,当然,SoupUI本身也是可以做性能测试的 ...

  2. LoadRunner压力测试实例

    1 LoadRunner 概要介绍... 2 .项目背景介绍... 5 .使用LoadRunner进行负载/ 实施测试... 16 6.1 Memory相关... 22 6.2 Processor相关 ...

  3. LoadRunner压力测试实际运用的使用方法

    LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具.通过以模拟上 千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个 企业架构进行测试. 方 ...

  4. 韦大仙--LoadRunner压力测试:详细操作流程

    一. 录制脚本 1.安装完毕后,创建脚本: 点击OK之后,会弹出网址,之后创建Action,每进一个页面添加一个Action,录制结束后,终止录制. 二. 修改脚本 1.脚本参数化 将登录的用户名密码 ...

  5. LoadRunner 压力测试使用基础步骤

    一.新建脚本 二.新建脚本-选择协议,这里选择Web (HTTP/HTML) 三.开始录制(指定程序与URL) 四.场景设计(设计虚拟用户访问场景) 五.运行情况(可以看到运行结果) 六.分析报告(总 ...

  6. 【转】LoadRunner压力测试:测试报告结果分析

    见:https://blog.csdn.net/haoui123/article/details/62036723

  7. Nginx使用webbench进行压力测试

    在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的 ...

  8. Nginx下用webbench进行压力测试

    在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的 ...

  9. Nginx使用webbench进行压力测试(转载)

    在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的 ...

随机推荐

  1. Autodesk FBX SDK Program 中文 (一)

    这是我的FBX SDK学习笔记.如文有错误.麻烦各位大大指出 为什么要使用FBX SDK? 由于3D建模软件都被AutoDesk收购了.FBX能够在各个建模软件之间互相导入导出,在非常多游戏引擎中也用 ...

  2. ie 已限制此网页运行脚本或Active控件

      ie 已限制此网页运行脚本或Active控件 CreateTime--2018年3月12日16:49:43 Author:Marydon 情景还原: 在本地调试html页,如果其中包含js或fla ...

  3. android中RecycleView分页原生代码封装,无任何第三方代

    概述 RecycleView分页加载封装,简单方便,功能齐全 详细 代码下载:http://www.demodashi.com/demo/13283.html 一.场景: 在项目开发中经常使用到列表集 ...

  4. 腾讯QQ的历史

    http://www.agenow.com/bbs/DispText.aspx?id=1385106 OICQ:   大家都习惯性的认为OICQ是马化腾先生自己动手研发的,可在腾讯内部的网友之间又传来 ...

  5. Oracle常用单行函数(原创)

    前言: 想把单行函数进行一个比较全面的总结,并分享给有需要的人,有不明之处还请多多指教. SQL函数:Oracle的内置函数,包括了单行函数和多行函数,本文重点讲解单行函数.单行函数又可以分为许多类, ...

  6. nginx配置文件和一些用法

    fastcgi配置: location ~ \.php$ { #fastcgi_pass unix:///tmp/php-cgi.sock; fastcgi_pass unix__tmp_php5_c ...

  7. ItelliJ基于Gradle创建及发布Web项目(三)

    关键字:web 多模块 用惯了eclipse傻瓜式的配置,开始web部署真的不习惯. 一.现象: 项目发布了,死活找不到依赖模块中的类. 二.排查 确定F4->Artifacts->Out ...

  8. RFID UHF(EPC)标签使用常识

    文章复制来的,原作者原文点击这里 现在做UHF应用的越来越多了,如何根据实际应用设计系统以达到更佳的使用效果,其中对UHF标签相关内容的了解至关重要,很多朋友对标签的了解不多,在此不才,整理了一些资料 ...

  9. AutoFac文档3(转载)

    目录 开始 Registering components 控制范围和生命周期 用模块结构化Autofac xml配置 与.net集成 深入理解Autofac 指导 关于 词汇表 服务类型,名称和键 同 ...

  10. android:scaleType="matrix"布局文件载入图片时候的显示方式

    android:scaleType="center" 以原图的几何中心点和ImagView的几何中心点为基准,按图片的原来size居中显示,不缩放,当图片长/宽超过View的长/宽 ...