Loadrunner在脚本录制过程中,我们会先后分别碰见init、action、transaction、end、block等概念。本次打算以图文并茂的形式为大家分别讲解。
以下为一个简要的网站操作逻辑流程:

init
用于录制测试用例的初始化操作脚本。负载场景中只会执行一次,并且只在开始阶段执行。
通常将加载操作放置于此。
当且仅当测试用例没有将登陆操作作为测试点时,将登陆操作放置于此。
action
用于录制测试用例的测试点操作脚本。负载场景中会持续重复执行,当负载退出时停止执行。
通常将验证、检索、展示、提交等操作放置于此。
当且仅当测试用例涵盖登出操作作为验证点时,将登出操作放置于此。(不过我没遇见过这种事,我这样说的目的在于别僵化于我片面的描述,要按照实际情况录制脚本)
transaction
用于记录脚本回放与负载场景中脚本执行消耗时间,此时间通常被称作响应时间(英 response time)。
当然同时记录事务处理总数也会被记录,最后通过计算得出每秒处理事务数(英Transaction Per Second,缩写TPS)。
响应时间与每秒处理事务数,是性能瓶颈分析过程中极为重要的两大指标。
     

事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。(在此我不想把大家的思维局限于loadrunner中transation的概念。在做unit级别的性能分析时,事务的概念是极为重要滴!)

      通常在设置事务,以一次单独操作或者一次request作为begin,以一次此次操作响应结束作为end。
 

transaction延伸

      事务特性:ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)的缩写。
  • 原子性:即不可分割性,事务要么全部被执行,要么就全部不被执行。如果事务的所有子事务全部提交成功,则所有的数据库操作被提交,数据库状态发生转换;如果有子事务失败,则其他子事务的数据库操作被回滚,即数据库回到事务执行前的状态,不会发生状态转换。
  • 一致性或可串性:事务的执行使得数据库从一种正确状态转换成另一种正确状态。
  • 隔离性:在事务正确提交之前,不允许把该事务对数据的任何改变提供给任何其他事务,即在事务正确提交之前,它可能的结果不应显示给任何其他事务。
  • 持久性:事务正确提交后,其结果将永久保存在数据库中,即使在事务提交后有了其他故障,事务的处理结果也会得到保存。   
      关于事务,其实可以延伸很多内容出来,给大家几个关键字自己去查吧。事务隔离级别、事务的状态、事务回滚
 

end

      用于录制测试用例的退出操作脚本。负载场景中只会执行一次,并且只在退出阶段执行。
      通常将登出操作放置于此。
 

block

      用于将action分块管理,以实现较为复杂的测试场景。
      分别有sequential 与 random可选特性。

Loadrunner 脚本录制策略的更多相关文章

  1. [转]LoadRunner脚本录制常见问题整理

    LoadRunner脚本录制常见问题整理 1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面 ...

  2. Loadrunner脚本录制常见问题整理

    1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. 启动浏览器,打开Inter ...

  3. Loadrunner 脚本录制-通过代理录制脚本

    脚本录制-通过代理录制脚本 by:授客 QQ:1033553122 版本:Loadruner 11.0 A.PC端录制Web应用程序 步骤1:根据实际情况,选择对应的协议 本例中选择Web(HTTP/ ...

  4. LoadRunner脚本录制常见问题

    LoadRunner录制脚本时为什么不弹出IE浏览器?当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. 启动浏览器,打开Internet ...

  5. loadrunner 脚本录制-录制选项设置HTML-based URL-based Script

    脚本录制-录制选项设置, HTML-based Script与URL-based Script by:授客 QQ:1033553122 Access:Vugen->Tool->Record ...

  6. loadrunner 脚本录制-Action分类

    脚本录制-Action分类 by:授客 QQ:1033553122 Action分类 l . Vuser_init 2. Vuser_end 3.  Action 在lr中用户的初始化操作应该存放在V ...

  7. loadrunner 脚本录制-Protocol Advisor协议分析器的使用

    脚本录制-Protocol Advisor协议分析器的使用 by:授客 QQ:1033553122 1.启动Protocol Advisor File > Protocol Advisor &g ...

  8. Loadrunner脚本录制注意事项(七)

    1.手动走一遍被测业务,达到熟悉理解业务,注意是否和服务器有数据交互,为脚本是否需要关联做准备: 2.浏览器选择IE8/9较好,选择其他浏览器可能会有各种问题.(a.IE设置:内容-设置-去掉所有选项 ...

  9. 一、loadrunner脚本录制及回放

    录制及回放的注意点: 1.测试系统教复杂时,正确的划分action,对监控的每一个业务模型和操作,起到重要作用 2.录制完成后,先进行编译(改动脚本之后检查下有没有语法错误):工具栏Vuser下有一个 ...

随机推荐

  1. linux下arm汇编注释符

    注意使用 @ 符 # 是整行注释符 @ 是行内注释符 以为 @ 是行内注释符,害我调试了半天.

  2. centos 升级sqlite3

    1.yum remove sqlite3 2. 下载: wget -O sqlite-autoconf-.tar.gz https://www.sqlite.org/2019/sqlite-autoc ...

  3. Animator

    [Animator] 1.State Machine Behaviours A State Machine Behaviour is a special class of script. In a s ...

  4. BOM进IN_BOM_HEADER表后被过滤掉

    1.查看如下两个表发现BOM被过滤掉了 SELECT  PRODUCT_ID||'_'||substr(BOM_ID,1,8),A.* FROM IN_BOM_HEADER A WHERE A.PRO ...

  5. wordpress smtp发送邮件

    准备工作   进入qq邮箱 点击设置 邮箱设置 账户选项 下拉 找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务  开启 点击开启后发送短信内容 配置邮件客户端 到 ...

  6. c++中的类(class)-----笔记(类简介)

    1, class 和 struct 都可以定义一个类,区别是两者在所支持的 默认信息隐藏方式不同:c++ 中默认为 private 类型,而 struct 中默认为 public 类型. 2,类的私有 ...

  7. webpack 打包问题2

  8. 【资料整理】c#基础

    .net基础:.net与C# .net是一个平台 c#是一门语言 .net的用途a.桌面应用程序 b.网站应用程序 c.专业游戏开发(XBOX360) d.嵌入式设备软件开发 e.智能手机APP开发 ...

  9. 【python】理解循环:for,while

    先看下for结构: #!/usr/bin/python # -*- Coding:UTF-8 -*- for i in range(1): print i 输出: 0 输入和输出: #!/usr/bi ...

  10. TZOJ 3711 浪漫自习(最大流)

    描述 如今的校园谈恋爱已是习以为常,这不,去上自习也要成双成对的.现在假设某班里有N对情侣从同一寝室楼出发,到达同一个教室上自习.途中,她们可能会经过长廊.静溪等一系列的景点观光游览.但情侣们不希望在 ...