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报文进行压力测试(脚本设计)的更多相关文章

  1. LoadRunner系列之—-01 接口压力测试脚本

    LoadRunner中一般用如下函数进行接口测试: <一>. http或soap协议下的get请求接口,样例如下: web_url("integrated_query.jsp&q ...

  2. VS2010+Selenium测试脚本设计

    VS2010+Selenium测试脚本设计 http://www.docin.com/p-755903506.html

  3. loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写

    使用loadrunner进行压力测试主要分两步,第一步是编写脚本(比较重点),第二步执行测试(配置都是在界面上点点就行了,当然我只的是比较简单的,能满足日常需要的),第三步分析结果(这一步比较高深,但 ...

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

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

  5. Loadrunner&Jemeter进行手机APP压力测试

    一.loadrunner通过代理录制app脚本 随着手机APP的广泛应用,手机应用的使用已占据了大量的市场份额,尤其是优秀的手机APP,动辄用户过千万过亿,对于如此庞大的用户量,我们在开发APP时,也 ...

  6. LoadRunner 如何进行接口的压力测试

    主要压测的时候需要开发提供相关接口文档,或者自己录制.左侧的Name都是开发提供的接口参数名称,Value是相应的参数值.Action为开发给的测试地址.PS:注意在测试的时候设置Controller ...

  7. python mongodb压力测试脚本

    $ pip install pymongo #!/usr/bin/env python #coding=utf-8 #Author: Ca0Gu0 from pymongo import MongoC ...

  8. 使用Loadrunner进行http接口压力测试

    业务描述: 在业务系统里进行查询操作,查询的结果是通过请求http接口,从系统中处理并将结果以json字符串返回. 本文就讲述使用Loadrunner对此类接口进行压力测试并记录相关的性能指标数据: ...

  9. 如何使用 JMeter 调用你的 Restful Web Service?进行简单的压力测试和自动化测试

    表述性状态传输(REST)作为对基于 SOAP 和 Web 服务描述语言(WSDL)的 Web 服务的简单替代,在 Web 开发上得到了广泛的接受.能够充分证明这点的是主流 Web 2.0 服务提供商 ...

随机推荐

  1. 【BZOJ2752】【Luogu P2221】 [HAOI2012]高速公路

    不是很难的一个题目.正确思路是统计每一条边被经过的次数,但我最初由于习惯直接先上了一个前缀和再推的式子,导致极其麻烦难以写对而且会爆\(longlong\). 推导过程请看这里. #include & ...

  2. STM32CUBE+KEIL+Compiler V6使用方法

    可以参考:https://blog.csdn.net/PeterSun01/article/details/90445439https://www.jianshu.com/p/18a58fee94ce ...

  3. 初识linux(简单命令)

    之前一直搞不懂,为什么全是命令行的linux系统这么多公司都在用,当你看不懂那一行行命令时你一定会和我一样觉得头大.但当你学习了命令再结合桌面版觉得linux还是挺不错的

  4. 【leetcode】1259.Handshakes That Don't Cross

    题目如下: 解题思路:动态规划.记dp[i] = v表示由i个人组成的圈子一共有v种握手的方法.对于一个由n个人组成的圈子,编号为0的人一共可以和编号为 (1,3,5....,n-1)的握手,这也很好 ...

  5. (转)Android中图片占用内存计算

    在Android开发中,我现在发现很多人还不会对图片占用内存进行很好的计算.因此撰写该博文来做介绍,期望达到抛砖引玉的作用.   Android中一张图片(BitMap)占用的内存主要和以下几个因数有 ...

  6. Greenplum 日常维护

    1. 数据库启动:gpstart 常用可选参数: -a : 直接启动,不提示终端用户输入确认 -m:只启动master 实例,主要在故障处理时使用 2. 数据库停止:gpstop: 常用可选参数:-a ...

  7. poj 3625 (最小生成树算法)

    Building Roads Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 12203   Accepted: 3448 D ...

  8. summernote(富文本编辑器)将附件与图片上传到自己的服务器(vue项目)

    1.上传图片至自己的服务器(这个官方都有例子,重点介绍附件上传)图片上传官方网址 // onChange callback $('#summernote').summernote({ callback ...

  9. Vue源码阅读一:说说vue.nextTick实现

    用法: 在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法,获取更新后的 DOM. 疑惑: 怎么实现的延迟回调 原理: JavaScript语言的一大特点就是单线程,同一个时 ...

  10. C++入门经典-例6.12-使用数组地址将二维数组输出

    1:以a[4][3]为例 a代表二维数组的地址,通过指针运算符可以获取数组中的元素 (1)a+n代表第n行的首地址 (2)&a[0][0]既可以看作第0行0列的首地址,同样也可以被看作是二维数 ...