LR-事务
一、对事务的理解 在LR中什么是事务,事务是记录从客户端到服务器端,服务器端返回到客户端应答的时间,可以反映出一个操作所用的时间。那么事务的时间主要是由响应时间、事务自身时间、浪费时间(wasted time)组成。 二、事务响应时间的组成
•网络时间(web server和APP server时间)
•服务器处理时间(web服务器、app服务器、数据库服务器的处理时间)
•网络延迟时间(前端Network、后端服务) 前端network延迟时间包含:
•DNS Lookup:DNS域名解析服务,是由解析器以及域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。上网时输入的网址,是通过域名解析系统解析找到了相对应的IP地址,这样才能上网。其实,域名的最终指向是IP。
•Time to connect
•Time to first buffer:第一次缓冲时间,成功收到从Web服务器返回的第一次缓冲之前的这一段时间内的每个页面组件的相关服务器/网路时间
•Network time
•Download time
•SSL handshake:SSL握手协议,建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
•FTP authentication
•Client time
•Error time
•网络延迟 后端服务延迟时间主要有Web server、APP server、Database server组成:
•Web server:
.servlet time
.method time
.静态动态压缩
•APP server
.EJB time
.Methond time
.JNDI Lookup
•Database server
.JDBC time
.Connect time
.Execute time 以上事务响应时间摘抄自《性能测试进阶指南LR11》,其中网络延迟时间自己的理解,前端应该是用户在进行操作,如输入了URL地址从浏览器到网络的时间。 三、事务自身时间(插入事务即使事务中没有操作,也需要时间) 事务的时间一般在1/100秒左右,因此可以忽略 四、浪费时间(Wasted Time) 浪费时间是事务中应该扣除的由于其他原因导致的时间浪费,如:执行一个计算密钥的程序,会浪费很多时间,这时候需要通过计算出wasted time来过滤事务时间 五、事务函数
•lr_start_transaction("事务名称"):事务开始
•lr_end_transaction("事务名称","事务状态"):事务结束,结束状态LR_AUTO,LR_PASS,LR_FAIL,LR_STOP
•lr_start_timer():与lr_end_timer()联合使用可以得到程序运行的时间
•lr_end_timer():与lr_start_timer()联合使用可以得到程序运行的时间
•lr_get_transaction_duration(const char *transaction):返回事件执行到此所用的时间 例子: lr_start_transaction("事务名称") timer=lr_start_timer() //所需计算时间的程序 (略) trans_time=lr_get_transaction_duration(”事务名称");//返回事件执行到此处所用的时间 wasted_timer=lr_end_timer(timer);// lr_start_timer() 执行到 lr_start_end() 所用时间 lr_end_transaction("事务名称","事务状态") 六、手工事务 对于自动结束状态的事务来说(LR_AUTO),只要服务器给用户返回了信息,就会认为事务是通过的。因此需要手工事务来进行判断 例:如用户注册,已经注册过的用户通过LR_AUTO来进行判断,最后依然会显示事务成功 可以用web_reg_find()函数来对登陆失败或者登陆成功以后页面进行文字的查找,对事务进行判断 Login { web_reg_find("Search=Body","SaveCount=regst","Text=登陆成功',LAST); lr_start_transaction("regstnewuser"); //录制的登陆代码 (略) if(aton(lr_eval_string("{regst}"))>=) lr_end_transaction("regstnewuser",LR_PASS); else lr_end_transaction("regstnewuser",LR_FAIL); }
LR-事务的更多相关文章
- LR事务、集合点
事务(Transaction):为了衡量服务器的性能,我们需要定义事务.比如:我们在脚本中有一个数据查询操作,为了衡量服务器执行查询操作的性能,我们把这个操作定义为一个事务,这样在运行测试脚本时,Lo ...
- lr事务
事务:transaction(性能里面的定义:客户机对服务器发送请求,服务器做出反应的过程) 用于模拟用户的一个相对完整的业务操作过程:如登录,查询,交易等操作(每次http请求不会用来作为一个事务) ...
- LoadRunner学习笔记
什么是性能测试: 简单说,功能测试是软件是否能用,性能测试是看软件好不好用: 性能测试的含义,大体来讲就是通过自动化的手段,模拟生产运行的业务压力或者相应的场景,来测试协同系统是否满足生产需要. 性能 ...
- 对LR analysis的平均事务响应时间和summary中时间值不同的解释
最近在做性能测试对LR结果分析时,又碰到了关于summary里与平均事务响应时间中各交易的响应时间值不同的问题.在此做个记录. 若交易中设置了思考时间,分析时需要注意查看是否过滤思考时间. 设置是否包 ...
- 性能学习笔记之四--事务,思考时间,检查点,集合点和手写lr接口
一.事物,思考时间,检查点,集合点 1.事务 lr里面的事物是lr运行脚本的基础.lr里面 要测试的三个维度都以事物为单位,所以一定要有事物.事务的概念贯穿loadrunner的使用,比如我们说的响应 ...
- Redis学习笔记~Redis事务机制与Lind.DDD.Repositories.Redis事务机制的实现
回到目录 Redis本身支持事务,这就是SQL数据库有Transaction一样,而Redis的驱动也支持事务,这在ServiceStack.Redis就有所体现,它也是目前最受业界认可的Redis ...
- javaweb学习总结(三十八)——事务
一.事务的概念 事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功. 例如:A——B转帐,对应于如下两条sql语句 update from account set mone ...
- LR录制Flex+Web,登录功能之登录密码出错的处理
在LR中录制好更改密码脚本,Controller中使用少量用户进行:单用户多迭代.多用户单迭代.多用户多迭代,运行正常,于是使用490Vuser+2iteration修改980个用户的密码,部分 Vu ...
- loadrunner关联和事务
1.关联 不关联,录制没有问题,回放时可能会出错. 排除字符限制,输入因素,如果自己手动操作网页时不会报错,回放时报错,那么可以肯定,有数据需要使用关联. 如果录制没有错误,且对脚本没有进行任何修改, ...
- LR常见问题整理
1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. LR11 无法弹出ie浏览 ...
随机推荐
- HDU1536:S-Nim(sg函数)
S-Nim Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- python自学笔记(一)
我没学过python,通过网上和一些图书资料,自学并且记下笔记. 很多细节留作以后自己做项目时再研究,这样能更高效一些. python基础自学笔记 一.基本输入和输出 pthon3.0用input提示 ...
- 通过循环判断size()清理queue的问题
今天犯了个二逼问题,我想清理一个queue里对象,用了以下方法: ;i<objQueue.size();++i) { T* p_obj = objQueue.front(); delete p_ ...
- 简单实现VUE的双向数据绑定
<!DOCTYPE html> <html> <head> <title>vue-双向数据绑定的简单实现</title> </head ...
- Python学习笔记(四十)— 内置模块(9)HTMLParser
摘抄自:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001432002312 ...
- [php]apache虚拟主机配置
1.所谓虚拟主机的配置,即url与磁盘目录的绑定 2.在httpd.conf中查询Virtual host,发现有注释说明需要在conf/extra/httpd-vhosts.conf中进行配置. 3 ...
- centOS7 vsftp ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS) 启动失败问题?
[root@localhost c]# systemctl status vsftpd.service ● vsftpd.service - Vsftpd ftp daemon Loaded: loa ...
- 从urllib和urllib2基础到一个简单抓取网页图片的小爬虫
urllib最常用的两大功能(个人理解urllib用于辅助urllib2) 1.urllib.urlopen() 2. urllib.urlencode() #适当的编码,可用于后面的post提交 ...
- Paramiko使用
1.下载安装 pycrypto-2.6.1.tar.gz (apt-get install python-dev) 解压,进入,python setup.py build[编译],python set ...
- Oracle笔记之用户管理
1. 创建用户 创建用户使用create user语句,需要DBA权限: CREATE USER tom IDENTIFIED BY mot; 2. 更改用户密码 修改别人的密码需要DBA权限,或者a ...