首页

文章

如何用loadrunner做简单网站的压力测试

发布网友 发布时间:2022-03-25 22:17

我来回答

4个回答

懂视网 时间:2022-03-26 02:39

loadrunner测试流程是:

  

  1、计划测试。明确压力点,根据压力点设计多少种场景组合。

  

  2、把文档(包括多少种场景组合、场景与场景组合条件的对应表)写好。

  

  3、如果监测UNIX机器,在被监测的机器需要安装监测Unix的进程。

  

  4、让开发人员帮助准备测试数据或写相关的文档,来准备数据。

  

  5、让开发人员做一个恢复数据的脚本,以便于每次测试的时候都能够有一个相同的环境。

  

  6、针对每一个模块包括四个子文件夹:如模块A下包括“脚本”、“场景”、“结果”、“图表” 四个子文件夹,每个子文件夹储存对应的文件,结果名“1场景”是在场景中的“Results Setting”中设置的。

  

  7、具体的设置见“建立场景”部分,在打开模板设置,选中“Automatically save the session as:”并且在“%ResultDir%”后面填写想保存的文件名,当打开某个lrr文件时,系统自动在当前目录中生成一个文件保存分析图表。

  

  

热心网友 时间:2022-03-25 23:47

用loadrunner做简单网站的压力测试的方法

使用LoadRunner 完成测试一般分为四个步骤:

1、Vvitrual User Generator 创建脚本。

创建脚本,选择协议,录制脚本, 编辑脚本,检查修改脚本是否有误。

2、*控制器(Controller)来调度虚拟用户。

创建Scenario,选择脚本,设置机器虚拟用户数,设置Schele,如果模拟多机测试,设置Ip Spoofer。

3、运行脚本。

分析scenario

分析测试结果

4、安装LoadRunner 中文版。

LoadRunner 分为Windows 版本和Unix 版本。如果所有测试环境基于Windows 平台, 那么只要安装Windows 版本即可。本章讲解的安装过程就是LoadRunner7.8中文的Windows 版本的安装。

5、使用LoadRunner进行负载/压力测试。

6、录制基本的用户脚本。

创建用户脚本需要用到VuGen。提示: 运行VuGen 最好在1024*768 的分辨率下, 否则有些工具栏会看不到。启动Visual User Generator 后, 通过菜单新建一个用户脚本, 选择系统通讯的协议。这里需要测试的是Web 应用,同时考虑到后台SQL数据库所以需要选择Web(HTTP/HTML)协议+SQL SERVER协议,确定后, 进入主窗体。通过菜单来启动录制脚本的命令。

7、在URL 中添入要测试的Web 站点地址。

●测试http://lms.ah.sp.com.cn/lms-lmm/loginForm.do选择要把录制的脚本放到哪一个部分, 默认情况下是“Action”。

这里简单说明一下:VuGen 中的脚本分为三部分:vuser_init、vuser_end 和Action。其中vuser_init 和vuser_end 都只能存在一个, 不能再分割, 而Action 还可以分成无数多个部分( 通过点击New 按钮, 新建ActionXXX)。在录制需要登陆的系统时, 把登陆部分放到vuser_init 中, 把登陆后的操作部分放到Action 中, 把注销关闭登陆部分放到vuser_end 中。( 如果需要在登陆操作设集合点, 那么登陆操作也要放到Action 中, 因为vuser_init 中不能添加集合点) 在其它情况下, 只要把操作部分放到Action 中即可。注意: 在重复执行测试脚本时,vuser_init 和vuser_end 中的内容只会执行一次, 重复执行的只是Action 中的部分。

8、点“ 选项 ”按钮, 进入录制的设置窗体, 这里一般情况下不需要改动。

●然后点“OK” 后,VuGen 开始录制脚本。在录制过程中, 不要使用浏览器的“ 后退” 功能,LoadRunner 支持不太好! 录制过程中, 在屏幕上会有一个工具条出现。录制的过程和WinRunner 有些类似, 不再多介绍。录制完成后, 按下“ 结束录制” 按钮,VuGen 自动生成用户脚本, 退出录制过程。

9、完善测试脚本。

当录制完一个基本的用户脚本后, 在正式使用前还需要完善测试脚本, 增强脚本的

灵活性。一般情况下, 通过以下几种方法来完善测试脚本。插入事务、插入结合点、插入注解、参数化输入。这里只举例介绍参数化如何设置,其它只作简单介绍。

10、插入事务。

事务(Transaction): 为了衡量服务器的性能, 需要定义事务。比如: 在脚本中有一个数据查询操作, 为了衡量服务器执行查询操作的性能, 把这个操作定义为一个事务, 这样在运行测试脚本时,LoadRunner 运行到该事务的开始点时,LoadRunner 就会开始计时, 直到运行到该事务的结束点, 计时结束。这个事务的运行时间在结果中会有反映。

插入事务操作可以在录制过程中进行, 也可以在录制结束后进行。LoadRunner 运行在脚本中插入不限数量的事务。

具体的操作方法如下: 在需要定义事务的操作前面, 通过菜单或者工具栏插入。输入该事务的名称。注意: 事务的名称最好要有意义, 能够清楚的说明该事务完成的动作。插入事务的开始点后, 下面需要在需要定义事务的操作后面插入事务的“ 结束点”。同样可以通过菜单或者工具栏插入。默认情况下, 事务的名称列出最近的一个事务名称。一般情况下, 事务名称不用修改。事务的状态默认情况下是LR_AUTO。一般情况下, 也不需要修改, 除非在手工编写代码时, 有可能需要手动设置事务的状态。

11、插入集合点。

插入集合点是为了衡量在加重负载的情况下服务器的性能情况。在测试计划中, 可能会要求系统能够承受1000 人同时提交数据,在LoadRunner 中可以通过在提交数据操作前面加入集合点, 这样当虚拟用户运行到提交数据的集合点时,LoadRunner 就会检查同时有多少用户运行到集合点,如果不到1000 人,LoadRunner 就会命令已经到集合点的用户在此等待, 当在集合点等待的用户达到1000 人时,LoadRunner 命令1000 人同时去提交数据, 从而达到测试计划中的需求。

注意: 集合点经常和事务结合起来使用。集合点只能插入到Action 部分,vuser_init 和vuser_end 中不能插入集合点。具体的操作方法如下: 在需要插入集合点的前面, 通过菜单或者工具栏操作输入该集合点的名称。注意: 集合点的名称最好要有意义, 能够清楚的说明该集合点完成的动作。

12、插入注释。

注释的作用就不多说了, 不过插入注释最好是在录制过程中。具体的操作方法如下: 在需要插入注释的前面, 通过菜单或者工具栏操作。

13、参数化输入。

如果用户在录制脚本过程中, 填写提交了一些数据, 比如要增加数据库记录。这些操作都被记录到了脚本中。当多个虚拟用户运行脚本时, 都会提交相同的记录, 这样不符合实际的运行情况, 而且有可能引起冲突。为了更加真实的模拟实际环境, 需要各种各样的输入。参数化输入是一种不错的方法。

用参数表示用户的脚本有两个优点: 

① 可以使脚本的长度变短。

② 可以使用不同的数值来测试脚本。例如, 如果企图搜索不同名称的图书, 仅仅需要写提交函数一次。在回放的过程中, 可以使用不同的参数值, 而不只搜索一个特定名称的值。

参数化包含以下两项任务: 

① 在脚本中用参数取代常量值。

② 设置参数的属性以及数据源。

参数化仅可以用于一个函数中的参量。不能用参数表示非函数参数的字符串。

另外, 不是所有的函数都可以参数化的。

参数化输入的讲解, 采用一个例子的方式来进行。

在本例中参数化用户的登陆名:

先看如下脚本,通过脚本录制找到用户登陆部分,如图

14、参数名随意取,建议取通俗易懂的名字,下面重点介绍一下参数的类型。

●DateTime: 很简单, 在需要输入日期/时间的地方, 可以用DateTime 类型来替代。其属性设置也很简单, 选择一种格式即可。当然也可以定制格式。

.●Group Name:暂时不知道何处能用到,但设置比较简单。在实际运行中,LoadRunner 使用该虚拟用户所在的Vuser Group 来代替。但是在VuGen 中运行时,Group Name 将会是None 

.●Load Generator Name: 在实际运行中,LoadRunner 使用该虚拟用户所在Load Generator 的机器名来代替。

.●Iteration Number: 在实际运行中,LoadRunner 使用该测试脚本当前循环的次数来代替。

.●Random Number: 随机数。很简单。在属性设置中可以设置产生随机数的范围

.●Unique Number:唯一的数。在属性设置中可以设置第一个数以及递增的数的大小。

注意: 使用该参数类型必须注意可以接受的最大数。例如: 某个文本框能接受的最大数为99。当使用该参数类型时, 设置第一个数为1, 递增的数为1, 但100 个虚拟用户同时运行时,第100 个虚拟用户输入的将是100,这样脚本运行将会出错。

注意: 这里说的递增意思是各个用户取第一个值的递增数, 每个用户相邻的两次循环之间的差值为1。举例说明: 假如起始数为1, 递增为5, 那么第一个用户第一次循环取值1, 第二次循环取值2; 第二个用户第一次循环取值为6, 第二次为7; 依次类推。

●Vuser ID: 设置比较简单。在实际运行中,LoadRunner 使用该虚拟用户的ID 来代替,该ID 是由Controller 来控制的。但是在VuGen 中运行时,Vuser ID 将会是–1。

File: 需要在属性设置中编辑文件,添加内容,也可以从现成的数据库中取数据( 下面将会介绍) 

●User Defined Function: 从用户开发的dll 文件提取数据。就目前我认为, 这种方式没有必要。VuGen 支持C 语言的语法,在VuGen 中重新编写类似的函数应该不难。

上面的例子中, 取随机数即可。点“Properties… ..” 按钮, 进行属性设置窗口添入随机数的取值范围为(1-50), 选择一种数据格式。在“属性” 中有以下几个选项: 

◆Each Occurrence:在运行时, 每遇到一次该参数, 便会取一个新的值

◆Each iteration:运行时, 在每一次循环中都取相同的值

◆Once:运行时, 在每次循环中, 该参数只取一次值

这里我们用的是随机数, 选择Each Occurrence 非常合适。

下面我们再介绍用数据库中的用户名来参数化登陆用户名。

框选住登陆名,点鼠标右键,弹出对话框,选择“替换为新参数”弹出对话框,此时参数名输入:name,参数类型选择File,如图

15、注意: 参数的文件名不要使用con.dat、pm.dat 或者lpt*.dat 等系统装置名下面我们将会连接数据库, 从数据表中选择用户名。点“数据向导” 按钮,显示如图

16、添入连接字符串, 点“创建” 按钮,选择事先配置好的ODBC连接。在SQL语句里输入select查询语句,出现如图窗口

17、提醒: 在参数数据显示区, 最多只能看到100 行, 如果数据超过100 行, 只能点“编辑” 按钮, 进入记事本看。

“选择下一行 ” 有以下几种选择: 

●Sequential: 按照顺序一行行的读取。每一个虚拟用户都会按照相同的顺序读取

●Random: 在每次循环里随机的读取一个, 但是在循环中一直保持不变

●Unique : 唯一的数。注意: 使用该类型必须注意数据表有足够多的数。比如Controller 中设定20 个虚拟用户进行5 次循环, 那么编号为1 的虚拟用户取前5 个数, 编号为2 的虚拟用户取6-10 的数, 依次类推, 这样数据表中至少要有100 个数据, 否则Controller 运行过程中会返回一个错误。

“按编号”指选择列表中的那一列数据,从左到右分别是1、2、3依次通常用在有关联性的数据上面。我们这里取值Sequential 即可。完成设置关闭即可

4.3 单机运行测试脚本

经过以上的各个步骤后, 脚本就可以运行了。运行脚本可以通过菜单或者工具栏来操作。

执行“ 运行” 命令后,VuGen 先编译脚本, 检查是否有语法等错误。如果有错误,VuGen 

将会提示错误。双击错误提示,VuGen 能够定位到出现错误的那一行。为了验证脚本的正

确性, 还可以调试脚本, 比如在脚本中加断点等, 操作和在VC 中完全一样, 相信大家谁都不会感到陌生。如果编译通过, 就会开始运行。然后会出现运行结果。

热心网友 时间:2022-03-26 01:05

  这个问题问的有点泛。LoadRunner做压力测试也是有比较规范的流程。当然这个还是要看你做压测的目标和场景。目标和场景要从压测需求做起。例如:
  需求调研和总结;
  测试策略和场景制定;
  测试环境部署;
  测试用例编写;
  测试数据准备;
  脚本录制和调试;
  场景运行设置
  场景加压测试
  测试数据分析和调优
  优化回归测试
  当然以上只是写出测试主干过程,其中细节和要掌握的知识也不是一点点东西能说的明白,希望这点点说明能解你疑惑。

热心网友 时间:2022-03-26 02:39

压力测试不是一次并发的数多就说明性能好的,而是要求并发数多并且持续运行一段时间后仍然没有出错,这样测试的结果才有意义的!所以你应该设置持续运行的时间,不然测试的结果不准确的。
李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 “君不见巴丘古城如培塿”的出处是哪里 带“奈何”的诗句大全(229句) 里翁行()拼音版、注音及读音 带“不虑”的诗句 “鲁肃当年万人守”的出处是哪里 无尘防尘棚 进出口报关流程,越详细越好。谢谢大家指教。 双线桥不是看化合价升多少就标多少的吗?为什么CL2+2KI=2KCL+I2中I失... 出师表高锰酸钾有画面了吗 2021年幼儿园新学期致家长一封信 电脑屏幕一条黑线怎么办? 销售代理商销售代理商的特点 商业代理商业代理的特征 如何看微信有没有开通微众银行 为什么微众没有开户 微众银行怎么开户 微众银行APP开户流程是什么? 唐古拉山海拔唐古拉山海拔是多少 怎么看待取消跳广场舞的人的退休金 如何选购新鲜的蓝田水柿? 恭城水柿柿树作用 创维洗衣机使用教程 创维全自动洗衣机怎么使用 自动开门器 狗羊属相婚姻相配吗 3岁的小孩不会说话怎么办 请问loadrunner的联机测试具体步骤是什么啊? LoadRunner工具的LoadRunner工具测试四个基本步骤 loadrunner测试系统的步骤 怎么唤醒语音助手,jovi没有语音助手怎么办? jovi怎么语音唤醒? vivo手机黑屏如何唤醒jovi TWS 2系列如何唤醒Jovi语音助手? vivo手机助手怎么唤醒? vivo手机怎么唤醒jovi JKL-al00什么型号 jkm_al00是什么型号 高德地图如何分享标记点 高德地图如何标点啊? iphone米聊 怎么邀请? 米聊可以加微信为好友么?怎么加啊? 在米聊中,怎样把打招呼列表上的人,添加到好友列表? 米聊怎么玩 米聊添加通讯录好友问题 米聊怎么用啊 米聊如何群聊 LoadRunner怎样做压力测试 四、1、LoadRunner是做什么的,简述使用LoadRunner测试软件的过程。 loadrunner怎样做自动化测试 LoadRunner 压力测试步骤,有详细说明,最好带图 loadrunner怎么做压力测试 HP load runner 测试软件是怎么测试? 怎样使用loadrunner做C/S压力测试,基本步骤是什么? LoadRunner怎样做压力测试? CS架构应用使用loadrunner如何进行性能测试 loadrunner 性能测试 -接口测试 如何LoadRunner进行中间件的性能测试 用loadrunner测试API接口的性能,毫无头绪,求详细过程,具体要求如下 用LoadRunner怎么进行桌面应用程序的性能测试? 怎么使用loadrunner测试页面性能? 我的车旺打卡和别人分享了,我想把别人删掉,怎么样才能删掉_问一问 车旺大卡能录像吗 车旺大卡是什么,好用吗? 车旺大卡好友在哪里显示 车旺大卡怎样使用 车旺大卡如何多人登录
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com