量角器根据条件单击嵌套元素,错误 - 在指定的超时内未调用异步回调
Protractor clicking nested elements based on a condition, error - Async callback was not invoked within timeout specified
我正在尝试为我们在应用程序中使用的可重用 UI 控件之一创建一个页面对象,这是一个包含一堆标题( th
) 的表,带有要过滤的按钮。我想单击特定th
元素的按钮。这是我的代码
this.gridAllColumns = browser.element(by.css('[grid-service=envGridService]')).all(by.tagName('th'));
this.filterColumn = function(columnName){
gridAllColumns.each(function(element){
var text = element.getText();
if( text = columnName){
console.log(text);
var buttonElement = element.element(by.tagName('button'));
buttonElement.click();
}
});
}
我收到以下错误
错误:超时 - 在超时内未调用异步回调 指定
我做错了什么?有人可以指出我正确的方向吗?
您需要使用 this
引用gridAllColumns
,并且需要使用filter()
:
this.filterColumn = function(columnName) {
this.gridAllColumns.filter(function(header) {
return header.getText().then(function (headerText) {
return headerText === columnName;
});
}).first().element(by.tagName('button')).click();
}
相关文章:
- 在promise中为回调添加超时并拒绝
- 可以clearTimeout删除JavaScript中已触发超时事件的未处理回调
- jasmine 2-在jasmine指定的超时时间内未调用异步回调.DEFAULT_TIMEOUT_INTERVAL
- Sinon-带有回调的存根函数-导致测试方法超时
- 节点.js设置超时与回调
- for循环,回调,一起超时,超时似乎不起作用
- 设置超时函数回调静态变量
- 定义节点.js回调的超时
- 量角器根据条件单击嵌套元素,错误 - 在指定的超时内未调用异步回调
- 同步窗口.设置超时回调
- 如何使用角度休息服务设置超时回调事件
- Response.重定向不能在会话超时的页面回调中调用
- 为什么设置超时's回调参数可以接受参数
- Mocha在运行CasperJS测试时不考虑超时或回调
- 由于回调结构中可能存在错误,无法使超时工作
- Jasmine异步回调超时
- 测试socket.on('data')回调,而不会让摩卡超时
- Protractor/Jasmine2 -未在指定超时内调用异步回调
- 如何为node.js请求库设置超时回调?
- 谷歌分析与超时回调