51Testing软件测试论坛
标题:
winsock协议录制C/S程序回放时不能自动启动程序
[打印本页]
作者:
weiwei555
时间:
2007-5-17 16:53
标题:
winsock协议录制C/S程序回放时不能自动启动程序
程序是C/S结构的,用的是 winsock协议录制的,选的是init。录制过程包括:
1、登陆进入程序
2、在程序中输入数据以取得相关信息
在data.ws有录制脚本,在init中的脚本为如下:
lr_think_time(10);
lrs_create_socket("socket0", "TCP", "LocalHost=0", "RemoteHost=192.168.0.56:9080", LrsLastArg);
lrs_send("socket0", "buf0", LrsLastArg);
lrs_receive("socket0", "buf1", LrsLastArg);
lrs_send("socket0", "buf2", LrsLastArg);
lrs_receive("socket0", "buf3", LrsLastArg);
lr_think_time(22);
lrs_create_socket("socket1", "TCP", "RemoteHost=192.168.0.56:9080", LrsLastArg);
lrs_send("socket1", "buf4", LrsLastArg);
lrs_receive("socket1", "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_close_socket("socket1");
lrs_create_socket("socket2", "TCP", "RemoteHost=192.168.0.56:9080", LrsLastArg);
lrs_send("socket2", "buf14", LrsLastArg);
lrs_receive("socket2", "buf15", LrsLastArg);
lrs_send("socket2", "buf16", LrsLastArg);
lrs_receive("socket2", "buf17", LrsLastArg);
lrs_send("socket2", "buf18", LrsLastArg);
lrs_receive("socket2", "buf19", LrsLastArg);
lrs_send("socket2", "buf20", LrsLastArg);
lrs_receive("socket2", "buf21", LrsLastArg);
lrs_close_socket("socket2");
return 0;
在进行回放时,没有自动启动程序,当然也就没有进入程序后在程序里输入数据并得到返回结果的操作了。
这个该如何弄???各位赐教
作者:
ireneyao
时间:
2007-5-17 18:58
你回放的时候出现什么了?
重录一次还是这样吗?
data.was里有没有录到东西?
作者:
guxingyun
时间:
2007-5-17 23:37
loadrunner回放是时候应该不会启动你之前录制的程序吧,loadrunner就是模拟你录制的程序的。如果理解有误,请指教。
作者:
rickyzhu
时间:
2007-5-18 10:20
应该不会启动,这个不是功能测试,性能测试仅仅模拟消息进行收发。楼上说的没错。
作者:
weiwei555
时间:
2007-5-21 09:49
谢谢大家的指教
我要测试的是:
该程序是C/S结构的,数据库是ORACLE 9I。测试登陆入程序后,输入数据回车后到弹出第一个消息框所花费的时间(在6-12s之间)。如果我按这样录制的程序在回放时LR不能启动程序的话,又该如何才能反映出程序在输入数据后到弹出第一个信息框的时间呢?
我有在control里运行场景,可是里面反映的所花费的transaction的时间好像根本不对(远远超出6-12s),。
我对LR还只是初学阶段,有问的不对的还请各位指出,。。sdlkfj5
作者:
just_cici
时间:
2007-5-21 10:12
在输入数据回车后到弹出第一个消息框所花费的动作前后插入事务开始与结束,事务的响应时间就是你所需的时间
作者:
konglingzhen
时间:
2007-5-21 10:18
如何查看一个事务的响应时间呢??谢谢!!
作者:
weiwei555
时间:
2007-5-21 10:52
按照你说的方法加入事务的开始与结束点后(事务名:pop),在execution log里有这么一句话:Action.c(72): Notify: Transaction pop ended with Pass status
(Duration: 5.8029).
就是这个表示该事务所耗费的时间为5.8029秒吗?不需要在control运行场景后看transaction的处理图吗?
作者:
weiwei555
时间:
2007-5-21 11:09
上面的那种测法好像不行啊,我那这秒表测,从输入数据到弹出第一个信息框耗时平均在10秒左右,可是在输入数据时插入事务开始点,在弹出信息框插入事务结束点,运行后在execution log里显示的是vuser_init.c(78): Notify: Transaction pop ended with Pass status (Duration: 5.9845).这两个时间相差太大了,估计不是很准确。因为我们期望的是在优化程序后时间能缩短到6-8秒,可是我现在用的是未优化的程序测的,时间怎么会减少这么多呢。
是不是我事务点设的有问题?或者是查看事务耗时的地方不正确?
作者:
lovetest
时间:
2007-5-21 16:27
用loadrunner跑出来的时间应该是从客户端发出请求开始到服务器返回数据之后这段时间。应该不包括客户端自己处理显示结果的时间,所以会比我们实际运行程序的时间少。这是我的理解,不知是否正确。
作者:
weiwei555
时间:
2007-5-21 17:22
lovetest,在把时间比较后,你的看法应该是对的,因为我说的10秒确实包含了客户端自己的处理时间,所以我测试的事务的时间会少很多,谢谢你的意见。
作者:
weiwei555
时间:
2007-5-22 16:50
大家都来顶帖子。。多多发表意见和建议,
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2