【问题标题】:How to fire mouseover event with specific clientX and clientY parameter values in Selenium IDE?如何在 Selenium IDE 中使用特定的 clientX 和 clientY 参数值触发 mouseover 事件?
【发布时间】:2016-07-19 22:26:16
【问题描述】:

我正在尝试在 Selenium IDE 2.9.1 (Firefox 45) 中编写一个测试,将一些文本输入到 Froala JS editor 实例中。我无法确定为此事件指定 clientXclientY 参数的任何方法,显然 Froala 代码依赖于使编辑器正常运行。

如果我使用 Selenium IDE 的 mouseOver 命令,则无法指定这些坐标(它没有对应的 mouseOverAt 命令,就像其他一些鼠标事件一样)。仅使用fireEvent 命令,以mouseover 作为值,我无法为该原生JS 事件指定任何参数。

如何在 Selenium IDE 中使用这些坐标向特定元素发送 mouseOver 事件?

【问题讨论】:

    标签: firefox selenium-ide


    【解决方案1】:

    据我所知,没有使用 javascript 指定鼠标坐标的好方法。由于 Selenium IDE 很可能基于 Javascript,因此不可能为特定坐标设置鼠标悬停。至少我是这么认为的。

    不过还是有办法改变 Froala 元素中的文本:

    open    | https://www.froala.com/wysiwyg-editor
    getEval | window.document.evaluate( "//*[@id='froala-editor']//div[@class='fr-element fr-view']//h1",window.document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null ).singleNodeValue.innerHTML='CROCODILE!!! ARRR!!!'
    

    看起来很复杂,但添加文本就更复杂了。

    open    | https://www.froala.com/wysiwyg-editor
    getEval | var addedH1 = window.document.createElement("h1"); addedH1.innerHTML = 'Added text'; window.document.evaluate( "//*[@id='froala-editor']//div[@class='fr-element fr-view']//h1/..",window.document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null ).singleNodeValue.appendChild(addedH1);
    

    这是我可以建议的唯一方法,希望它会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-16
      • 1970-01-01
      • 2014-06-10
      相关资源
      最近更新 更多