LoadRunner使用

软件版本:12.53 build 1203
操作系统: Windows7

以下内容摘录自LoadRunner的官方帮助文档。

介绍

LoadRunner现在是HP公司的产品,其用于进行对网站的压力测试。现在这款产品免费下载,提供最大50个用户的测试,要想更多就需要付费了。
此产品一共有3个组件(软件)

  • VuGen(Virtual User generator) 目的是生成测试脚本,可以采用录制的方式生成测试脚本(被称作Vuser script)
  • Controller 用于组织、驱动、管理和监视压力测试
  • Analysis 用于分析和图形化显示测试结果和报告,比较压力测试结果.
  • Load Generator, 计算机其运行Vuser来生成一个压力给被测试的系统。(估计指的是计算机本身,不是软件)

安装LoadRunner之后就会在开始菜单中看到HP Software->HP LoadRunner下有上面三个程序。

术语

  • Scenario 定义在测试会话中发送的时间。(我的理解就是测试场景,就像开发中的代码工程一样,组织测试所需的部件和动作)
  • Virtual User或Vusers 模拟测试人员的动作,一个测试场景中可以包含成千上万的Vuser。
  • Vuser Script 记录一个测试过程中的所有动作。
  • Protocol 测试中与被测试的服务器连接采用的协议,一般web就是HTTP
  • Transaction 把测试过程划分为事务,可以测量事务执行的时间
  • Script footprint 执行测试脚本过程中不同资源的使用率,例如内存,CPU和磁盘。

测试过程

典型的测试过程为:

  1. 计划 (非软件操作,而是测试目标和测试需求,你总要知道自己测啥吧,达到什么并发量吧,这才能决定代码合不合格)
  2. 建立Vuser Script (使用VuGen软件捕获用户动作来生成测试脚本)
  3. 定义Scenario (使用Controller软件来建立压力测试环境)
  4. 运行Scenario (使用Controller来驱动,管理和监视测试)
  5. 分析结果 (使用Analysis软件来建立图形化的报告,和评估系统性能)

采用HP自带的例子进行测试

这个软件本身提供了一个示例应用。也就是说LoadRunner里面自带了个写好的旅游系统,你需要把它运行起来,再用LoadRunner软件去测试它,明白了么?
这个例子系统是个Web系统,其具有搜索航班、订机票、检查行程等功能。这个演示系统叫做HP Web Tours,要把它运行起来需要以下条件:

  • LoadRunner需要安装到默认目录(改了安装目录的人别想了,直接重新安装吧,要不就使用自己的系统测试)
  • 必须是IE10+以上的版本
  • Java 7u65 or Java8
  • 打开控制面板--> Java --> 安装选项卡 --> 在例外网站中添加 http://127.0.0.1:1080http://localhost:1080

启动例子程序: 开始菜单--> 所有程序 --> HP Software --> HP LoadRunner -> Samples -> Web --> Start HP Web Tours Server.
然后打开浏览器,访问: http://127.0.0.1:1080/WebTours/index.htm,应该会看到登录页面。输入用户名:jojo, 密码: bean。
登录进入后,选择Flights-> 选择Arrival city为Los Angeles,然后一直选择continue,直到最后订票完成。

1. 建立Vuser Script

Vuser脚本就是采用录制和回放来生成测试脚本。

建立空白Vuser Script

打开Virtual User generator软件,选择工具栏左上角的New Solution,然后在弹出的对话框中Single Protocol中选择Web-HTTP/HTML,然后点击create按钮。

录制Vuser Script

上面建立的是空白的脚本,这步骤是要往空白脚本里面添加内容。采用录制的方式。

点击菜单中的Record --> Develop Script 或者点击工具栏上的 Develop Script。都是一样的。然后会自动弹出浏览器窗口。
由于我没有按照IE10及以上版本,所以LoadRunner给我指定的是Firefox浏览器(工具栏上能看到)。

在浏览器上输入http://127.0.0.1:1080/WebTours/index.htm(奇怪的是左侧是录制过程界面,右面会显示你系统的网页),打开后登陆,选择预订机票的所有动作,都会在左侧窗口显示出来。
整个显示效果还不错。而且上面还有工具条控制录制过程,停止后还能点击Replay回放整个过程。可视化过程做的很不错。
我记得老版本是悬浮一个工具条,但新版本改进了,左侧出现录制过程。

点击"Stop Recording"按钮后,关闭浏览器,回到LoadRunner后就会看到Action对应的脚本文本中显示了测试过程对应的代码。

如何替换变化的值

对于网站中个变化的属性,例如Session ID,如果每次测试都使用相同的值是测试不了的。所以需要让LoadRunner临时取得这个值,那么就要用到correlate功能。
步骤:

  • 打开Design Studio: 在菜单Design --> Design Studio
  • VuGen软件会自动发现可能的动态值,并提示给你
  • 选择其中的Session ID,点击Correlate按钮,VuGen改变Session ID的状态为Applied。
  • 关闭Design Studio

设定脚本的运行时表现

测试脚本运行过程中应该干嘛的配置,例如Action重复几次,模拟用户的Think time的时间间隔。
Pacing是用来控制每次迭代测试过程之间的时间间隔。
注意:在Controller软件中也有运行时的配置。

2. 运行Vuser Script,执行压力测试

启动Controller软件,然后设定运行的Vuser个数,运行时的其他信息,然后点击start按钮来执行压力测试。

3. 分析结果

打开Analysis软件,导入Senario,然后就可以看到report了。这时可以建立SLA,与压力测试的结果进行比较,对比出差距。

LoadRunner有官方的使用手册,那个手册在安装LoadRunner时自带的,讲的非常详细。


参考

LoadRunner使用的更多相关文章

  1. 【云知道】LoadRunner 录制问题集锦

    关键词:各路录制小白汇集于此 虽然知道君对录制不感冒,但总是看到扎堆的人说这些问题,忍不住要站出来了. 百度虽好,帮助了很多小白,但关键是百度并没有排除错误内容,经过历史的几年传播,错的都快变对的了, ...

  2. 【云知道】究极秒杀Loadrunner乱码

    Loadrunner乱码一击必杀 之前有介绍一些简单的针对Loadrunner脚本或者调试输出内容中乱码的一些设置,但是并没能完全解决一些小伙伴的问题,因为那些设置实在能力有限,还是有很多做不到的事情 ...

  3. LoadRunner函数百科叒叒叒更新了!

    首先要沉痛通知每周四固定栏目[学霸君]由于小编外派公干,本周暂停. 那么这周就由云层君来顶替了,当然要要说下自己做的内容啦,DuangDuang! <LoadRunner函数百科>更新通知 ...

  4. Loadrunner Http Json接口压力测试

    前天接到了一个测试任务,要求测试一下ES(elsticsearch)在不同并发下的查询效率.如图: 业务场景是在客户端根据具体车牌查询相关车辆信息,结果返回前10条记录. 从图中可以看到,接口的请求参 ...

  5. LoadRunner免费公开课,惠普金牌讲师亲授

    [开课时间]:9月13日 下午2:00—4:00(暂定)[活动费用]:免费[主办单位]:慧都学院[课程形式]:网络在线公开课 LoadRunner简介惠普软件测试解决方案LoadRunner测试实例答 ...

  6. loadrunner性能测试---添加windows多台压力机

    添加多台压力机 1.前置条件 1)保证压力机上都安装了loadrunner Agent,并启动,状态栏中会有小卫星.       2)添加的压力机与controller所在机器是否在同一个网段,建议关 ...

  7. LoadRunner安装+汉化+破解

    因为工作需要要用到LoadRunner,找个好几个版本,换了两台电脑(公司的win7折腾了好久装不上去),耗时两天终于搞定了,分享给需要的小伙伴们,避免大家踩更多的坑~ 一.安装前的准备 Win10系 ...

  8. Loadrunner时间函数、用时间生成订单编号例子

    Loadrunner中取时间函数.用时间函数生成订单编号例子: <如要转载,请注明网络来源及作者:Cheers_Lee> 问题的提出: (1)有时候在Loadrunner中用C语言设计脚本 ...

  9. 通过LoadRunner - Analyze详细分析页面元素请求

    众所周知LoadRunner录制某个链接,包括动态请求与js.css.jpg等静态请求. web_custom_request("动态请求", "URL=http://w ...

  10. [LoadRunner]LR11安装或破解时报错的解决方法

    背景:在性能测试项目上,需要安装到LR11进行性能测试,而在安装时会出现安装运行环境失败,安装文件缺失等问题.现总结了上述问题,并给出以下解决方法: 问题1:安装LoadRunner时出现“计算机缺少 ...

随机推荐

  1. el判断字符串是否为空

    ${empty 值}  返回true ,表示为空字符串; 在EL中empty对""和null的处理都返回true,而==null对""返回false,对null ...

  2. js防windos锁屏功能实现

    <li class="layui-nav-item"> <a href="javascript:;" id="lock"& ...

  3. duilib入门简明教程 -- XML配置界面(6)

       前面那些教程都是为了让小伙伴们从win32.MFC过渡到duilib,让大家觉得duilib不是那么陌生,如果大家现在还对duilib非常陌生的话,那就说明前面的教程做得不好,请大家在下面留言, ...

  4. Python进程间通信之共享内存

    前一篇博客说了怎样通过命名管道实现进程间通信,但是要在windows是使用命名管道,需要使用python调研windows api,太麻烦,于是想到是不是可以通过共享内存的方式来实现.查了一下,Pyt ...

  5. UWA发布 | 2017 Unity手游体检蓝皮书 — ARPG篇

    报告目录: 一.ARPG手游总体性能开销分析 二.ARPG手游CPU模块性能开销分析 三.ARPG手游内存模块性能开销分析 四.ARPG手游资源管理分析 五.UWA对于ARPG手游研发团队的建议 一. ...

  6. “全栈2019”Java第五十七章:多态与构造方法详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  7. 移动 UX 设计:如何设计推送通知

    这个问题你一定想过,在移动用户体验设计领域中,如何设计好一条简单的推送通知. 你注意过么,每天从不同的 App 上收到的大量的推送通知与提醒,这些通知里有多少你真的有兴趣? 每天,用户对各种没用的通知 ...

  8. [译文]casperjs使用说明-测试

    capserjs自带了一个测试框架,它提供了一个使你能够更容易的测试你的web应用的工具集. 注意: 1.1版本变更 这个测试框架,包括它的所有API,仅能使用在casperjs test子命令下 如 ...

  9. 851 AlvinZH的鬼畜密码(背包DP大作战N)

    851 AlvinZH的鬼畜密码 思路 难题.动态规划. 先判断字符串是否合理(可翻译),然后分段处理,每一小段用动态规划求出解法数. dp[i]:字符串str[0~i]的解法数.通过判断str[i] ...

  10. Linx 的组管理和权限管理

    Linux组基本介绍 在linux中的每个用户必须属于一个组,不能独立于组外.在linux中每个文件 有所有者.所在组.其它组的概念. 1) 所有者 2) 所在组 3) 其它组 4) 改变用户所在的组 ...