使用带有量角器的phantomjs访问iframe中的web元素

问题描述 投票:2回答:2

phantomjs可以在iFrame中执行getText()或enterText()等操作吗?我正在使用量角器进行测试。 Phantomjs可以在默认框架中执行操作,但在iframe内部定位器会超时。有什么建议?

javascript selenium-webdriver phantomjs protractor webdriverjs
2个回答
5
投票

您需要切换到iframe才能使用它。像这样......

browser.switchTo().frame(iframeNameOrIndex);

然后切换回来,你使用:

browser.driver.switchTo().defaultContent();

Protractor API是这个的好来源......

此外,如果iframe来自另一个域,您可能需要为phantomjs添加--web-security=no选项:

phantomjs --web-security=no spec.js

0
投票

是..首先,使用console.log(page.childFramesName());仔细检查iframe的id名称。接下来,您可以使用page.switchToChildFrame('name_here');将页面切换到iframe。最后,你可以做任何你想做的事。

© www.soinside.com 2019 - 2024. All rights reserved.