【问题标题】:Click on element - Protractor单击元素 - 量角器
【发布时间】:2015-06-24 14:52:12
【问题描述】:

我有非常疯狂的 HTML,我试图点击元素,不幸的是没有成功。

HTML 看起来像

<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 5845 3897">

以及低于具有不同ID的多个等等..

<g id="30_0_80" transform="translate(420,754)" class="">
 <path class="fp x80 xab active" d="M307 0 L293 15 L155 120 L87 181 L47 220 L0 277 L0 282 L14 341 L27 379 L32 386 L32 386 L74 425 L123 461 L153 480 L188 500 L238 525 L303 551 L337 563 L340 563 L381 561 L490 560 L492 557 L522 526 L591 473 L662 430 L745 383 L770 368 L785 358 L796 350 L802 343 L806 335 L809 321 L809 318 L810 295 L808 293 L806 293 L763 292 L680 277 L643 269 L590 253 L555 239 L555 239 L508 214 L452 179 L397 138 L369 115 L339 79 L325 56 L310 28 L308 23 L308 19 L310 1 L307 0 Z"></path>
 <path class="p x88 xc7" d="M796 296 L792 300 L736 324 L595 391 L486 455 L413 505 L349 559"></path>
 <path class="p x88 xc7" d="M33 372 L57 324 L82 284 L128 228 L133 222 L134 221 L164 188 L222 131 L252 102 L281 69"></path><path class="p x88 xc7" d="M9 283 L24 261 L52 221 L79 190 L88 182"></path><path class="p x88 xc7" d="M169 175 L251 97 L284 60 L295 40 L303 25"></path><path class="p x88 xc7" d="M132 214 L119 229 L88 266"></path>
 <path class="p x88 xc7" d="M72 287 L54 315"></path><path class="p x88 xc7" d="M47 326 L44 331 L29 360"></path>
</g>

我做了什么尝试:

element(by.css('[transform="translate(420,754)"]')).click();

还有:

element(by.id('30_0_80')).click();

我得到的错误:

UnknownError: disconnected: not connected to DevTools

是否有人可以帮助我找出问题所在?

编辑: 经过更深入的分析,根据 alecxe 的评论,我用 DevTools 修复了之前的错误,但在查找元素时仍然存在问题,尽管我可以在浏览器代码中看到该元素。

No element found using locator: By.id("30_0_80")

【问题讨论】:

  • 错误信息很可能是因为您在浏览器窗口中打开了开发者工具并运行了测试:stackoverflow.com/questions/24167703/…..
  • 嗨,alecxe,这一直发生在我身上,而浏览器中的开发人员工具窗口没有任何连接,是否有可能网站以某种方式处于“开发人员”模式?因为这对我来说只发生在一个子页面上
  • @alecxe 看起来这个网站以某种方式使用 devtolls 而没有让我知道。我在另一个选项卡上关闭了 devtools,它停止抛出此错误,现在它只能找到元素。您是否也有机会帮助我解决这个问题?
  • 是的,很好,至少我们现在遇到了一个真正的问题。你确定id="30_0_80"不是动态生成的吗?
  • 其实很好,我没想到。不幸的是,我尝试模拟测试并创建所有新的和 ID(测试 3 次),还有什么?

标签: testing protractor end-to-end


【解决方案1】:

经过一些研究,我发现 iframe 正在加载到页面顶部,我试图点击 IFRAME,这就是我无法找到元素的原因。

感谢 @alecxe 用 DEV TOOls 引导我以正确的方式。

如果你想知道如何点击 iFrame,这里有描述: Protractor - find element in iframe

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多