LoadRunner 学习(基础一)
最近开始正式系统地学习LoadRunner11。本想在自己觉得确实学到了比较有成就感的时候再mark一下,写个博客分享。阶段性地或者在自己有所小收获的时候,做做笔记分享下也好。这次作为开篇,我想记录下从安装遇到的问题到使用和学习过程中所收获的,主要分为以下三个方面:
- 安装
- 录制
- 测试场景设计
安装
以前做过一次性能测试,当时也是使用的LoadRunner11,也是安装在64位操作系统上,都能正常的录制、执行等。但这次的同样安装在64位操作系统上,却发现连IE都调不出来,换浏览器也是无法录制。也试过写脚本来调出IE,也是不行。终究在32位的虚拟机上安装后,才解决了问题。
对于安装,有以下两点需要注意:
- 软件运行环境。Loadrunner11需要安装在32位的操作系统上。一般情况下,LoadRunner11还是不支持64位操作系统。在技术学习过程中,累积经验很重要,但是有时经验主义也会带来不利,重点还是该细心.
- 浏览器兼容性。LoadRunner11支持多个浏览器,但是对IE,目前还只能较好地支持IE8/9.
录制
脚本在录制后,要进行参数化。这里有两处需要注意:设置参数值 和 取数。
设置参数有多种方法:
- 第一种方式,当迭代次数较少,可以直接在编辑参数时添加行【Add Row】。
- 第二种方式,可以直接点击【Edit With Notepad】按钮,在文本编辑器中编辑该参数脚本文件来添加参数。PS:编辑添加数据时,一定要注意最后一行要留空,即要留一个空行,否则,测试执行过程中会报-13874,提示missing newline的错误
- 第三种,在系统中已编辑好参数脚本文件,通过【Browser】添加文件即可。
- 第四种,先通过ODBC数据源管理器添加一个Access数据源,添加数据库文件;然后在数据库查询的向导对话框的SQL输入框中输入SQL语句以筛选出需要用到的数据列:select column from table
取数,包括两个:数据分配方法和数据更新方式。此处也是本人经常混淆不清的地方。下面对不同数据分配方法下采用不同数据更新方式的情况做个说明。
数据分配方式Select next row选择Sequence:
对应数据更新方式:
- Each iteration:对于每次迭代,Vuser会从数据表中提取下一个值。
如:v1,v2,v3,v4,v5。所有Vuser,第一次迭代取值v1,第二次迭代取值v2- Each occurrence:参数每次出现时,Vuser会从数据表中提取下一个值,即便在同一次迭代中。
如:v1,v2,v3,v4,v5。第一次迭代中,第一次出现该参数,取值v1,下一处出现该参数取值v2- Once:对于所有Vuser,第一次分配的值,将用于后续所有的迭代。
如:v1,v2,v3,v4,v5。在第一次迭代中,第一个Vuser取值v1,第二个Vuser取值v1;第二次迭代中还是这样的值。
数据分配方式Select next row选择Randow:
对应数据更新方式:
- Each iteration:对于每次迭代,Vuser会从数据表中重新随机取值。
如:v1,v2,v3,v4,v5。在第一次迭代中,第一个Vuser随机取值,第二个Vuser也随机取值;第二次迭代不受第一次影响- Each occurrence:参数每次出现时,Vuser重新随机取值
- Once:对于每个Vuser,第一次迭代随机取值,第一次的取值会用于后面所有迭代中。即第一次迭代随机取值,后续迭代使用第一次迭代的取值。
数据分配方式Select next row选择Unique:
对应数据更新方式:
- Each iteration:对于每次迭代,Vuser会从数据表中提取下一个唯一值。
如:v1,v2,v3,v4,v5,v6,执行两个迭代。第一个vuser被分配到v1和v2,第一次迭代执行时取值v1,第二次取v2;第二个vuser被分配到v3和v4,第一次迭代执行时取值v3,第二次取v4.- Each occurrence:参数每次出现,Vuser会从数据表中提取新的唯一值。
- Once:第一次迭代给每个vuser分配一个唯一值,这个值将用于该vuser后续所有的迭代。
场景设计
场景设计,有两种方式:
- 面向手动的场景设计
- 面向目标的场景设计
面向手动的场景设计
性能测试中,如采取循序渐进,增量式增加系统压力来进行压力测试,则可采取手动的场景设计Manual Scenario。此时应注意设置每次的开始的虚拟用户数和持续的时间长度。
面向目标的场景设计
面向目标的场景设计中,是基于性能要求明确的情况,可以定义要实现的测试目标。场景目标主要包括五种类型:虚拟用户数、每秒单击次数、每秒事务数、每分钟页面数或事务响应时间。在创建新的场景时,选择Goal-Oriented Scenario,即可进入到目标设置页面。
设置目标:
- Edit Scenario Goal。进入目标设计页面。
- 选择目标类型。对应前面所述的几种:Virtual Users、Hits per Second、Transactions per Second、Transactions Response Time、Pages per minute。
- 设置目标参数值。
完成以上,便可执行基础的性能测试了。
25/05/2015
LoadRunner 学习(基础一)的更多相关文章
- loadrunner学习--基础知识
性能测试相关术语: 1.响应时间:指系统从发出请求开始到客户端接受到所有数据所消耗的时间. 2.并发用户:指同一时刻与服务器进行数据交互的所有用户数量.计算公式F=Nvu x R/T 其中F表示吞吐量 ...
- 现代3D图形编程学习-基础简介(2) (译)
本书系列 现代3D图形编程学习 基础简介(2) 图形和渲染 接下去的内容对渲染的过程进行粗略介绍.遇到的部分内容不是很明白也没有关系,在接下去的章节中,会被具体阐述. 你在电脑屏幕上看到的任何东西,包 ...
- 现代3D图形编程学习-基础简介(1) (译)
本书系列 现代3D图形编程学习 基础简介 并不像本书的其他章节,这章内容没有相关的源代码或是项目.本章,我们将讨论向量,图形渲染理论,以及OpenGL. 向量 在阅读这本书的时候,你需要熟悉代数和几何 ...
- 软件测试之loadrunner学习笔记-02集合点
loadrunner学习笔记-02集合点 集合点函数可以帮助我们生成有效可控的并发操作.虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行 ...
- 软件测试之loadrunner学习笔记-01事务
loadrunner学习笔记-01事务<转载至网络> 事务又称为Transaction,事务是一个点为了衡量某个action的性能,需要在开始和结束位置插入一个范围,定义这样一个事务. 作 ...
- JavaScript学习基础部分
JavaScript学习基础 一.简介 1.JavaScript 是因特网上最流行的脚本语言,并且可在所有主要的浏览器中运行,比方说 Internet Explorer. Mozilla.Firefo ...
- 【IOS学习基础】NSObject.h学习
一.<NSObject>协议和代理模式 1.在NSObject.h头文件中,我们可以看到 // NSObject类是默认遵守<NSObject>协议的 @interface N ...
- git学习基础教程
分享一个git学习基础教程 http://pan.baidu.com/s/1o6ugkGE 具体在网盘里面的内容..需要的学习可以直接下.
- c语言学习基础:[1]开发工具介绍
标签:c语言 1 2 3 4 分步阅读 学习编程语言的童鞋们一开始接触到的最多的估计就是C语言了,其次才是什么java.c++等,可以说学习c语言是我们走向编程世界的一座桥梁,学好它,对于我们学习和研 ...
- 20165318 预备作业二 学习基础和C语言基础调查
20165318 学习基础和C语言基础调查 技能学习经验 我们这一代人,或多或少的都上过各种兴趣班,舞蹈钢琴画画书法,我也是如此.可这些技能中,唯一能拿的出手的就是舞蹈了.按照<优秀的教学方法- ...
随机推荐
- 列表推导式,两个for循环的例子
[a for a in alist for b in blist if a>b] for i in alist,blist: print(i) >> alist[] >> ...
- vue参考
https://github.com/taylorchen709/vue-admin http://element-cn.eleme.io/#/zh-CN/component/layout https ...
- 使用Inno SetUp脚本打包Winform程序
在开发桌面程序时,往往需要用到打包工具将程序打包为exe可执行文件. 之前在项目中用了下 InstallShield Limited Edition for Visual Studio 2015,它 ...
- erlang热部署
以下流程参考rebar的wiki,亲测 rebar的版本一定要注意,高版本对于下面两个指令有bug rebar generate-appups rebar generate-upgrade 经过一个个 ...
- VCS (版本控制系统)
1.什么是VCS? 版本控制系统(version control system),是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统.版本控制系统不仅可以应用于软件源代码的文本文件, ...
- Window中的内存地址(小知识)
现在的编辑器大部分工作都是内存管理托管型,所以很少直接对Window的内存地址直接管理了. Window中的内存地址主要是以16进制数字体现的,当操作系统为32位时,那么每个内存地址为2的32次方,也 ...
- 安全测试回顾(一)补充:burp 的基本操作
浏览器设置; 拦截请求: Spider 伪造请求: 对这个url 伪造请求 拦截一个页面后,进入攻击模块 sniper 两个参数值 保证一个不变 另一个 进行枚举 battering ram 两个 ...
- Kali下Ahmyth的使用
项目地址:https://github.com/AhMyth/AhMyth-Android-RAT 下载后打开 安装nodejs,nodejs在官网下载,下载完后解压,切到bin目录下 设置全局 ro ...
- hardentools
Hardentools是一组简单的实用程序,旨在禁用操作系统(Microsoft Windows,现在)以及主要的消费者应用程序公开的许多“功能”.这些通常为企业客户所设想的功能,对于普通用户来说通 ...
- Android 4 学习(12):Linkify & Broadcast event
参考<Professional Android 4 Development> Linkify Linkfy类可以在Text View中创建超链接.匹配LInkify中正则表达式的文本将被L ...