xuebao_zx 发表于 2009-3-16 21:24:50

LR socket回放问题!~

各位是有人做过Win cosket协议的脚本录制吗?
我用LR9.0正确录制cosket脚本之后,却发现,回放时,屏幕只是一闪就没有了。
录制时,没有任何提示信息,发送数据和返回数据都正常,后台业务数据也正确,说明录制是成功的。
Replay Log是空白的什么也没有,也没有任何提示信息。

云层 发表于 2009-3-17 09:27:02

没遇到过,难道你把日志关了?

zynuage 发表于 2009-3-17 10:31:00

原帖由 xuebao_zx 于 2009-3-16 21:24 发表 http://bbs.51testing.com/images/common/back.gif
各位是有人做过Win cosket协议的脚本录制吗?
我用LR9.0正确录制cosket脚本之后,却发现,回放时,屏幕只是一闪就没有了。
录制时,没有任何提示信息,发送数据和返回数据都正常,后台业务数据也正确,说明录制是成 ...
你所指的屏幕一闪就没了是指什么没了?是loadrunner异常错误关闭还是被录制的程序关闭呢?

xuebao_zx 发表于 2009-3-17 11:27:29

多谢两位,我的日志没有关,LOG设置为Extended log全选

to: zynuage
屏幕一闪是在点RUN时,我是在录制成功之后,闪了一下,没有任何反映,没关闭。
今天看了一下,服务器那边,也没有日志。

xuebao_zx 发表于 2009-3-17 11:43:44

下面是成功录制的代码:
vuser_int:

/*********************************************************************
* Created by Mercury Interactive Windows Sockets Recorder
*
* Created on: Mon Mar 16 19:29:21
*********************************************************************/
#include "lrs.h"
vuser_init()
{
    lrs_startup(257);

    lrs_create_socket("socket0", "TCP", "RemoteHost=10.XX.XX.78:6X80",LrsLastArg);

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

    lrs_receive("socket0", "buf1", LrsLastArg);

    lrs_disable_socket("socket0", DISABLE_SEND_RECV);

    lrs_close_socket("socket0");

    lr_think_time(22);

    lrs_create_socket("socket1", "TCP", "RemoteHost=10.XX.XX.78:6X80",LrsLastArg);

    lrs_send("socket1", "buf2", LrsLastArg); /*发送登录信息*/

    lrs_receive("socket1", "buf3", LrsLastArg);/*返回登录结果*/

    lrs_disable_socket("socket1", DISABLE_SEND_RECV);

    lrs_close_socket("socket1");

    return 0;
}

Action:
/*********************************************************************
* Created by Mercury Interactive Windows Sockets Recorder
*
* Created on: Mon Mar 16 19:29:21
*********************************************************************/

#include "lrs.h"


Action()
{
/*   lr_think_time(25);*/

    lrs_create_socket("socket2", "TCP", "RemoteHost=10.XXX.XXX.78:6X80",LrsLastArg);

    lrs_send("socket2", "buf4", LrsLastArg);/*发送查询代码,查询户号*/

    lrs_receive("socket2", "buf5", LrsLastArg);/*接收查询户号返回信息*/

    lrs_disable_socket("socket2", DISABLE_SEND_RECV);

    lrs_close_socket("socket2");/*关闭SOCKET连接*/

/*lr_think_time(15);*/

    lrs_create_socket("socket3", "TCP", "RemoteHost=10.XXX.XXX.78:6X80",LrsLastArg);

    lrs_send("socket3", "buf6", LrsLastArg);/**/

    lrs_receive("socket3", "buf7", LrsLastArg);/**/

    lrs_disable_socket("socket3", DISABLE_SEND_RECV);

    lrs_close_socket("socket3");

   /* lr_think_time(69);*/

    lrs_create_socket("socket4", "TCP", "RemoteHost=10.XXX.XXX.78:6X80",LrsLastArg);

    lrs_send("socket4", "buf8", LrsLastArg);/**/

    lrs_receive("socket4", "buf9", LrsLastArg);/*返回成功与失败信息*/

    lrs_disable_socket("socket4", DISABLE_SEND_RECV);

    lrs_close_socket("socket4");

    return 0;
}

xuebao_zx 发表于 2009-3-17 12:04:07

问题解决了,多谢大家的关注。
由于LR9。0的一个BUG导致回放失败没有日志,其实这只是表面现像,实际上LR在回放SOCKET脚本时,根本就有没访问到SOCKET服务器上去,服务器没有日志记录。
解决方法:
下载LR的wsrun32.dll补丁,覆盖BIN下的原有DLL。重启LR,回放脚本成功。

一次意外的发现,《解决:CPU 100%,LR崩溃,报“mmdrv.exe”错误》的贴子,下载 了补丁,在此感谢 johnny1952提供wsrun32.dll补丁下载和经历共享,详见:
http://bbs.51testing.com/viewthread.php?tid=131554&page=1&extra=page%3D7#pid1108547

云层 发表于 2009-3-17 12:05:26

这个问题请参考我的一篇帖子,替换wsrun32.dll并不是最好的做法,推荐切换到英文系统下
页: [1]
查看完整版本: LR socket回放问题!~