Loadrunner开发测试脚本

开发测试脚本可以通过录制,也可以手动开发,建议能录制的尽量录制,省时省力,不能录制的只能费力自己开发了,具体看项目情况来决定。

使用Loadrunner开发脚本过程中和Jmeter一样,需要了解HTTP传输原理,使用Fiddler等工具进程抓包,根据请求信息编写请求表单,根据响应信息判断返回值做关联处理,在Action中插入->新建步骤中添加需要的函数,设置请求参数来逐步完成每个请求。

在开发流程测试脚本过程中,往往需要将上一个请求的返回值作为下个请求的参数,这时候需要用到关联,很多时候Loadrunner自动关联不是万能的,需要我们自己定义关联提取出需要的信息,以下为关联部分脚本:

Action()

{

lr_start_transaction("打开登陆页");

web_url("web_url",

"URL={URL}/user/login.html",

"TargetFrame=",

"Resource=0",

"Referer=",

LAST);

lr_end_transaction("打开登陆页", LR_AUTO);

lr_start_transaction("提交登陆表单");

web_submit_data("web_submit_data",

"Action={URL}/user/login.do",

"Method=POST",

"TargetFrame=",

"Referer=",

ITEMDATA,

"Name=acct", "Value={username}", ENDITEM,

"Name=beforeURL", "Value=", ENDITEM,

"Name=password", "Value={password}", ENDITEM,

"Name=verifyCode", "Value=1234", ENDITEM,

LAST);

lr_end_transaction("提交登陆表单", LR_AUTO);

lr_start_transaction("出借列表");

web_url("web_url",

"URL={URL}/front/investmentList.html",

"TargetFrame=",

"Resource=0",

"Referer=",

LAST);

lr_end_transaction("出借列表", LR_AUTO);

//提取“去出借”请求的“loanId”参数,在“出借”请求中调用;

web_reg_save_param("loanId",

"LB=type=\"hidden\" id=\"loanId\" value=\"",

"RB=\"/>",

LAST);

lr_start_transaction("去出借");

web_url("web_url",

"URL={URL}/loanObject/2220003.html",

"TargetFrame=",

"Resource=0",

"Referer=",

LAST);

lr_end_transaction("去出借", LR_AUTO);

//以下为提取“出借”请求的关联,在“出借跳转”请求参数中调用;

web_reg_save_param("functionNum",

"LB=functionNum\\\":\\\"",

"RB=\\\",\\\"orderId",

LAST);

web_reg_save_param("orderId",

"LB=orderId\\\":\\\"",

"RB=\\\"",

LAST);

web_reg_save_param("ordDate",

"LB=ordDate\\\":\\\"",

"RB=\\\"",

LAST);

web_reg_save_param("investorId",

"LB=investorId\\\":\\\"",

"RB=\\\"",

LAST);

web_reg_save_param("borrowerId",

"LB=investorId\\\":\\\"",

"RB=\\\"",

LAST);

web_reg_save_param("fullAmount",

"LB=fullAmount\\\":",

"RB=,\\",

LAST);

web_reg_save_param("amount",

"LB=amount\\\":",

"RB=,\\",

LAST);

web_reg_save_param("signStr",

"LB=signStr\\\":\\\"",

"RB=\\\"",

LAST);

web_reg_save_param("freezeOrdId",

"LB=freezeOrdId\\\":\\\"",

"RB=\\\"",

LAST);

lr_start_transaction("出借");

web_submit_data("web_submit_data",

"Action={URL}/loanObject/invest.do",

"Method=POST",

"RecContentType=application/json",

"TargetFrame=",

"Referer=",

ITEMDATA,

"Name=loanId", "Value={loanId}", ENDITEM,

"Name=amount", "Value=100", ENDITEM,

LAST);

lr_end_transaction("出借", LR_AUTO);

lr_start_transaction("出借跳转");

web_submit_data("web_submit_data",

"Action={URL}/intf/bid.do",

"Method=POST",

"EncodeAtSign=YES",

"TargetFrame=",

"Referer=",

"Mode=HTML",

ITEMDATA,

"Name=jsonDataString", "Value={\"functionNum\":\"{functionNum}\",\"orderId\":\"{orderId}\",\"ordDate\":\"{ordDate}\",\"investorId\":\"{investorId}\",\"borrowerId\":\"{borrowerId}\",\"loanId\":\"{loanId}\",\"amount\":{amount},\"fullAmount\":{fullAmount},\"fee\":0.00,\"feeRate\":1.00,\"terminal\":\"pc\",\"maxTenderRate\":0.5,\"isFreeze\":\"Y\",\"freezeOrdId\":\"{freezeOrdId}\",\"signStr\":\"{signStr}\"}", ENDITEM,

LAST);

lr_end_transaction("出借跳转", LR_AUTO);

return 0;

}

提取数据根据请求响应信息的格式编写关联脚本,如抓包响应信息如下:

提取orderId参数的关联脚本为:

web_reg_save_param("orderId",

"LB=orderId\\\":\\\"",

"RB=\\\"",

LAST);

脚本调试过程中,根据脚本调试的目的来选取回放日志的类型,如果要查看提交表单请求的参数信息,选择扩展日志的高级跟踪:

如果要查看关联提取值是否正确,选择扩展日志的参数替换;

Loadrunner开发测试脚本的更多相关文章

  1. myeclipse调用loadrunner函数开发测试脚本

    myeclipse调用loadrunner函数开发测试脚本 一.使用myeclipse开发性能测试脚本 1.使用Eclipse新建一个Java工程,将目录%LoadRunner_Home%\class ...

  2. LoadRunner Vuser测试脚本添加前置条件举例

    调用接口前需要先获取登陆token,放入消息头中. /* * LoadRunner Java script. (Build: 3020) * * Script Description: 接口性能测试脚 ...

  3. loadrunner创建测试脚本运行无响应 不记录脚本

    解决一运行User Generator直接程序卡死无响应的办法. (1)“我的电脑”点右键->属性->高级 点选“性能”中的“设置” (2)打开对话框后,进入“数据执行保护”,如果空白框中 ...

  4. Postman—测试脚本

    前言 对于Postman中的每个请求,我们都可以使用JavaScript语言来开发测试脚本.这也就好比单元测试.我们先看看Postman的相关界面: 编写测试脚本 Postman测试脚本本质上是在发送 ...

  5. Loadrunner 脚本开发-利用Loadrunner生成Web service测试脚本

    脚本开发-利用Loadrunner生成Web service测试脚本 1.选择协议--Web Service,如下图 2.导入服务 入口1:点击Manage Services ->弹出窗中选择“ ...

  6. (转载)loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写

    原文出处:http://ajita.iteye.com/blog/1728243/ 先说明一下,本人是开发,对测试不是特别熟悉,但因工作的需要,也做过一些性能测试方面的东西.比较久之前很简单的用过,最 ...

  7. Loadrunner 脚本开发-利用loadrunner开发Windows Sockets协议脚本

    脚本开发-利用loadrunner开发Windows Sockets协议脚本 by:授客 QQ:1033553122 欢迎加入软件性能测试交流QQ群:7156436 实践举例 Socket服务端简单实 ...

  8. 开发测试技巧|辅助开发调试:goolge浏览器利用F12在控制台输入脚本实现表单自动填充

    一个开发测试技巧的指引和截图,利用google浏览器的F12调试和Console执行,注入JavaScript脚本实现表单的自动填充和测试. 原文链接: http://www.lookdaima.co ...

  9. 【JMeter4.0学习(五)】JMeter对服务器监控测试脚本开发

    目录: 下载相关JMeter插件 服务器监控测试脚本开发 附:参考相关文档 本文主要来说一下如何通过JMeter插件来监控服务器CPU.内存.磁盘.网络等相关资源. 一.首先,需要下载相关JMeter ...

随机推荐

  1. 免费提供UG、ProE二次开发、定制化开发服务

    免费提供UG.ProE二次开发,定制开发服务. 拥有六年UG.ProE二次开发经验,相关项目经验. 从事过智能设计.计算机图形学相关研究. 联系方式: QQ:1787326383 微信号:begtos ...

  2. [Spring MVC] - JSON

    Spring MVC中使用JSON,先必需引用两个包:jackson-core-asl-1.9.13.jar.jackson-mapper-asl-1.9.13.jar 因为需要使用到jquery测试 ...

  3. SpringMVC实现查询功能

    1 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=&qu ...

  4. Tips For Your Maya Plugin Development

    (The reason why I write English blog is that I'm trying to improve my written English. The Chinese v ...

  5. JVM堆内存设置和测试

    1. Java虚拟机内存结构 划分新生代和老年代,这样只在新生代分配内存,从而简化了新对象的分配.另外新生代和老年代使用不同的GC算法,可以更有效的清除不再需要的对象.从上图可以看出,JVM内存由yo ...

  6. Oracle补习班第一天

    My life is a straight line, turning only for you. 我的人生是一条直线,为你转弯

  7. 深入理解Bootstrap笔记

    框架介绍 1.框架简介 2.CSS基本语法 3.JavaScript基本语法 4.Bootstrap整体架构 5.12栅格系统 6.CSS组件架构设计思想 7.JavaScript插件架构 CSS布局 ...

  8. eclispe---快捷键设置

    1,eclipse自动补全的设置(自动提示) 2014-11-03 14:51:43 如果你用过Visual Studio的自动补全功能后,再来用eclipse的自动补全功能,相信大家会有些许失望. ...

  9. 解压版Tomcat配置

    解压版Tomcat配置(本例Tomcat6):   一 配置Tomcat 1 下载Tomcat Zip压缩包,解压.      如果增加tomcat的用户名和密码,则修改/conf/tomcat-us ...

  10. js多文件上传

    一.HTML 选择文件的时候可以选择多个文件,这个需要我们在input file 里面加入一个属性multiple="multiple" 这样就可以框选文件了 <!DOCTY ...