51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5138|回复: 7
打印 上一主题 下一主题

[原创] [请教]Loadrunner使用socket的几个问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-3-1 10:11:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
初来乍到,请各位多多帮忙。

使用loadrunner录制的socket程序测试脚本,出现如下的问题:
1. 在执行到47个buf之后,lrs_send发送的请求服务器接收不到?很莫名奇妙,有时候前几个就这样了,好像很不稳定?

2.lrs_receive总是验证录制时接收的内容,但是服务器程序每次返回的内容是不一样的,长度也不一样,怎样不让它验证?或者让他每次都验证成功?

3.还有,我的socket发送和接收到的都是xml字符串,每次在log中总是出现waring,说“×××不是个参数”,lr7.8中把<>做为参数的标记了,怎样才能不出这些waring?

附我录制修改的脚本:


Action()
{
        int rtn;
    lrs_create_socket("socket0", "TCP", "RemoteHost=10.1.2.19:5050", LrsLastArg);

        lrs_set_recv_timeout(1, 500);
        lrs_set_recv_timeout2(1, 500);

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

    rtn = lrs_receive_ex("socket0", "buf1", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("The return number:%d\n",rtn);
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

        lrs_save_searched_string("socket0", LRS_LAST_RECEIVED, "PSession", "LB=<sessionid>", "RB=</sessionid>", 1, 0, -1);

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

    rtn = lrs_receive_ex("socket0", "buf3", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }


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

    rtn=lrs_receive_ex("socket0", "buf5", LrsLastArg);

        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }


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

    rtn=lrs_receive_ex("socket0", "buf7", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf9", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf11", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf13", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf15", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf17", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf19", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf21", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf23", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf25", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf27", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf29", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf31", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf33", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf35", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf37", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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


    rtn=lrs_receive_ex("socket0", "buf39", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf41", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf43", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf45", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

    lrs_send("socket0", "buf46", LrsLastArg);
       
        lr_think_time(1);       

    rtn=lrs_receive_ex("socket0", "buf47", LrsLastArg);

        lr_output_message("Returned code  buf47:%d\n",rtn);

        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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


    rtn=lrs_receive_ex("socket0", "buf49", LrsLastArg);

        lr_output_message("Returned code buf49:%d\n",rtn);

        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

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

    rtn=lrs_receive_ex("socket0", "buf51", LrsLastArg);
        if(rtn != 0 && rtn!=9101)
        {
                lr_output_message("Error Recive Message from socket0!");
                return -1;
        }

    return 0;
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏

该用户从未签到

2#
 楼主| 发表于 2005-3-1 11:29:15 | 只看该作者
咋没有人理呢?
自己UP。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2005-3-1 14:21:11 | 只看该作者
1、分析一下出错时的运行日志和错误信息;
2、脚本回放时就是通过检查实际接收到的Buffer的长度是否与录制时的一致来判断回放是否成功的,并不要求内容一致。
3、默认的参数大括号是花括号还是尖括号,取决于协议类型。可以从“工具——常规选项”对话框中的“参数化”选项卡中更改参数大括号。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2005-3-1 15:42:36 | 只看该作者
谢谢这位老大

还有个问题,我重复执行的过程中lrs_create_socket会出现socket 的10054的错误。
我估计第一个问题可能跟这个错误有关系,请问有什么办法解决不?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2005-3-1 16:18:53 | 只看该作者
还有,第46个buf发送到服务器,服务器已经收到了。并且也发送信息给了客户端。
但是客户端再buf47没有收到,直到buf49才收到,并且再buf46之后,服务器就接收不到客户端的请求了。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2005-3-1 16:39:20 | 只看该作者
我很少用WinSock协议来做实际的测试。
这个问题你仔细分析一下日志,判断出出错原因,才好想办法解决。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2005-3-3 13:23:56 | 只看该作者
至今还未搞定,只好考虑放弃lr。

无奈……
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-9-24 21:37:04 | 只看该作者
我也想弄明白 让服务器一直传过来的数据,不考虑大小,也不考虑信息,只要发送就可以,怎么实现呢?
  有的MSN   linjunjie85210@hotmail.com
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-21 10:42 , Processed in 0.074433 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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