量角器:单击SVG元素不起作用

时间:2015-06-19 14:31:00

标签: angularjs testing svg protractor end-to-end

我正在使用量角器测试angularjs App。

我需要测试SVG元素的点击。

量角器可以找到元素,它可以运行点击元素,但点击后没有任何反应。

点击后应该更改页面。

代码是

el=element(by.xpath('(//*[local-name()="g" ]//*[local-name() = "rect"])[1]'))
    browser.actions().mouseMove(el.getWebElement()).click().perform();

2 个答案:

答案 0 :(得分:0)

我同意@alecxe在评论中的建议。你应该在元素本身上调用click()

var el = element(by.xpath('(//*[local-name()="g" ]//*[local-name() = "rect"])[1]'));
el.click();

答案 1 :(得分:0)

这仍然是一个问题。根据github问题,应该使用browser.actions()。以下解决方案终于为我解决了:

await browser.driver.actions().mouseMove(element(by.css('YOUR_LOCATOR')).getWebElement()).perform();
await browser.actions().click().perform();

https://github.com/angular/protractor/issues/2272

https://github.com/angular/protractor/issues/4495