`
zfy421
  • 浏览: 234173 次
社区版块
存档分类
最新评论

loadrunner之socket协议脚本编写

阅读更多

1.java代码模拟服务器端程序:

package socket.com;
import java.io.*;   
import java.net.*;

public class Server {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws IOException{
		// TODO Auto-generated method stub
		ServerSocket server=new ServerSocket(5678);   
		while(true){   
		Socket client=server.accept();   
		BufferedReader in=  
		new BufferedReader(new InputStreamReader(client.getInputStream()));   
		PrintWriter out=new PrintWriter(client.getOutputStream());   
		//while(true){   
		String str=in.readLine();   
		System.out.println(str);   
		out.println("hasreceive");   
		out.flush();   
		//if(str.equals("end"))   
		//break;   
		//}   
		client.close();   
		}   
	}

}

 2.loadrunner客户端代码:

#include "lrs.h"


Action()
{
	int rc;
	rc=lrs_create_socket("socket0","TCP","RemoteHost=127.0.0.1:5678",  LrsLastArg);
	if (rc==0) 
       lr_output_message("Socket  was successfully created "); 
	else 
       lr_output_message("An error occurred while creating the socket, Error Code: %d", rc);


    lr_start_transaction("CA");
	lrs_send("socket0", "buf0", LrsLastArg);   //往"socket0"发送"buf0"中的数据
    lrs_receive("socket0", "buf1", LrsLastArg);//将"socke0"中返回的数据存放到"buf1"中

    lrs_save_param_ex("socket0", "received", "buf1", 0, 10,"ebcdic", "res");
	lr_output_message(lr_eval_string("<res>")); 
	if(strcmp(lr_eval_string("<res>"),"hasreceive")==0){
		lr_end_transaction("CA", LR_PASS);
	}else{
		lr_end_transaction("CA", LR_FAIL);
	}

    //lrs_close_socket("socket0");
    

	return 0;
}

 data.ws文件内容:

;WSRData 2 1

    send buf0 5
    "hello\r\n"
    recv buf1 12
	"hasreceive"

-1

 

分享到:
评论

相关推荐

    Loadrunner之socket脚本参数化方法

    《Loadrunner之Socket脚本参数化深度解析》 在Loadrunner这款强大的性能测试工具中,参数化技术是一项关键技能,它允许用户将测试脚本中的静态数据替换为动态数据,从而实现更复杂、更真实的负载模拟。对于基于...

    Loadrunner基于socket编程

    - 使用Vuser脚本编写Socket通信时,LoadRunner提供了API函数,如`lr_socket()`、`lr_send_string()`、`lr_recv_string()`等,用于创建Socket连接、发送和接收数据。 3. **Socket编程步骤** - **创建Socket**:...

    LoadRunner_Winsocket协议知识总结

    在LoadRunner进行性能测试的过程中,Winsocket协议作为关键组件之一,承担着模拟网络通信行为的重要角色。本文档旨在对LoadRunner中的Winsocket协议相关知识进行深入总结,包括核心函数的介绍、环境配置、数据处理等...

    loadrunnerSocket测试.pdf

    首先,文档提到了LoadRunner中对Socket操作的几个重要步骤,这些步骤涉及到了VUser脚本的编写。VUser脚本是LoadRunner模拟真实用户行为的脚本,通常包含三个重要部分:VUSER_INIT、Action、VUSER_END。VUSER_INIT在...

    socket脚本开发监控.pptx

    Socket脚本开发与性能监控是性能测试中的一个重要环节,尤其在面对自定义通信协议或非标准网络应用时。本文将详细讲解Socket协议、其在性能测试中的应用以及如何进行脚本开发与性能监控。 首先,Socket协议并不是...

    LoadRunner Winsocket协议知识总结

    ### LoadRunner Winsocket协议知识总结 #### 序言 LoadRunner 是一款强大的性能测试工具,广泛应用于各种场景下的系统性能评估。其中,Winsocket 协议支持是 LoadRunner 的一大特色,尤其适用于基于网络的应用程序...

    Loadrunner官方文档.zip

    6. **脚本语言**:LoadRunner使用的是 VuGen 自带的 VuScript 语言,它是一种混合型语言,结合了C语言和函数库,使得脚本编写更加灵活。 7. **参数化与关联**:为了模拟真实用户行为,LoadRunner支持参数化,即将...

    loadrunner学习笔记

    8. **编写socket应用的测试脚本**:LoadRunner支持自定义协议,允许编写测试非HTTP协议的应用,如socket通信。这需要深入理解socket编程原理,并使用Vuser API创建自定义协议脚本。 9. **让LoadRunner走下神坛**:...

    性能测试工具篇loadrunner(积累部分)

    对于VC客户端,可能需要考虑Winsock或Socket协议;对于Java应用,通常HTTP/HTML或Java协议更为合适。测试数据库压力时,可能需要使用数据库相关的协议,如Oracle或JDBC。 总之,LoadRunner提供了一套强大的工具来...

    性能测试脚本规范范本模板.docx

    【性能测试脚本规范范本模板】是针对LoadRunner工具的性能测试脚本编写的一份详细规范,旨在提升测试团队的编码质量和效率。LoadRunner是一款功能强大的负载和性能测试工具,广泛应用于软件/插件的性能验证。此文档...

    适用于行业内SOP报文的LR脚本

    在IT行业中,LoadRunner(LR)是一款强大的性能测试工具,尤其在金融领域,如中国银联这样的支付系统中,它被广泛用于模拟...通过深入理解LR脚本、socket通信以及SOP协议,我们可以有效地进行测试脚本的编写和维护。

    性能测试脚本规范.doc

    《性能测试脚本规范》是东软集团股份有限公司移动互联网事业部测试部制定的一份关于LoadRunner脚本编写的重要文档。此规范旨在确保团队成员遵循统一的编码风格,提高代码的可读性和可维护性,减少错误,提升软件产品...

    性能测试脚本规范.docx

    本文档旨在提供一个LoadRunner脚本编写的标准和规范,以提高代码可读性、减少错误并便于维护。 ### 1. 文档证明背景及目的 创建此文档的目的是统一尝试部LoadRunner脚本的编码风格,促进良好的编程习惯。遵循这些...

    性能测试脚本规范范本模板.pdf

    《性能测试脚本规范范本模板》是东软集团股份有限公司移动互联网事业部测试部制定的一份关于LoadRunner性能测试脚本编写的重要文档。这份文档旨在规范团队的脚本编码风格,提升代码的可读性和可维护性,减少错误,...

    性能测试脚本规范方案.doc

    本文档主要针对的是LoadRunner性能测试工具的脚本编写规范,旨在提升测试团队的编程质量,确保代码可读性、可维护性和减少错误。规范内容涵盖命名规则、代码格式化以及Vuser(虚拟用户)脚本设计等方面。 1. **命名...

    性能测试脚本规范.pdf

    本规范主要针对使用LoadRunner工具进行性能测试时的脚本编写,旨在提高脚本的质量,确保测试的有效性和可维护性。以下是脚本编写的重要准则和注意事项。 1. **文档证明** - 文档的目的是为了规范团队的编程习惯,...

Global site tag (gtag.js) - Google Analytics