Loadrunner 常见问题

来源:互联网 发布:windows命名管道 java 编辑:程序博客网 时间:2024/05/16 10:03

1、  录制时无法弹出IE,google一下,解决办法如下:

l  主要是LR的注册信息被修改,无法找到IE路径。如何重新注册LR呢?在lr的安装目录(例如D:/Program Files/Mercury/LoadRunner/bin)下,单击register_vugen.bat文件,注册信息被重新改写了。不过别忘了最后一步。重新启动一下,好了;

l  有多个浏览器时,将IE置为默认浏览器;由于IE的第三方插件的影响,IE工具-》Internet选项…-》高级,把“启用第三方浏览器扩展”的选中去掉即可;

l  对于Windows 2003上无法录制IE6/7,导致IE Crash,iedw.exe(IE Crash Detection)报告错误事件,可能原因是Windows Server默认对IE加载DEP(数据执行保护)特性,而Vugen.exe刚好又跟DEP冲突。方法:我的电脑>右键属性->高级->“性能”部分的“设置”->“数据执行保护”->点击“添加”按钮->将LR安装目录bin下的vugen.exe添加进去->点击确定,重启一下LR,就可以录制了。

2、 录制不到脚本

l  选择的协议不对,有时需要选择多个协议,这个需与开发、系统架构师沟通;

l  没有选择jar包;

l  检查防火墙个杀毒软件,关闭所有的网络监测;

l  早期的版本(Ld8.0以前的版本)不能很好的支持IE6以上的版本,换成IE6即可;

l  Flex需要客户端下安装flash,并且IE选项的安全设置中设置可以访问所有active控件;

 

3、 录制的脚本回放错误

l  选择的协议不对(应选择多个协议或其他协议);

l   没有选择jar包,无法解析数据;

l  自动关联错误;

l  动态数据没有做关联;

Flex协议录制的脚本没有办法产生自动关联时,需要下面的Ld中自带的函数进行自定义:

l  选择另一台机器上录制的ld9.50版本的脚本,原来选择的http/flex两个协议的脚本,回放报错Replay log如下:

Error: Encoding of AMF message failed. Error is : Exception Occurred while invoking WriteObject method

   - java.lang.ClassNotFoundException: flex.messaging.io.amf.Amf3Output

  (Enter to WriteObject WriteObject throws exception:

 java.lang.ClassNotFoundException: flex.messaging.io.amf.Amf3Output――后台debug log)

  at java.net.URLClassLoader$1.run(URLClassLoader.java:200)

  at java.security.AccessController.doPrivileged(Native Method)

  at java.net.URLClassLoader.findClass(URLClassLoader.java:188)

  at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)

  at java.lang.ClassLoader.loadClass(ClassLoader.java:251)

  at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)

  at java.lang.Class.forName0(Native Method)

  at java.lang.Class.forName(Class.java:164)

  at hp.flex.HPExternalizableWrapper.GetLCDSObjectOutputStream(HPExternalizableWrapper.java:155)

  at hp.flex.HPExternalizableWrapper.GetObjectOutputStream(HPExternalizableWrapper.java:215)

at hp.flex.HPExternalizableWrapper.WriteObject(HPExternalizableWrapper.java:23)

无法解析,原来机器上的jar包的位置在本机器上不同引起的

因缺少录制时候选择的jar包,选择的jar包的位置变化了或者引用的jar包已经删除了。

解决方法:重新在Run-time settings->Flex->Externalizable Objects中增加jar包(因为原来引用的jar包的位置已经发生变化了),增加Recording Options中的jar是没用的。

l  重复记录导致:Error: Server returned error for message #1 : "AMF call returned an error, described in XML seen in extended log"可以用打开所有log(Run-time Setting->General->Log->Extended log,全部选择上),然后回放脚本,进行具体问题的跟踪,一般是由于程序中限定不允许数据重复(或数据记录的某个字段不能重复导致的,一般发生在新建和修改里面。(有些可能不是程序中作限定,而是数据库中有唯一性限制,索引或主健等),删除相关的所有记录后再次回放即可。(本系统中的此次测试出现这个错误是由于删除了客户台帐的新建客户数据,但在客户会中生成的主数据没有删除导致的)

l  版本不兼容,在一个ld版本下录制的脚本在一个版本下使用。

l  请求超时或修改了程序(但你不知道)。

l  根据Replay log的具体错误内容查看原因(结合Replay log(F10单步执行)、web服务的后台日志和程序综合分析)注:web服务后台日志的显示级别在/WEB-INF/classes/log4j.properties或者中application-context.xml中的props设置(最好只显示错误,不然日志文件太大,不容易分析)。

4、 录制的可以回放的脚本却不能操作成功

l 对动态数据没有做关联;

l  有验证码:如果请求进去后,服务器虽然判别请求非法,但是它仍能成功处理,告诉你请求数据有问题,那么它返回的http代码仍是200!只是页面上会有它的提示信息错误!LR只判断请求的状态是否正确,不判断业务数据是否正确!如果要做判断得自己写检查点判别!

l  web服务器后台日志显示Unknown AMF question的错误,请求无效导致

l  选择的协议不完整,录制的脚本不完整导致的;

l  打开Extended Log单步执行查看Replay log和web服务后台日志,然后分析