LoadRunner接口工作总结
因为工作中需要开发维护类似枢纽性质的平台,所以经常利用LR进行接口测试、接口自动化测试、接口压力测试。用多了LR,有点不愿意使用报文编辑器进行手工接口测试了。
接口脚本操作过程:
首先:打开LR,NEW一个Web(HTTP/HTML)协议的界面。鼠标点进Action函数内,点击左上角的Insert,点击“Submit Data”。General中的Method选择POST,General中的Action可以先随便填。选完General,再点击Data,因为报文头,报文体是分开的,所以我点击了两次Add,第一次点击Add,Name填写xmlhead,第二次点击Add,Name填写xmlbody.Value先不要填值,点击确定,如下图:
这时,鼠标放在参数标识{NewParam}处,鼠标右键选择“Parameeter Properties”,参数要访问的网址点击OK。再看Name=xmlhead和Name=xmlbody,Value后面的报文可以根据规范自己拼凑,也可以粘贴生产上的报文稍微改动一下。这里有3点需要注意:1、每行都要加双引号;2、报文头、报文体里如果有双引号要加转移符;3、报文头、报文体要加上UTF-8注释。至此一个简单的接口脚本就可以测试了。
自动化脚本:
工作中会有几个接口组合在一起形成闭环,比如进入一个购物网站,需要登录、浏览、选购、下单、退出等等。逻辑搞明白了,就可以在LR上按接口的顺序写接口脚本了。在左上角鼠标放到Action上,右键选择Create New Action。Action name可以填写接口名或容易识别的名字,点击确认,参照“接口脚本操作过程”来写脚本,脚本写完后,从第一个接口脚本的后边加一个思考时间,后续脚本依次类推加思考时间,思考时间加到导数第二个闭环接口。如图:
至此,一个完整的自动化脚本就可以跑了。
接口压力测试:
中转枢纽类平台生产环境经常会遇到某一独立接口负载过大导致报错的问题,这时候就需要在测试环境进行压力测试找到该接口的每秒最大并发量了。首先在LR上运行该接口脚本,成功后点击左上角Tools-->Select Scenario Type-->Manual Scenaio-->NUmber of Vusers选择500,点击确定。进入Controller界面,点击运行按钮就可以进行压力测试了。脚本跑的过程中可以关注Controller中界面的变化,也可以查看工作界面的日志记录信息。压力测试跑完后,生成压力报告,根据报告图表性能评测,做出系统每秒负载。时间太晚了,就要到这了,后续如果再跑压力测试,会详细描述接口压力测试和图标分析。关于接口压力测试时,参数化手机等数字遇到的问题,可以参见之前写的博客,后边是路径:http://www.cnblogs.com/yinze/p/7004003.html
LoadRunner接口工作总结的更多相关文章
- mybatis——mybatis打印sql 接口工作原理
https://blog.csdn.net/Lxinccode/article/details/79218566 接口工作原理: Dao接口即Mapper接口.接口的全限名,就是映射文件中的names ...
- 网络工程知识(二)VLAN的基础和配置:802.1q帧;Access、Trunk、Hybrid接口工作模式过程与配置;VLANIF的小实验
介绍-VLAN VLAN(Virtual Local Area Network)即虚拟局域网,工作在数据链路层. 交换机将通过:接口.MAC.基于子网.协议划分(IPv4和IPv6).基于策略的方式划 ...
- LoadRunner接口测试方法
实际上到目前为止,我所做过的几个关于性能测试的项目,都是在UI页面上能正常访问结束所有的前期功能测试而开始的性能测试.但loadrunner不仅仅只能靠录制回放修改脚本进行性能测试. 往往需要对发送报 ...
- loadrunner 接口性能脚本编写(Get请求和Post请求)
前段时间接触了一下loadrunner的接口性能测试,然后尝试了一下手动编写脚本,毕竟录制这种东西,不是每次都能通的,而且录制下来的脚本,通常是有很多其他杂七杂八的请求夹杂在中间,没有达到真正的压测接 ...
- 【问题记录】LoadRunner 接口压测-json格式报文
[问题起因] 前段时间,协助其他项目录制接口压测脚本,对方要求请求报文内容实现参数化. 请求方法如下: 直接在Parameter List中新增一个parameter, 将请求报文放入dat文件中.这 ...
- LoadRunner接口脚本编写过程中遇到的问题及分享
工作中需要接口测试,报文编辑器一条条手工发费时费力,因此考虑利用web_submit_data函数POST方法进行报文编辑.在报文编辑中主要遇到了三个问题,其中一个问题耗时两天查到问题所在,在这里与大 ...
- LoadRunner接口脚本web_submit_data编写过程中遇到的问题及分享
工作中需要接口测试,报文编辑器一条条手工发费时费力,因此考虑利用web_submit_data函数POST方法进行报文编辑.在报文编辑中主要遇到了三个问题,其中一个问题耗时两天查到问题所在,在这里与大 ...
- Loadrunner 接口依赖测试
Action() { //利用关联获取第一个GET请求的返回XXX字段的值,并存储到response_XXX变量中. web_reg_save_param_ex( "ParamName=re ...
- I2S接口工作原理
I2S音频通信协议 I2S有3个主要信号: 1.串行时钟SCLK,也叫位时钟(BCLK),即对应数字音频的每一位数据,SCLK都有1个脉冲.SCLK的频率=2×采样频率×采样位数 2. 帧时钟LRC ...
随机推荐
- 全景智慧掌上城,飞入寻常百姓家——VR全景智慧城市
随着腾讯和阿里陆续将AR技术加入到新年抢红包大战之中,人们对于VR.AR未来的应用空间又多了一些想象.同传统的基于二维元素的抢红包不同,借助VR.AR的技术能够让用户获得一种更加真切的体验,这种体验相 ...
- Oracle体系结构之进程
Oracle体系结构之进程 一.概述 Oracle中的每个进程都要执行一个特定的任务(或者一组任务),每个进程都会为自己分配内存(PGA)来完成它的任务.一个Oracle实例主要有以下3类进程: (1 ...
- Java中常见的数据结构的区别
把多个数据按照一定的存储方式,存储起来,称存储方式之为数据结构. 数据的存储方式有很多,数组,队列,链表,栈,哈希表等等. 不同的数据结构,性能是不一样的,比如有的插入比较快,查询比较快,但是删除比较 ...
- Dubbo有意思的特性介绍
Duboo 不单让我们可以像使用本地服务一样的使用远程服务,还设计了很多特性来满足我们平时开发时常见的场景,省却了我们不少麻烦,真是一款有良心的框架,下面针对这些场景和解决方案来具体解释下: 1.接口 ...
- js中替换字符串(replace方法最简单的应用)
replace方法的语法是:stringObj.replace(rgExp, replaceText) 其中stringObj是字符串(string),reExp可以是正则表达式对象(RegExp)也 ...
- Error creating bean with name 'signController': Injection of autowired dependencies failed
出现了一大串错误,Error creating bean with name 'signController': Injection of autowired dependencies failed. ...
- javaScript的一些奇妙动画
今天我给大家讲一下JavaScript中的显示隐藏.淡入淡出的效果 显示与隐藏动画效果 show()方法: show()方法会动态地改变当前元素的高度.宽度和不透明度,最终显示当前元素,此时 ...
- python 解析nginx 日志 url
>>> import os>>> os.chdir('e:/')>>> log=open('access.log')//这两行是获取日志流> ...
- WPF编程-WPF体系结构
WPF简介 Windows Presentation Foundation(WPF)是微软新一代图形系统,运行在.NET Framework 3.0架构下,为用户界面.2D/3D 图形.文档和媒体提供 ...
- 玩转UITableView系列(一)--- 解耦封装、简化代码、适者生存!
UITableView这个iOS开发中永远绕不开的UIView,那么就不可避免的要在多个页面多种场景下反复摩擦UITableView,就算是刚跳进火坑不久的iOS Developer也知道实现UITa ...