51Testing软件测试论坛
标题:
【LOADRUNNER】录制C/S结构IM聊天软件,什么都录不到
[打印本页]
作者:
suyilin1985
时间:
2012-11-29 10:55
标题:
【LOADRUNNER】录制C/S结构IM聊天软件,什么都录不到
求助啊,各位大侠!小弟是LR新手~~~~
公司刚研发一个聊天软件,据开发说全部是用socket协议!
为什么我用socket协议录制脚本,为毛什么都录不到呢?
下面是录制的脚本:
/*********************************************************************
* Created by Mercury Interactive Windows Sockets Recorder
*
* Created on: Thu Nov 29 10:43:20
*********************************************************************/
#include "lrs.h"
vuser_init()
{
lrs_startup(257);
lrs_create_socket("socket0", "TCP", "RemoteHost=222.92.116.134:80", LrsLastArg);
lrs_send("socket0", "buf0", LrsLastArg);
lrs_receive("socket0", "buf1", LrsLastArg);
lrs_close_socket("socket0");
return 0;
}
data.ws数据如下:
;WSRData 2 1
send buf0 109
"GET /SystemFiles/DownloadFiles/UpdateInfo.xml HTTP/1.1\r\n"
"Host: media.xxtown.com.cn\r\n"
"Connection: Keep-Alive\r\n"
"\r\n"
recv buf1 798
"HTTP/1.1 200 OK\r\n"
"Via: 1.1 ISA\r\n"
"Connection: Keep-Alive\r\n"
"
roxy-Connection: Keep-Alive\r\n"
"Content-Length: 448\r\n"
"Date: Thu, 29 Nov 2012 02:42:07 GMT\r\n"
"Content-Type: text/xml\r\n"
"ETag: \"625b85bf73c9cd1:14cc\"\r\n"
"Server: Microsoft-IIS/6.0\r\n"
"Cache-Control: max-age=31536000\r\n"
"Last-Modified: Fri, 23 Nov 2012 12:12:03 GMT\r\n"
"Accept-Ranges: bytes\r\n"
"X-Powered-By: ASP.NET\r\n"
"\r\n"
"锘"
"\xbf"
"<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n"
"<UpdateInfo xmlns:xsi=\"
http://www.w3.org/2001/XMLSchema-instance
\" xmlns:"
"xsd=\"
http://www.w3.org/2001/XMLSchema
\">\r\n"
" <NewestVersion>1.5011</NewestVersion>\r\n"
" <DownloadUrl>
http://media.xxtown.com.cn/SystemFiles/DownloadFiles/IMClie"
;
"nt.zip</DownloadUrl>\r\n"
" <IsMustUpdate>false</IsMustUpdate>\r\n"
" <UpdateCheckXml>
http://media.xxtown.com.cn/SystemFiles/DownloadFiles/Upd"
;
"ateInfo.xml</UpdateCheckXml>\r\n"
"</UpdateInfo>"
-1
作者:
msnshow
时间:
2012-11-29 13:42
不是有信息么
作者:
suyilin1985
时间:
2012-11-29 13:44
这个只是从服务器返回的信息,但是我后面发消息和接收消息的操作都没有录制下来!
请问是为什么呢?这个和我选择的协议有关么?
作者:
suyilin1985
时间:
2012-11-29 15:02
程序是用XMPP协议,我用winsocket去录制的,但是什么都录不到啊!!!如同我发的贴,就录到了发送请求和服务器返回消息这2个,其他登录啊、发送消息啊神马的都没录到!
作者:
joe45
时间:
2013-4-10 19:04
请问楼主解决了吗》 最终你是用好什么协议录取的?
谢谢
作者:
msnshow
时间:
2013-4-11 08:19
scoket协议,肯定能录制到的
作者:
joe45
时间:
2013-4-25 19:08
我也测试了, XMPP协议的IM, socket录制, 录制到了, 但是很多乱码,不懂. 我贴上来, 各位指导一下, 谢谢
Action()
{
lrs_create_socket("socket0", "TCP", "LocalHost=0", "RemoteHost=192.168.1.254:5222", LrsLastArg);
lrs_send("socket0", "buf0", LrsLastArg);
lrs_receive("socket0", "buf1", LrsLastArg);
lrs_send("socket0", "buf2", LrsLastArg);
lrs_receive("socket0", "buf3", LrsLastArg);
lr_think_time(10);
lrs_send("socket0", "buf4", LrsLastArg);
lrs_receive("socket0", "buf5", LrsLastArg);
lrs_send("socket0", "buf6", LrsLastArg);
lrs_receive("socket0", "buf7", LrsLastArg);
lrs_send("socket0", "buf8", LrsLastArg);
lrs_receive("socket0", "buf9", LrsLastArg);
lrs_send("socket0", "buf10", LrsLastArg);
lrs_receive("socket0", "buf11", LrsLastArg);
lrs_send("socket0", "buf12", LrsLastArg);
lrs_receive("socket0", "buf13", LrsLastArg);
lrs_send("socket0", "buf14", LrsLastArg);
lrs_receive("socket0", "buf15", LrsLastArg);
lrs_send("socket0", "buf16", LrsLastArg);
lrs_receive("socket0", "buf17", LrsLastArg);
lrs_send("socket0", "buf18", LrsLastArg);
lrs_receive("socket0", "buf19", LrsLastArg);
lrs_send("socket0", "buf20", LrsLastArg);
lrs_receive("socket0", "buf21", LrsLastArg);
lrs_send("socket0", "buf22", LrsLastArg);
lrs_receive("socket0", "buf23", LrsLastArg);
lrs_send("socket0", "buf24", LrsLastArg);
lrs_receive("socket0", "buf25", LrsLastArg);
lrs_send("socket0", "buf26", LrsLastArg);
lrs_receive("socket0", "buf27", LrsLastArg);
lrs_send("socket0", "buf28", LrsLastArg);
lrs_receive("socket0", "buf29", LrsLastArg);
lrs_send("socket0", "buf30", LrsLastArg);
lrs_receive("socket0", "buf31", LrsLastArg);
lrs_send("socket0", "buf32", LrsLastArg);
lrs_receive("socket0", "buf33", LrsLastArg);
lrs_send("socket0", "buf34", LrsLastArg);
lrs_receive("socket0", "buf35", LrsLastArg);
lrs_send("socket0", "buf36", LrsLastArg);
lrs_receive("socket0", "buf37", LrsLastArg);
lrs_send("socket0", "buf38", LrsLastArg);
lrs_receive("socket0", "buf39", LrsLastArg);
lrs_send("socket0", "buf40", LrsLastArg);
lrs_receive("socket0", "buf41", LrsLastArg);
lrs_send("socket0", "buf42", LrsLastArg);
lrs_receive("socket0", "buf43", LrsLastArg);
lrs_send("socket0", "buf44", LrsLastArg);
lrs_receive("socket0", "buf45", LrsLastArg);
lrs_send("socket0", "buf46", LrsLastArg);
lrs_receive("socket0", "buf47", LrsLastArg);
lrs_send("socket0", "buf48", LrsLastArg);
lrs_receive("socket0", "buf49", LrsLastArg);
lrs_send("socket0", "buf50", LrsLastArg);
lrs_receive("socket0", "buf51", LrsLastArg);
lrs_send("socket0", "buf52", LrsLastArg);
lrs_receive("socket0", "buf53", LrsLastArg);
lrs_send("socket0", "buf54", LrsLastArg);
lrs_receive("socket0", "buf55", LrsLastArg);
lr_think_time(7);
lrs_send("socket0", "buf56", LrsLastArg);
lrs_receive("socket0", "buf57", LrsLastArg);
lr_think_time(4);
lrs_send("socket0", "buf58", LrsLastArg);
lrs_receive("socket0", "buf59", LrsLastArg);
lr_think_time(35);
lrs_send("socket0", "buf60", LrsLastArg);
return 0;
}
----------------------------
作者:
joe45
时间:
2013-4-25 19:11
data.ws
作者:
Phil_BIA
时间:
2013-4-26 08:57
我录制的跟你的一样,,,也是什么细节也录不到的!!不知道知道为什么。。。。。
是本来就这样?还是是哪里出错了呢????毕竟C/S和B/S不一样。。我也是新手,学习中……
作者:
Phil_BIA
时间:
2013-4-26 08:59
回复
6#
msnshow
你录制的C/S是什么样子的呀???可不可以贴出来让大家看一下,,好奇中…………
我录制的版主的基本一致。。。。。是我们哪里出错了吗??
作者:
Phil_BIA
时间:
2013-4-26 09:05
不对,我仔细看一了下,不太一样。。我都是事务的开始。。。。思考时间。。。。事务结束。。。。。如下所示(一个简单的小脚本):
#include "lrs.h"
Action()
{
lr_start_transaction("KCQQ");
lr_think_time(25);
lr_end_transaction("KCQQ", LR_AUTO);
lr_start_transaction("MRPQ");
lr_think_time(20);
lr_think_time(11);
lr_end_transaction("MRPQ", LR_AUTO);
return 0;
}
这个对吗???反正可以回放显示没有错误。。。。。也可以Controller中运行。。。。。
作者:
baikunhu
时间:
2013-4-26 09:55
回复
7#
joe45
这不是乱码,lrs_send, lrs_receive都为loadrunner中的函数,建议看下loadrunner winsocket相关函数
作者:
baikunhu
时间:
2013-4-26 09:58
回复
11#
Phil_BIA
你这个脚本,只有2个事务,什么也没干。
作者:
Phil_BIA
时间:
2013-4-26 10:12
回复
13#
baikunhu
什么也没干,,,,我做的是两个查询操作。。。我也不知道会产生什么结果。。。
其它的增、删、改、查都是这样的,,事务开始、 思考时间、 事务结束。。。。。。
是我哪出错了吗?????
。。。你能贴一个比较好的出来 ,参观一下吗?????
作者:
baikunhu
时间:
2013-4-26 10:19
本帖最后由 baikunhu 于 2013-4-26 10:23 编辑
回复
14#
Phil_BIA
Action()
{
lrs_create_socket("socket0", "TCP", "LocalHost=0", "RemoteHost=192.168.80.200:4213", LrsLastArg);
lrs_receive("socket0", "buf0", LrsLastArg);
lrs_send("socket0", "buf1", LrsLastArg);
lrs_receive("socket0", "buf2", LrsLastArg);
lrs_create_socket("socket1", "TCP", "LocalHost=0", "RemoteHost=192.168.80.200:5237", LrsLastArg);
lrs_send("socket1", "buf3", LrsLastArg);
lrs_close_socket("socket1");
lr_think_time(9);
lrs_send("socket0", "buf4", LrsLastArg);
lrs_close_socket("socket0");
return 0;
}
复制代码
作者:
baikunhu
时间:
2013-4-26 10:21
如果你的脚本什么也没有录制到,有可能是你录制脚本,选择的协议选错了
作者:
Phil_BIA
时间:
2013-4-26 10:25
回复
16#
baikunhu
客户端、服务端都是用.NET平台的C#开发的,数据库是MySQL。是局域网管理软件。
我使用Windows Sockets协议,你是用什么协议??
作者:
baikunhu
时间:
2013-4-26 13:21
本帖最后由 baikunhu 于 2013-4-26 13:22 编辑
回复
17#
Phil_BIA
COM/DCOM, Windows Sockets,2个协议组合
你可以先使用loadrunner自带的协议分析工具,分析下
[attach]84941[/attach]
作者:
Phil_BIA
时间:
2013-4-26 15:12
回复
18#
baikunhu
我一开始的时候,检测过,没有检测出来,今天也一样。。。。。
我也尝试着用组合的协议,,可是连程序都不开。。。单协议感觉可以用的上的都试了,打不开应用程序。。。。多协议就没有打开过。。。。
真不知道应该使用什么协议了,,请您帮忙分析一下,,谢谢。。。。
[attach]84944[/attach]
上面这一张是单协议的,,,
下面这张是多协议的。。。
[attach]84945[/attach]
我到底该选择哪个或哪些协议呢???(程序是:.NET平台C#开发的,,数据库是MySql,,C/S模式。。)
作者:
baikunhu
时间:
2013-4-26 15:22
回复
19#
Phil_BIA
都用11.5了。。,你可以询问下开发人员,他们是基于什么协议开发的
作者:
baikunhu
时间:
2013-4-26 15:32
回复
19#
Phil_BIA
MySql建议使用ODBC协议
作者:
baikunhu
时间:
2013-4-26 15:36
回复
19#
Phil_BIA
可以先尝试ODBC协议,然后再尝试ODBC+Windows Sockets组合
作者:
Phil_BIA
时间:
2013-4-26 15:58
回复
20#
baikunhu
他说没有什么协议呀,,如通讯的话,,,HTTP。。。。
C/S模式还用HTTP。。。看了一下关于Http的,都是和Web页面相关的,,,可是我们这软件都是窗体的。。。。。。想不明白。。。
但是我还是试了试,依然、还是没有打开应用程序。。。。怎么怎么办怎么办??
作者:
Phil_BIA
时间:
2013-4-26 17:09
回复
22#
baikunhu
这俩都尝试了,,,,还不能打开应用程序,,,,自己打开的话,,什么也录不到,,一个事件,一个事务也不发生。。。。
作者:
Phil_BIA
时间:
2013-4-26 17:11
回复
22#
baikunhu
[attach]84953[/attach]
作者:
baikunhu
时间:
2013-4-26 19:11
回复
25#
Phil_BIA
。。你一直无法打开应用程序啊
。
貌似你只能自己写脚本了
http://www.51testing.com/?uid-21 ... space-itemid-228059
http://blog.csdn.net/testing_is_believing/article/details/5280913
http://bbs.51testing.com/thread-171174-1-1.html
中3楼
作者:
baikunhu
时间:
2013-4-26 19:16
本帖最后由 baikunhu 于 2013-4-27 08:01 编辑
回复
25#
Phil_BIA
如果启动不了,只能手动写脚本了。
http://blog.csdn.net/testing_is_believing/article/details/5280913
搜索下loadrunner c# .net
希望对你有所帮助
作者:
Phil_BIA
时间:
2013-4-27 11:09
回复
27#
baikunhu
用Windows Sockets协议 可以打开,,只有这一个协议,,,像 你说的,什么也录制不到。。
#include "lrs.h"
Action()
{
lr_start_transaction("EIQ");
lr_think_time(17);
lr_end_transaction("EIQ", LR_AUTO);
lr_start_transaction("KCQQA");
lr_think_time(30);
lr_end_transaction("KCQQA", LR_AUTO);
lr_start_transaction("KCQQZJB");
lr_think_time(30);
lr_end_transaction("KCQQZJB", LR_AUTO);
lr_start_transaction("KCVQA");
lr_think_time(33);
lr_end_transaction("KCVQA", LR_AUTO);
lr_start_transaction("KCVQE");
lr_think_time(27);
lr_end_transaction("KCVQE", LR_AUTO);
lr_start_transaction("ESQA");
lr_think_time(41);
lr_end_transaction("ESQA", LR_AUTO);
lr_start_transaction("ESQM");
lr_think_time(24);
lr_end_transaction("ESQM", LR_AUTO);
return 0;
}
原来这什么都不是。。。。。。。。我再自己研究一下!!!谢谢!!
作者:
wzg_mission
时间:
2015-6-7 15:19
遇到同样问题,求解决啊....c#客户端,winsocket协议录制的时候提示未将对象引用设置到对象的实例
,选.net的话,什么也录制不到
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2