【发布时间】:2016-10-06 04:07:01
【问题描述】:
我正在使用 Protractor 编写一个 e2e 测试,该测试需要访问 Angular 2 应用程序中的 iframe 元素。
我相信我已经成功切换到 iframe,但由于某种原因,我希望选择的元素在我的测试“没有找到带有 css id 选择器的元素......”或“元素不是可见。”
这是我的代码:
this.fillOutInfo = function(input){
this.selectBox.click().then(function(){
browser.switchTo().frame(this.selectBox)
.then(function(){
browser.findeElement(by.id('recurly-hosted-input-field')).sendKeys(input)
.then(function(){
browser.switchTo().defaultContent();
})
})
})
} //selectBox references the iframe element within the DOM
当我检查元素时,上面的 id 显然在代码中,但由于某种原因它没有被访问。我的功能执行不正确吗?我已经尝试了不同的方法来查找我需要的输入,例如嵌套定位器,但没有任何效果。
非常感谢任何帮助!
【问题讨论】:
-
在嵌套的
then中有你的console.log 吗?你如何在量角器中解决promise? -
你提到了
browser.findeElement。是错字吗? -
@SudharsanSelvaraj 是的,抱歉,这是 stackoverflow 上的错字,而不是实际代码
标签: javascript angularjs iframe protractor