一、脚本开发过程:

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. vim环境下空格和tab键互换

    对于已保存的文件,可以使用下面的方法进行空格和TAB的替换 TAB替换为空格::set ts=4:set expandtab:%retab! 空格替换为TAB::set ts=4:set noexpa ...

  2. Java面试系列第2篇-Object类中的方法

    Java的Object是所有引用类型的父类,定义的方法按照用途可以分为以下几种: (1)构造函数 (2)hashCode() 和 equals() 函数用来判断对象是否相同 (3)wait().wai ...

  3. 重大更新!Druid 0.18.0 发布—Join登场,支持Java11

    Apache Druid本质就是一个分布式支持实时数据分析的数据存储系统. 能够快速的实现查询与数据分析,高可用,高扩展能力. 距离上一次更新刚过了二十多天,距离0.17版本刚过了三个多月,Druid ...

  4. 2019-2020-1 20199325《Linux内核原理与分析》第五周作业

    第五周作业主要是选择一个系统调用(13号系统调用time除外),使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用,在实验楼Linux虚拟机环境下完成实验. 系统调用的列表参见 http ...

  5. docker commit理解构建镜像(7)

    镜像是多层存储,每一层是在前一层的基础上进行的修改: 而容器同样也是多层存储是在以镜像为基础层,在基础层上加一层作为容器运行时的存储层. 当我们使用Docker Hub的镜像无法满足我们的需求时,我们 ...

  6. Libra教程之:Transaction的生命周期

    文章目录 Transaction的生命周期 提交一个Transaction 交易入链的详细过程 接收Transaction 和其他Validators共享这个Transaction 区块Proposi ...

  7. Fabric的6大特性

    文章目录 什么是Hyperledger Fabric 1. 成员准入 2. 性能,可伸缩性和信任级别 3 需要了解的数据 4 通过不可变的分布式账本进行复杂查询 5 支持插件组件的模块化架构 6 保护 ...

  8. cut,xargs,sort,tr,rename命令解析

    cut 文件内容查看 显示行中的指定部分,删除文件中指定字段 显示文件的内容,类似于下的type命令. 语法: cut(选项)(参数) 选项: -b:仅显示行中指定直接范围的内容: -c:仅显示行中指 ...

  9. Robot Framework -002 在Windows10上的安装

    机器人框架是使用Python实现的,并且还支持Jython(JVM),IronPython(.NET)和PyPy. 在安装框架之前,一个明显的前提条件是至少安装这些解释器之一. 下面列出了安装Robo ...

  10. 标准库shelve

    shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...