mxinzheng 发表于 2010-3-22 21:03:19

controller只能运行一个用户,请大家帮帮忙,在线等

大家好!用oracle(2-tier)协议录制的登陆脚本在controller运行几个用户时,只有一个成功,其余的报错:vuser_init.c(14): Error: lrdo_initialize_db: "OCIInitialize" return-code=57131696, error-code is unavailable.The message text is unavailable。
具体信息是:Start auto log messages stack.
Virtual User Script started
Starting action vuser_init.
vuser_init.c(11): Notify: Transaction "denglu" started.
vuser_init.c(14): Error: lrdo_initialize_db: "OCIInitialize" return-code=57131696, error-code is unavailable.The message text is unavailable
vuser_init.c(14): OCIErrorGet return-code=-2, recordno=2
vuser_init.c(14): lrd_initialize_db: ERROR, return-code=LRDE2009
End auto log messages stack.
服务器采用虚拟机上的oracle9i,客户端loadrunner9.5,不知问题何在?请大家指点一二,谢谢!在线等。

dennyqiang 发表于 2010-3-23 00:01:38

是OCIInitialize失败,OCI是Oracle客户端组件,LR初始化失败,原因见下帖,你可以试一下。

[ 本帖最后由 dennyqiang 于 2010-3-23 00:25 编辑 ]

dennyqiang 发表于 2010-3-23 00:06:10

我这边也有这样的环境,我的LR和Oracle都在一台机器上,LR9.5, Oracle11G,使用SQL Plus来录制的,调试一切正常,在Controller中也遇到你的这样的问题:
vuser_init.c(13): Error: lrdo_initialize_db: "OCIInitialize" return-code=55680648, error-code is unavailable.The message text is unavailable

不过我第一次运行了10个虚拟用户,有7个成功的,有3个失败,并非你的1个成功其它全失败。理论上来说这不应该

后来我想是不是因为虚拟用户初始化得太快导致的问题,我就尝试使用Ramp Up的方式,对10个用户每5秒加1个用户,让它慢慢上去,并运行1分钟后停止,结果全部成功运行,数据库中的记录也正常插入,所以你可以考虑将场景设置改成Ramp Up的方式慢慢加负载,让LR有足够的时间来初始化调用相关的组件。

附件当中是我的测试脚本,你可以参考一下。

其实,我实在觉得用LR录制一个Oracle 2层的测试脚本没有什么必要性,如果要直接对数据库进行测试,有专门的工具的,比LR做得更好。如果要使用LR,也有一种更好的解决方案:在LR中开发JavaVuser,直接编写Java代码使用JDBC来访问数据库,这样不单能测数据库性能,还能顺带一些业务逻辑在里面

[ 本帖最后由 dennyqiang 于 2010-3-23 00:27 编辑 ]

mxinzheng 发表于 2010-3-23 22:12:53

回复 3# 的帖子

多谢,问题解决了

qq34342311 发表于 2011-7-1 14:48:26

我也遇到了相同的问题,觉得这里的场景设置学问很大,希望能够多多试验后,总结才会得到更佳的准确的数据.

yueguangniwu 发表于 2014-5-30 16:48:15

回复 1# mxinzheng


    你好,还在吗?我今天也遇到这个问题了,谁能帮帮忙啊??
页: [1]
查看完整版本: controller只能运行一个用户,请大家帮帮忙,在线等