性能基础知识学习之四---事务,思考时间,检查点,集合点和手写lr接口

一.事物,思考时间,检查点,集合点

1.事务

  lr里面的事物是lr运行脚本的基础.lr里面 要测试的三个维度都以事物为单位,所以一定要有事物.事务的概念贯穿loadrunner的使用,比如我们说的响应时间其实是事务的的相应时间;tps,每秒中处理的事务数.当脚本跑完之后没有响应时间,导致此种情况之一就是没定义事务.

  而在录脚本时:

    1.在录脚本是要添加事务

    2.添加事务是为了准确的测出相应请求的响应时间,尽量保证每一个事务中只有一个请求.但当录制脚本的时候,在录制HTML脚本时,由于一个HTML下可以有多个url,此时为了保证请求的"干净",可以将mode改为http.http就会只发送这个请求,而html会下载上下文.

  

    3.做脚本时每个事物就放一个请求,这样响应时间就是这个事物的时间,每个事物只包含一个请求

    4,思考时间,检查点,关联函数都放在事务外面

    

ps:做测试的时候action里面最好只有一个请求.因为如果有多个请求,运行同样的时间下,脚本比较"干净"的脚本跑的tps会大一点,这样就影响了tps; 当跑并发的时候,应用服务器里面只处理一个请求和处理多个请求,一定是处理一个请求的更快一点.也就是说,脚本的"干净性"会影响tps和响应时间.

2.检查点

检查点实际是从请求的返回结果里面判断某一个字符串是否有返回,从而判断脚本的请求是否正确

方法:

a.抓包看请求的返回值,从请求的返回值里面.从返回值里面找出能标识返回值的唯一字段

b.在lr中打开脚本的tree视图--HTTP View---从response中找到上一步在返回值里面找出的标识返回值的唯一字段---选中这个字段后右键---选择"Add Text Check Step"

在脚本中显示如下:

其中,以web_reg开头,所以该函数是预注册函数要放在要检查请求的前面,并且为了准确的测出事务的响应时间要放在事务的外面.

PS:1.当在做性能的压测的时候一定要保证请求的成功率=正确的请求/总请求.只有当加检查点后才能保证请求的成功率.

  2.检查点会影响性能,当要做结果的检查但又想不影响性能的话,可以做数据库的写操作(update,insert,delete)

3.集合点

集合点在并发的时候才会生效;集合点是为了保障所有的并发都一起运行集合点下面的请求,加大瞬时并发的概率.

集合点放置的位置也要放在事务之前

集合点的添加:Insert -- Rendezvous

4.思考时间

等待时间,相当于sleep

添加思考时间方法:

1.在脚本中添加函数lr_think_time(5),添加时添加到事务的外面.

2.设置run time setting:

思考时间作用:控制单位时间内像服务器发起请求的数量,以达到控制服务器压力的目的,从而影响事务的响应时间及tps.

eg:

注册   tps=1s    rt=1s   (说明服务器1s处理一个请求)

1个并发   rt=1s

2个vu     vu1         rt=1s                  2s(vu2的1s+自己处理的1s)

     vu2        rt=2s(处理时间1s+等待vu1的1s)

5.tps(每秒钟处理事务数)

理论上说,响应时间越大,tps越大;响应时间越小,tps越大.因为响应时间越小,处理的事务越多. 当服务器到达极限值以后,响应时间会增加,但tps不会变了

tps与响应时间的关系

tps与并发用户的关系:

随着并发用户量的不断增大,tps不断增大

二.手写接口

  下面介绍请求接口常用的几个函数:

1.web_custom_request

这个函数用于接口的get/post请求.get请求参数与url拼接使用?,参数与参数之间连接使用&,

如http://127.0.0.1/bbs/upload/member.phpmod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1

post请求,在body里面添加请求参数.

  当参数为json时,使用该函数更简洁方便.

注:尽量把Mode改为HTTL,这样在tree视图中会过滤掉css等一些请求.Mode默认为HTML

2.web_url

  这个函数用于接口的get请求,只能做get请求

3.web_submit_data

使用web_submit_data做接口时,会自己往接口url后面拼问号.故,不论是get还是post请求,都要将参数写到data部分.但使用这个函数通常都用来做post请求.

  

————————————————
原文链接:https://www.cnblogs.com/panpan0301/p/8698626.html

原文地址:https://www.cnblogs.com/mawenqiangios/p/12573817.html

时间: 03-26

性能基础知识学习之四---事务,思考时间,检查点,集合点和手写lr接口的相关文章

计算机基础知识学习

第一周学习 一.知识方面,总得来说,就是学习计算机基础知识. 1.从计算机的发展,应用,组成,网络等方面了解: 2.对计算机操作系统的学习:常用的操作系统,操作系统的功能.分类: 3.办公软件的学习:Word\Excel\ppt,像Word中编号格式.自动生成目录,Excel中条件格式的应用,图表插入,以及各种基础函数的使用: =SUM(Eoo*$E$3,Foo*$F$3,Goo*$G$3)  表示:用E\F\G列的各数与E3\F3\G3相乘后求和,count(if)\a 计数函数, =COUN

PHP基础知识学习总结

从今天开始过一遍PHP的基础知识   加油  地址:http://www.runoob.com/php/php-operators.html   该看:PHP运算符 2017年5月23日23:38:30 笔记: PHP基础知识2017年5月23日23:38:411.PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言.2.PHP 是服务器端脚本语言.3.PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一种通用开源脚本语言.PHP

〖前端开发〗HTML/CSS基础知识学习笔记

经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> <body>...</body> </html> html是根标签 head定义文档头部,包含: title, script, style, link, meta body是网页主要内容,包含:h1,h2-h6, p, a, img 2. 认识head标签: <head

学习笔记TF024:TensorFlow实现Softmax Regression(回归)识别手写数字

TensorFlow实现Softmax Regression(回归)识别手写数字.MNIST(Mixed National Institute of Standards and Technology database),简单机器视觉数据集,28X28像素手写数字,只有灰度值信息,空白部分为0,笔迹根据颜色深浅取[0, 1], 784维,丢弃二维空间信息,目标分0~9共10类.数据加载,data.read_data_sets, 55000个样本,测试集10000样本,验证集5000样本.样本标注信

计算机基础知识+学习方向

目前所使用的计算机均遵循冯·诺依曼体系结构.其理论要点是:数字计算的是数制采用二进制:计算机按照程序顺序执行,必须使用二进制进行数据的存储和处理,规则简称为"软硬件结合,逻辑结合硬件".统一称为电子计算机,目前光子计算机.量子计算机正处于研究阶段. 计算机语言大体分为三类语言:机器语言.微码语言.高级语言.机器语言为二进制语言,以1.0为判断依据的最为基础的计算机语言,操作起来极难,通过二进制语言进行的人机交流,实属不易:之后发展出来了微码语言,汇编语言为微码语言的代表语言,其为最为接

linux基础知识学习笔记

1.Linux介绍 Linux版本: 内核版本:最基本的核心程序,只要用于企业和个人在此基础自行开发所需功能. 发行版本:在内核基础上增加了一些常用软件,满足企业和用户直接使用的基本需求. Linux应用领域: 个人桌面:图形桌面开发 服务器领域:整个系统就像dos命令行一样,全部命令操作. 嵌入式领域(智能硬件):在Linux基础上开发自己所需的功能然后将程序烧到硬盘中去执行. 后两个实用最广泛: 2.Linux目录和文件操作 Linux目录: Linux的四种文件类型: 1.可分享的 可以分

IOS基础知识学习

第一章MAC  OS X 1.Mac操作系统,俗称雪豹系统,开发IPhone开发首先要安装MAC系统. 2.objective-c是基于C语言的扩展 3.Mac App store应用商店是苹果公司的电子市场,程序员开发的程序必须上传到此商店上,供别人下载. 4.Appkit用于MAC界面开发,Uikit用于IPhone界面开发. 5.Application kit框架包含实现图形,事件驱动等 6.Xcode是用于开发MAC OS 和IOS应用程序的实用工具,要熟练运用它. 7.Xcode提供代

tomcat 基础知识学习

1: 直接将web项目文件件拷贝到webapps 目录中,Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用,所以可以将JSP程序打包成一个 war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹.一个war包就是有特性格式的jar包,它是将一个web程序的所有内容进行压缩得到. webapps这个默认的应用目录也是可以改变.打开Tomcat的conf目录下的server.xml文件,找到下面内容: <Host

python基础知识学习

基础数据类型 int整型 >>> 1111 1111 >>> type(1111) <type 'int'> >>> str字符串 字符串是不可修改的 >>> a = 'a' >>> type(a) <type 'str'> 去空格 >>> a = ' hello,world' >>> a.strip() 'hello,world' >>>

Go语言基础知识学习笔记1

安装教程我就不写了,推荐大家下载msc的安装包,因为他会自动帮你配置一些环境变量,但是GOPATH这个工作目录的环境变量需要自己配置 右键我的电脑->属性->高级系统设置->环境变量->新建系统变量 变量名称大写 GOPATH 路径就你的工作目录,如我的是D:/go 如果有多个工作目录就使用";"分号分割 根据约定,GOPATH下需要建立3个目录: bin (存放编译后生成的可执行文件)pkg (存放编译后生成的包文件)src (存放项目源码) 查看环境变量与工