51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1842|回复: 1
打印 上一主题 下一主题

[原创] 关于SOCKET录制脚本的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-3-20 10:40:26 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
录制了一段脚本。
#include "lrs.h"
#include "as_web.h"


Action()
{
    int result;
    char *UserBuf, *StrToLog;
    int LenOfUserBuf;
    char *string1 ="<?xml version=\"1.0\" encoding=\"utf-8\"?>";

        char Buffer [665];
        
    //lrs_set_connect_timeout(30, 0);
   
   

   





        lr_start_transaction("A1");
    lrs_create_socket("socket0", "TCP", "LocalHost=0", "RemoteHost=8080",  LrsLastArg);

    //lrs_set_send_timeout(0,1);


    lr_rendezvous("adver");



        lrs_set_send_timeout(2,0);
    lrs_set_send_buffer("socket0",Buffer,80);

   


        lrs_send("socket0", "buf0", LrsLastArg);


    lrs_set_recv_timeout(10,0);
    lrs_receive_ex("socket0", "buf1", LrsLastArg);

    lrs_get_static_buffer("socket0", "buf1", 0, -1, "NULL");

    LenOfUserBuf = lrs_get_user_buffer_size("socket0");
   


       

if( LenOfUserBuf == 1 )
   {
       lr_output_message("丢包");
       lrs_close_socket("socket0");
       lr_end_transaction("A1", LR_FAIL);
           return -2;
   }  
         
else   
   {
         UserBuf = lrs_get_user_buffer("socket0");

         //StrToLog = (char*)malloc(LenOfUserBuf + 1); //分配所有报文的空间
         StrToLog = (char*)malloc(39);

        //strcpy(StrToLog, UserBuf+1);       //取出所有报文
        strncpy(StrToLog, UserBuf+185,39);   //取出xml文档的头部
        lr_output_message("S=\"%s\"",StrToLog) ;
        result = strncmp( string1, StrToLog,38);
      

        if( result==0 )
         {
            lr_output_message("工作正常");
            lrs_close_socket("socket0");
            lr_end_transaction("A1", LR_PASS);
            return 0;
         }
                 
        else
         {
                   lr_output_message("访问失败");
           lrs_close_socket("socket0");
           lr_end_transaction("A1", LR_FAIL);
                   return -1;
         }
  
  }  

}

运行提示所接受数据为0
Action.c(51): Mismatch (expected 1442 bytes, 0 bytes actually received)
Action.c(53): lrs_get_static_buffer(socket0, buf1, 0, -1, NULL)
Action.c(55): lrs_get_user_buffer_size(socket0)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2009-3-23 15:59:24 | 只看该作者
关注
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-30 21:29 , Processed in 0.135315 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表