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 服务提供商 ...
随机推荐
- 安装nodejs与使用
nodejs 官方下载地址:https://nodejs.org/en/ 下载完成后,双击打开安装程序 然后: 然后点击install,等待安装 安装完成后的目录如下: 检测是否真的安装成功.打开cm ...
- 面向对象之封装 及@property装饰器使用
目录 封装 1.封装的定义 2.封装的目的: 3.封装的三种方式 4.封装的优点 5.访问限制(封装) @property 装饰器 属性property底层实现 封装 1.封装的定义 将复杂的丑陋的, ...
- Angular 应用的外壳
你首先需要使用 Angular CLI 来创建一个初始化的应用.随后,你将对你已经初始化的应用进行修改来让你构建出 Tour of Heroes app(英雄指南) 这个应用. 在教程的本部分,你需要 ...
- Net中Attribute特性的高级使用及自定义验证实现
好久没写博客了,今天在百忙之中抽空来写篇文章,记录一下最近深入学习Attribute特性的笔记及心得.~~ 一.什么是特性? 特性(Attribute)是用于在运行时传递程序中各种元素(比如类.方法. ...
- Linux开机启动和登录时各个文件的执行顺序
1.在Linux内核被加载后,第一个运行的程序便是/sbin/init 该文件会读取/etc/inittab文件,并依据此文件来进行初始化工作.其中/etc/inittab文件最主要的作用就是设定Li ...
- Win10上安装Awvs 12原版程序和完美破解补丁详细步骤
环境: Win10 Awvs12安装包 链接:https://pan.baidu.com/s/1FIwYHIEKfLf4XAyeXfhVnA 提取码:6sa8 复制这段内容后打开百度网盘手机App,操 ...
- vue计算属性详解
一.什么是计算属性 模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id="example"> ...
- SpringBoot 单文件和多文件上传
单.多文件上传:单文件上传使用upload.html ,多文件上传使用uploads.html 创建一个Springboot application, POM 中加入 spring-boot-star ...
- Java常考面试题整理(二)
21.Iterator和ListIterator的区别是什么? 参考答案: 下面列出了他们的区别: Iterator可以用来遍历Set和List集合,但是ListIterator只能用来遍历List. ...
- C++入门经典-例5.8-使用指针函数进行运算
1:函数指针式指向函数内存的指针,一个函数在编译时被分配给一个入口地址,这个函数的入口地址就称为函数指针.可以用一个指针变量指向函数,然后通过该指针变量调用此函数. 一个函数可以返回一个整数型值.字符 ...