天朝tester 发表于 2010-5-26 10:54:46

紧急求助用loadrunner模拟tuxedo客户端程序。。。。。。。。。。。。。。

紧急求助用loadrunner模拟tuxedo客户端程序。。。。。。。。。。。。。。
目前在参与电信行业的一个项目,
项目中要求用loadrunner模拟手机用户用充值卡进行话费充值,
局方提供的是一个他们的充值卡的tuxedo服务,
一共有4个服务需要访问,充值卡的验证服务,充值卡的密码验证服务,充值手机号码的验证服务,充值服务。

目前我用loadrunner所写的tuxedo客户端,能够成功访问前三个服务,(就是往缓冲区里传送约定好的参数,如手机号码,卡号码,卡密码什么的,并得到约定好的表示成功的返回值),
可是最后一个服务,我发送了4个参数,主叫号码,卡密码,充值号码,充值金额,局方的tuxedo收到的参数主叫号码,卡密码,充值号码均正常,充值金额,我发送过去的是1,局方的服务收到的是0,也就是最后一个充值金额的参数,传递过去,就变成0了。



前三个服务的所有参数均为string,最后一个服务局方提供的参数,主叫号码,卡密码,充值号码是string,充值金额是double类型,如果把最后一个参数当做double类型,通过调用Fmkfldid32(4,index+2),得到fieldid(4为double类型,index就是参数的次序,第4个参数index为3,约定的调用tuxede获取fieldid的方法Fmkfldid32中的index+2=5)。如果把充值金额当做double类型来获取fieldid,那脚本运行起来就报错:
ction.c(87): ERROR:lrt_tpcall:TPESVCFAIL - application level service failure:'(

意思是缓冲区中的fieldid不匹配(比如我最后一个参数少传了,就报这个错误,其他服务也是,少传一个参数的话,就提示这个错误)

如果把充值金额当做string来处理,通过调用Fmkfldid32(5,3+2)来获取fieldid,然后用得到的fieldid来运行脚本,脚本不会报错,但是脚本运行后没有得到约定好的成功的返回值。并且局方的tuxedo服务的日志显示我发送过去的参数,前3个没有问题,但是最后一个金额为0,也就是我发送过去的stirng类型的数据,估计他们后台当做double类型来处理,就变成0了,这样就导致充值的模拟脚本不成功::'(
金额的参数加入方法:
        lrt_Fadd32_fld( (FBFR32*)data_input,"id=167772165",
                                        "value=1",
                                        LRT_END_OF_PARMS);

脚本日志:
Action.c(71): Request buffer sent
Action.c(71): FML32 buffer
Action.c(71):    167772162:
Action.c(71): 0             "130XXXXXXXX"(商业机密,这里就用XX表示了)

Action.c(71):    167772163:
Action.c(71): 0             "38085XXXXXXXXXXXXXX"(商业机密,这里就用XX表示了)
Action.c(71):    167772164:
Action.c(71): 0             "130 XXXXXXXX "(商业机密,这里就用XX表示了)

Action.c(71):    167772165:
Action.c(71): 0             "1"(这里是传递的充值金额)
Action.c(71): Reply buffer received
Action.c(71): FML32 buffer
Action.c(71):    33554433:167772162
Action.c(71):    33554433:134217731
Action.c(71):    33554433:167772164
Action.c(71):    134217731:0
Action.c(71):    167772162:
Action.c(71): 0             "01120"
Action.c(71):    167772164:
Action.c(71): 0             " "

局方的tuxedo后台日志:

2010-05-20 10:23:14.627 (5244|1) LM_ERROR kefu OK! time_consumed(0.005639) 130 XXXXXXXX,38085 XXXXXXXXXXXXXX,130 XXXXXXXX,0.0
0 01120,0.00,


有哪位高手比较了解用loadrunner模拟tuxedo客户端的啊???
能帮在下解决一下这个怪异的难题,在下感激不尽。。。

紧急求助。。。。。。。。。

我的QQ是43448962在线等高手协助。。。。:'(

天朝tester 发表于 2010-5-26 10:57:39

自己先顶一个。。。

天朝tester 发表于 2010-5-26 11:10:10

:'(

天朝tester 发表于 2010-5-26 14:21:32

:'( 继续等高手来协助解答。。。。

天朝tester 发表于 2010-5-28 14:03:59

:'( :'( :'( :'( 救命啊。。。

Slave 发表于 2010-6-1 17:19:28

找一下小布老师的tuxedo视频,小布老师是用C++写的。在博布客的网站上有的。

天朝tester 发表于 2010-6-3 15:07:57

楼上说的网站是哪里的啊?小布老师是谁啊。。。
能提供点详细的信息吗?:'(

南拳王 发表于 2010-6-4 14:14:51

''\http://www.boobooke.com/bbs/thread-7795-1-1.html'

smart12345 发表于 2010-10-12 11:49:20

我想学习下LoadRunner测试tuxedo协议,能把你的脚本给我拜读下吗?

smart12345 发表于 2010-10-12 11:50:20

再回复下
页: [1]
查看完整版本: 紧急求助用loadrunner模拟tuxedo客户端程序。。。。。。。。。。。。。。