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. js模板引擎用法

    JavaScript模板引擎Template.js使用详解 作者:A_山水子农 字体:[增加 减小] 类型:转载 时间:2016-12-15我要评论 这篇文章主要为大家详细介绍了JavaScript模 ...

  2. ssm 连接两个数据库

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  3. sql 允许远程登录

    grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option; flush privileges ...

  4. linux命令清除服务器缓存

    linux 服务器开了某项服务或程序后,内存占用的非常大,停止服务或关闭进程后,内存不会立即释放,需要手动释放,使用命令 echo 3 > /proc/sys/vm/drop_chaches 释 ...

  5. Java获得数据库查询结果的列数和行数,打印查询结果

    Java连接数据库及简单操作见我以前的一篇随笔:http://www.cnblogs.com/meitian/p/5036332.html   一.获取查询结果的行数和列数 查询结果为ResultSe ...

  6. as3.0橡皮擦功能

    //主容器 var main:Sprite = new Sprite(); main.mouseEnabled = false; addChild(main) //临时容器(所有操作都将先画在临时容器 ...

  7. 第二章 向量(f)归并排序

  8. ssh 与远程机器保持心跳(linux)

    文件/etc/ssh/ssh_config末尾加上: TCPKeepAlive yes ServerAliveInterval

  9. Navicat连接mysql(高级选项配置)

    .对于服务器上的mysql中存在多个数据库,我们如果全部连接显示,但是平时使用的只有一个库,那么查询的速度会很慢的.所以,今天和大师兄学习了一招.只连接一个自己使用的数据库.配合高级设置,提升很多. ...

  10. CentOS常用的文件操作命令总结

    我可以说是linux操作新手,有些命令经常忘记,特别是对文件的某些操作,经常要翻阅之前的笔记,今天把之前在百度上整理的“CentOS常用的文件操作命令”转载到我的新博客上面,以供后面查阅! 博客后面还 ...