anling 发表于 2011-5-6 21:40:10

紧急求助 flex性能测试,关联dsid

本帖最后由 anling 于 2011-5-8 14:33 编辑

大家一定得帮帮忙,整了一天没有结果.网上也找了资料,可是帮助不大.

测试flex4.0,JDK1.6系统.
loadrunner9.52
lib下的所有jar都加了.
协议选择了HTTP, flex,AMF
录制后的脚本只有flex_web_request,没有flex_amf_call等.

目前session使用web_reg_save_param作关联已经ok
但是DSId却怎么也无法关联.
查找资料,要使用lr_xml_get_values来做关联,可是我录制不到flex_amf_call,也无法看快照,定位不到DSId的xml.

请大家帮忙如何解决以上问题.万分感谢!!!!

anling 发表于 2011-5-8 14:26:58

本帖最后由 anling 于 2011-5-8 14:32 编辑

最终结论:loadrunner9.52不支持flex4.0.得到了几个大侠的首肯,并且给出了肯定答案:不支持.


有反对的不.

anling 发表于 2011-5-7 09:54:56

有人来顶一下不,有这方面的,可以给留个qq
随时守候,急于解决。

1.解决录不到fle_amf_call也成。
2.解决在这种情况下关联dsid也成。

anling 发表于 2011-5-8 14:30:45

补充一下错误相关日志:

测试过程中发现回放脚本,replay log ok,但是tomcat后台发生错误,如下:
Unknown AMF type '49'.flex.messaging.io.UnknownTypeException: Unknown AMF type '49'.
      at flex.messaging.io.amf.Amf3Input.readObjectValue(Amf3Input.java:217)
      at flex.messaging.io.amf.Amf3Input.readObject(Amf3Input.java:130)
      at flex.messaging.io.amf.Amf3Input.readArray(Amf3Input.java:358)
      at flex.messaging.io.amf.Amf3Input.readObjectValue(Amf3Input.java:156)
      at flex.messaging.io.amf.Amf3Input.readObject(Amf3Input.java:130)
      at flex.messaging.io.amf.Amf3Input.readScriptObject(Amf3Input.java:437)
      at flex.messaging.io.amf.Amf3Input.readObjectValue(Amf3Input.java:152)
      at flex.messaging.io.amf.Amf3Input.readObject(Amf3Input.java:130)
      at flex.messaging.io.amf.Amf0Input.readObjectValue(Amf0Input.java:123)
      at flex.messaging.io.amf.Amf0Input.readArrayValue(Amf0Input.java:359)
      at flex.messaging.io.amf.Amf0Input.readObjectValue(Amf0Input.java:127)
      at flex.messaging.io.amf.Amf0Input.readObject(Amf0Input.java:94)
      at flex.messaging.io.amf.AmfMessageDeserializer.readObject(AmfMessageDes
erializer.java:227)
      at flex.messaging.io.amf.AmfMessageDeserializer.readBody(AmfMessageDeser
ializer.java:206)
      at flex.messaging.io.amf.AmfMessageDeserializer.readMessage(AmfMessageDe
serializer.java:126)
      at flex.messaging.endpoints.amf.SerializationFilter.invoke(Serialization
Filter.java:145)
      at flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.ja
va:291)
      at flex.messaging.MessageBrokerServlet.service(MessageBrokerServlet.java
:353)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
      at org.apache.commons.filters.SetCharacterEncodingFilter.doFilter(SetCha
racterEncodingFilter.java:170)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)

查看loadrunner generation log 发现:xml录制不到,找不到对象flex.messaging.io.amf.Amf3Input,但在Loadrunner中已经加载了flex的所有jar包.log如下:
AMF notify: AMFFilter_Init (1)
Flex Remoting notify: initialize FlexRemotingPackageFilter
Flex RTMP notify: Initialize FlexRTMPSecondFilter
****** Start Log Message ******
Web Recorder version : 9.52.0.4013
Recording Mode: HTML-based script
Correlation is enabled system wide
Recording headers in list:
x-flash-version
Not excluding content types
Do not record this content types as a resource:
text/html
text/xml
Reset context between actions
Record non-HTML elements as separate functions
Protocol Type: Multi-AMF
$$$$$$ End Log Message $$$$$$
......
AMF warning: AMF: Externalizable read object failed: Exception Occurred while invoking TestObject method -
java.lang.ClassNotFoundException: flex.messaging.io.amf.Amf3Input
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.GetLCDSObjectInputStream(HPExternalizableWrapper.java:123)
at hp.flex.HPExternalizableWrapper.GetObjectInputStream(HPExternalizableWrapper.java:229)
at hp.flex.HPExternalizableWrapper.TestObject(HPExternalizableWrapper.java:55)
Flex RTMP notify: Cleaning FlexRTMPFirstFilter
Flex RTMP notify: Cleaning FlexRTMPSecondFilter

flex log可以看出无法创建jar类的类型,一些对象未找到,如下:
ReadExternalizable throws exception:
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at hp.flex.HPExternalizableWrapper.ReadObject(HPExternalizableWrapper.java:96)
Caused by: flex.messaging.MessageException: Cannot create class of type
'com.....ipnms.facade.system.dto.AccountDto'. Type 'com......ipnms.facade.system.dto.AccountDto' not found. at flex.messaging.util.ClassUtil.createClass(ClassUtil.java:70)
at flex.messaging.io.AbstractProxy.getClassFromClassName(AbstractProxy.java:87)
at flex.messaging.io.amf.AbstractAmfInput.createObjectInstance(AbstractAmfInput.java:160)
at flex.messaging.io.amf.Amf3Input.readScriptObject(Amf3Input.java:409)
at flex.messaging.io.amf.Amf3Input.readObjectValue(Amf3Input.java:152)
at flex.messaging.io.amf.Amf3Input.readObject(Amf3Input.java:130)
at flex.messaging.messages.AbstractMessage.readExternalBody(AbstractMessage.java:654)
at flex.messaging.messages.AbstractMessage.readExternal(AbstractMessage.java:324)
at flex.messaging.messages.AsyncMessage.readExternal(AsyncMessage.java:98)
at flex.messaging.messages.AcknowledgeMessage.readExternal(AcknowledgeMessage.java:56)
at flex.messaging.io.amf.Amf3Input.readExternalizable(Amf3Input.java:491)
at flex.messaging.io.amf.Amf3Input.readScriptObject(Amf3Input.java:420)
at flex.messaging.io.amf.Amf3Input.readObjectValue(Amf3Input.java:152)
at flex.messaging.io.amf.Amf3Input.readObject(Amf3Input.java:130)

anling 发表于 2011-5-8 14:32:16

有人来发表一下意见不,一直关注.

anling 发表于 2011-5-19 17:37:16

仍在等待。

jerryaaa 发表于 2011-5-20 16:13:22

能发给我lr 9.51和9.52的batch吗?

谢谢!
邮箱是494626241@qq.com

charmer 发表于 2012-5-14 15:08:09

呵呵,从网上查了很多资料发现QTP是支持到flex 4了

wwyfriend 发表于 2016-4-16 20:58:54

后来怎样了?

wwyfriend 发表于 2016-4-16 21:01:36

LR11 也存在同样问题:脚本回放 ok,只是应用后台(Tomcat)会报错。
Unknown AMF type '57'.
flex.messaging.io.UnknownTypeException: Unknown AMF type '57'.
        at flex.messaging.io.amf.Amf3Input.readObjectValue(Amf3Input.java:219)
        at flex.messaging.io.amf.Amf3Input.readObject(Amf3Input.java:132)
        at flex.messaging.io.amf.Amf3Input.readScriptObject(Amf3Input.java:473)
        at flex.messaging.io.amf.Amf3Input.readObjectValue(Amf3Input.java:153)
        at flex.messaging.io.amf.Amf3Input.readObject(Amf3Input.java:132)
        at flex.messaging.io.amf.Amf0Input.readObjectValue(Amf0Input.java:135)
        at flex.messaging.io.amf.Amf0Input.readArrayValue(Amf0Input.java:326)
        at flex.messaging.io.amf.Amf0Input.readObjectValue(Amf0Input.java:139)
        at flex.messaging.io.amf.Amf0Input.readObject(Amf0Input.java:95)
        at flex.messaging.io.amf.AmfMessageDeserializer.readObject(AmfMessageDeserializer.java:226)
        at flex.messaging.io.amf.AmfMessageDeserializer.readBody(AmfMessageDeserializer.java:205)
        at flex.messaging.io.amf.AmfMessageDeserializer.readMessage(AmfMessageDeserializer.java:125)
        at flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter.java:114)
        at flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.java:278)
        at flex.messaging.MessageBrokerServlet.service(MessageBrokerServlet.java:322)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:323)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:595)

wwyfriend 发表于 2016-4-16 23:26:55

这个问题已经解决,原因是脚本中有多余的“flex_web_request("amf",”xxx)请求,重新录制,调试脚本,回放正常,应用程序后台也无此错误了。
页: [1]
查看完整版本: 紧急求助 flex性能测试,关联dsid