一、脚本开发过程:

1.计划:收集测试信息,整理业务逻辑,制定测试计划

2.录制脚本

新建脚本---选择脚本协议(单协议脚本;多协议脚本;最近使用过协议)选择协议---开始录制脚本

脚本录制时,VuGen捕获客户端与服务器之间互相传递的数据,对分析进行数据,把数据还原成所选协议的脚本,把脚本放进VuGen编辑器中

Loadrunner生成的脚本由三部分组成:vuser_init, Action, vuser_end

生成的脚本都是由函数组成,一般都放在Action中

因为vuser_init,vuser_end的代码只执行一次

3.脚本增强:插入事务、插入检查点、插入注释、关联

4.调试脚本:运行脚本

 

二、Recording Options配置

菜单栏-Tools-Recording Options

Recording选项卡:两种录制模式

(1)HTML-based script:又分为 模拟用户行为录制;录制所有连接、图片URL

(2)URL-based script:所有客户端发出的请求都录制成语句,隐藏信息也会录制出来(cookie、session)

Advanced选项卡:脚本回放设置

Correlation选项卡:设置脚本中的关联属性

为什么要关联

处理数据时,需要对服务端返回的数据进行解析,而服务端返回的数据如果是动态的,每次我们都是需要动态获取,这个时候就需要关联。简单来说,就是处理服务端返回的动态数据

一、Run-time Settings配置

菜单栏-Vuser-Run-time Settings

Run-time Settings:设置脚本运行时的运行策略

Run Logic:设置脚本运行的次数,只对脚本中Action有影响,对vuser_init,vuser_end没影响

Pacing:脚本多次重复运行时脚本之间的时间间隔

Think Time:用户向系统发出多次请求之间的时间间隔(忽略思考时间;按录制时的思考时间;录制时的思考时间的整数倍;录制时的思考时间的XX倍-XX倍之间取随机数;思考时间最大值)

Miscellaneous复合选项卡:脚本运行错误时解决方案;运行时把虚拟用户当线程还是进程,进程需消耗系统资源,可测最大并发用户数;事务的模式:a.每个操作步骤是一个事务,b.每个action是一个事务

Log:脚本回放时的日志格式

一、脚本完善

插入事务:插入开始事务函数,插入结束事务函数;

事务状态:自动设置,执行成功PASS、执行失败FAIL、异常中断STOP;

结束事务函数运行后事务状态就被设置为PASS,所以事务状态为PASS不一定操作执行成功,需设检查点进行判断是否成功

插入集合点:运行到集合点函数时停止运行,等待条件满足后才继续运行。虚拟用户并发的必要条件

插入注释:增加脚本可读性,方便测试人员进行维护

Vuser发生器的更多相关文章

  1. loadrunner入门篇-Vuser发生器

    Vuser 发生器(Visual User Generator,VuGen),主要通过捕获客户端向服务器发送的HTTP请求,将这些请求录制成脚本,在回放时将捕获的HTTP请求再次发送,以达到模拟客户行 ...

  2. LR12.53—第4课:准备Vuser脚本进行负载测试

    第4课:准备Vuser脚本进行负载测试 在前面的课程中,您确认您的Vuser脚本的回放产生了真正的用户的精确仿真.下一个步骤是准备的脚本负载测试.如何将多用户系统同时工作的工作?会拖慢系统到不可接受的 ...

  3. LR12.53—第3课:重播Vuser脚本

    第3课:重播Vuser脚本 在前面的教训,你记录了一组典型的用户行为,并准备重播脚本. 重播脚本之前,您可以配置脚本的运行时设置,它定义了Vuser的行为. 注:记录与基于Web的协议的地方WebTo ...

  4. LR12.53—第1课:构建Vuser脚本

    第1课:构建Vuser脚本 要生成系统上的负载,首先建立一个可以运行以模拟真实用户行为Vuser脚本.您使用VuGen创建和构建Vuser脚本. 在这一课中,你将涵盖以下主题: 介绍VuGen将 - ...

  5. loadrunner11中java vuser引用jar包

    1.创建工程,新建类,HelloWorld.java,代码如下: package com.liuke; public class HelloWorld { public String getHello ...

  6. 关于lr调用jar在vuser中可以运行,但是controller中却报错的问题

    如题,错误如下:javax.xml.parsers.FactoryConfigurationError: Provider org.apache.xerces.jaxp.DocumentBuilder ...

  7. Loadrunner中百分比模式和Vuser模式

    从百分比模式切换到Vuser模式后,多个脚本时候,每个脚本的比例仍然维持不变: 切换到Vuser模式后: 如果在场景执行过程中需要动态添加Vuser,只能在Vuser模式下执行场景 如果需要执行“组” ...

  8. LR之Java Vuser

    虽然LR对C有较好的支持,但有时使用Java Vuser会更方便,以下描述通过LR来编写Java脚本以及调用jar包的基本步骤. 1.安装配置java环境  LR的java vuser脚本的执行依赖于 ...

  9. 《Vuser虚拟用户开发》读书笔记

    学会了Vuser开发只是算了性能测试入了门.要做好性能测试还需要了解系统的功能,架构和设计测试用例. 脚本选用什么协议的依据是需要模拟的客户端与服务器之间的通信采用什么协议.与具体的开发技术并无直接的 ...

随机推荐

  1. 【高频 Redis 面试题】Redis 事务是否具备原子性?

    一.Redis 事务的实现原理 一个事务从开始到结束通常会经历以下三个阶段: 1.事务开始 客户端发送 MULTI 命令,服务器执行 MULTI 命令逻辑. 服务器会在客户端状态(redisClien ...

  2. Fiddler抓取抖音视频

    目录 工具 Fiddler配置 手机端配置 工具 Android 或 ios手机均可 Fiddler 下载地址:https://www.telerik.com/fiddler Windows 操作系统 ...

  3. qt 怎么让程序自带字体,就是说在操作系统上没有的字体

    字体要加到.qrc文件中 QString Widget::loadFontFamilyFromTTF() { static QString font; static bool loaded = fal ...

  4. 设置共享内存大小 【windows】

    hMapFile = CreateFileMapping( INVALID_HANDLE_VALUE, // use paging file NULL, // default security PAG ...

  5. java中ThreadLocalRandom的使用

    java中ThreadLocalRandom的使用 在java中我们通常会需要使用到java.util.Random来便利的生产随机数.但是Random是线程安全的,如果要在线程环境中的话就有可能产生 ...

  6. ERC20 Short Address Attack

    ERC20 Short Address Attack 什么是ERC20 Application Binary Interface(ABI) ERC20 Short Address Attack 开始攻 ...

  7. Scala教程之:Enumeration

    Enumeration应该算是程序语言里面比较通用的一个类型,在scala中也存在这样的类型, 我们看下Enumeration的定义: abstract class Enumeration (init ...

  8. iOS9.2.1 App从AppStore上下载闪退问题

    首先这是小编的第一篇文章,我是一名做iOS开发的小白,出于爱好会更新发表些相关的技术文章,偶尔也会发些视频.恳请大家不要去嘲笑一个努力的人,要是做的不好请多多评论,反正我也不改. 好了!敲黑板!!说正 ...

  9. 墨仓式进入2.0时代?爱普生商用墨仓式L4158试用

    提起"墨仓式"打印机,相信现在已经没有人需要过多的解释,墨仓式打印机在打印市场占有率不断提高就是最佳佐证.为什么用户对于墨仓式这么认可,想必是墨仓式真正洞悉了他们的需求,解决了打印 ...

  10. Vim Operations

    Vim有三种模式:输入模式.命令模式和末行命令模式. 输入模式用来输入文字,命令模式用来下达编排文件的操作指令,末行命令模式用来进行文件存档.离开编辑器等操作. 进入及离开 末行模式下: :w 保存当 ...