LoadRunner对sockets报文进行压力测试(脚本设计)
1、 LR新建一个windows sockets项目

2、 action中写入测试代码
如:
#include "lrs.h"
Action()
{
char *recvbuf;
int recvlen=0;
int rc;
lr_start_transaction("Transocket");
lr_start_transaction("Conn_socket");
rc=lrs_create_socket("socket0","TCP","LocalHost=0","RemoteHost=IP地址:端口号",LrsLastArg);//IP地址和端口
lr_output_message("rc=%d",rc);
if(rc!=0)//检查连接是否成功
{
lr_end_transaction("Conn_socket",LR_FAIL);
lr_end_transaction("Transocket",LR_FAIL);
return 0;
}
lr_end_transaction("Conn_socket",LR_PASS);
lr_rendezvous("查询");//集合点
lrs_send("socket0","buf0",LrsLastArg);//发送
lrs_receive("socket0", "buf1", LrsLastArg);//接收
lrs_save_param_ex("socket0","received","buf1",0,lrs_get_last_received_buffer_size("socket0"),NULL,"Res_BIG1");//保存参数,命名为Res_BIG
if((strstr(lr_eval_string("<Res_BIG>"),"成功"))==NULL)//验证,检查点,检查Res_BIG1中是否有“成功”字样
{
lr_error_message("失败",LR_FAIL);
lr_end_transaction("Transocket",LR_FAIL);
}
else
{
lr_output_message("成功",LR_FAIL);
lr_end_transaction("Transocket",LR_PASS);
}
lrs_close_socket("socket0");
return 0;
}
3、 发送报文内容填写(下列内容可直接写在data.ws中),XML报文需要注意单双引号问题,因为data.ws中的内容以双引号为界限,所以所有XML报文中双引号换为单引号即可
;WSRData 2 1
send buf0
"1111xxxx{H:01 UPBS PXML upbs.bpp.0607.01 11111111114119141111vXgImf 313 } 00000000<?xml version='1.0' encoding='GB18030'?><Document><ReqHdr><BankCommHeader><channelcode>XXXXXX</channelcode><channeldate>20170212</channeldate><channeltime>XXXXXX</channeltime><channelserno>2017021211432<NewParam></channelserno><brno>XXXXXX</brno><tellerno>P0093</tellerno></BankCommHeader></ReqHdr><Content>XXXXXXXXXXXXX</Content></Document>"
recv buf1 300
-1
4、 启动日志,将日志级别调整为最高,依次打开vuser—>run-time setting,设置为如下图即可

5、 执行脚本,查看日志结果
LoadRunner对sockets报文进行压力测试(脚本设计)的更多相关文章
- LoadRunner系列之—-01 接口压力测试脚本
LoadRunner中一般用如下函数进行接口测试: <一>. http或soap协议下的get请求接口,样例如下: web_url("integrated_query.jsp&q ...
- VS2010+Selenium测试脚本设计
VS2010+Selenium测试脚本设计 http://www.docin.com/p-755903506.html
- loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写
使用loadrunner进行压力测试主要分两步,第一步是编写脚本(比较重点),第二步执行测试(配置都是在界面上点点就行了,当然我只的是比较简单的,能满足日常需要的),第三步分析结果(这一步比较高深,但 ...
- (转载)loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写
原文出处:http://ajita.iteye.com/blog/1728243/ 先说明一下,本人是开发,对测试不是特别熟悉,但因工作的需要,也做过一些性能测试方面的东西.比较久之前很简单的用过,最 ...
- Loadrunner&Jemeter进行手机APP压力测试
一.loadrunner通过代理录制app脚本 随着手机APP的广泛应用,手机应用的使用已占据了大量的市场份额,尤其是优秀的手机APP,动辄用户过千万过亿,对于如此庞大的用户量,我们在开发APP时,也 ...
- LoadRunner 如何进行接口的压力测试
主要压测的时候需要开发提供相关接口文档,或者自己录制.左侧的Name都是开发提供的接口参数名称,Value是相应的参数值.Action为开发给的测试地址.PS:注意在测试的时候设置Controller ...
- python mongodb压力测试脚本
$ pip install pymongo #!/usr/bin/env python #coding=utf-8 #Author: Ca0Gu0 from pymongo import MongoC ...
- 使用Loadrunner进行http接口压力测试
业务描述: 在业务系统里进行查询操作,查询的结果是通过请求http接口,从系统中处理并将结果以json字符串返回. 本文就讲述使用Loadrunner对此类接口进行压力测试并记录相关的性能指标数据: ...
- 如何使用 JMeter 调用你的 Restful Web Service?进行简单的压力测试和自动化测试
表述性状态传输(REST)作为对基于 SOAP 和 Web 服务描述语言(WSDL)的 Web 服务的简单替代,在 Web 开发上得到了广泛的接受.能够充分证明这点的是主流 Web 2.0 服务提供商 ...
随机推荐
- 【BZOJ2752】【Luogu P2221】 [HAOI2012]高速公路
不是很难的一个题目.正确思路是统计每一条边被经过的次数,但我最初由于习惯直接先上了一个前缀和再推的式子,导致极其麻烦难以写对而且会爆\(longlong\). 推导过程请看这里. #include & ...
- STM32CUBE+KEIL+Compiler V6使用方法
可以参考:https://blog.csdn.net/PeterSun01/article/details/90445439https://www.jianshu.com/p/18a58fee94ce ...
- 初识linux(简单命令)
之前一直搞不懂,为什么全是命令行的linux系统这么多公司都在用,当你看不懂那一行行命令时你一定会和我一样觉得头大.但当你学习了命令再结合桌面版觉得linux还是挺不错的
- 【leetcode】1259.Handshakes That Don't Cross
题目如下: 解题思路:动态规划.记dp[i] = v表示由i个人组成的圈子一共有v种握手的方法.对于一个由n个人组成的圈子,编号为0的人一共可以和编号为 (1,3,5....,n-1)的握手,这也很好 ...
- (转)Android中图片占用内存计算
在Android开发中,我现在发现很多人还不会对图片占用内存进行很好的计算.因此撰写该博文来做介绍,期望达到抛砖引玉的作用. Android中一张图片(BitMap)占用的内存主要和以下几个因数有 ...
- Greenplum 日常维护
1. 数据库启动:gpstart 常用可选参数: -a : 直接启动,不提示终端用户输入确认 -m:只启动master 实例,主要在故障处理时使用 2. 数据库停止:gpstop: 常用可选参数:-a ...
- poj 3625 (最小生成树算法)
Building Roads Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 12203 Accepted: 3448 D ...
- summernote(富文本编辑器)将附件与图片上传到自己的服务器(vue项目)
1.上传图片至自己的服务器(这个官方都有例子,重点介绍附件上传)图片上传官方网址 // onChange callback $('#summernote').summernote({ callback ...
- Vue源码阅读一:说说vue.nextTick实现
用法: 在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法,获取更新后的 DOM. 疑惑: 怎么实现的延迟回调 原理: JavaScript语言的一大特点就是单线程,同一个时 ...
- C++入门经典-例6.12-使用数组地址将二维数组输出
1:以a[4][3]为例 a代表二维数组的地址,通过指针运算符可以获取数组中的元素 (1)a+n代表第n行的首地址 (2)&a[0][0]既可以看作第0行0列的首地址,同样也可以被看作是二维数 ...