【问题标题】:LoadRunner Truclient, need to access elements directly and force events. How to force the .onClick() event?LoadRunner Truclient,需要直接访问元素并强制事件。如何强制 .onClick() 事件?
【发布时间】:2017-12-04 19:30:25
【问题描述】:

我们有一个正在测试的应用程序正在使用框架,并且似乎忽略了标准。 (图 1-3。)

问题:我需要在页面内强制一个onClick() 事件,因为TruClient 执行click() 事件,但onClick() 不会触发。我们正在使用“导航”步骤作为解决方法,但不能将其用于其他步骤。

在 IE 11 中查看的感兴趣代码是:

    <html>
    <head>
    <title>Revenue Management System</title>
    <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    </head>
    <frameset rows="43,*" cols="*" frameborder="NO" border="0" framespacing="0">
      <frame src="html/top_pannel.htm" name="top" scrolling="NO" noresize >
      <frameset cols="153,*" frameborder="auto" border="0" framespacing="0">
        <frame src="html/LP_index.htm" name="menu" scrolling="auto" noresize >
        <frame src="html/main.htm" name="maindata">
      </frameset>
    </frameset>
    <noframes><body>
    </body></noframes>
    </html>

使用Developer tools,我们可以看到(图4,无法从Internet Exploder Dev Tools中复制粘贴。)

另外:似乎我无法使用 JavaScript 访问主窗口、钻入框架并在未正确响应的各种链接上使用 getObjectByID()。尝试了“Evaluate JavaScript on Object”,但这似乎不起作用。

想知道我是否可以在这里使用该技术 -->FrameBreaker 来绕过它?但这并没有让我进入主窗口,就像我检查时一样:

var x = window.frameElement; 
window.alert(x); 

警报返回“null”。所以,我相信顶级框架。

我一直在使用 jquery(window.alert($("#slideMenu_0").text()); 在“运行步骤”模式下评估失败),并且

var x = document.getElementsByTagName("a"); 
window.alert(x); 

不想返回任何东西,也不会

var element = document.getElementById('slideMenu_0');

var x = document.getElementsByClassName("clA0");

另外值得注意的是,我没有机器的管理员权限,尽管 LoadRunner 在提升的权限下运行。

希望有任何见解。到目前为止,我们有 4 个项目需要快速解决;不幸的是,我是我们目前最好的。 ;-)

如果图片没有上传,请告知 - 偏执型精神分裂症在防火墙后面

【问题讨论】:

  • 原来我们使用 FrontPage 作为来源。

标签: javascript loadrunner truclient


【解决方案1】:

TruClient 使用的某些 API 仅在标准模式下可用,因此如果网站未在标准模式下呈现,TruClinet 将不支持它。 根据你的描述,好像是这样的。 因此,我建议改用 TruClient Firefox 或 TruClient Chromium。 请注意,取消强制措施将阻止 TruClient 记录您的操作。

希望对你有帮助, 埃拉德。

【讨论】:

  • 谢谢你,埃拉德。 Firefox中菜单显示的相同问题;我会研究一下 Chrome。
  • 仍然需要弄清楚如何触发 onClick() 事件,因为浏览器不会这样做。 getElementByID() 不起作用,根据上面的注释...... getElementByClass() 到目前为止是不可靠的。尝试 $("[attrib='Value']") 方法,我相信它会失败。 :-P
猜你喜欢
  • 1970-01-01
  • 2019-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多