量角器是否期望在内部等待承诺?

时间:2015-11-09 11:20:23

标签: javascript selenium promise protractor

我在SO question中找到了这个答案:

' AFAIK期望在内部等待相关的承诺。'

有谁知道这是否正确?我在protractor documentation搜索了一个没有运气的答案。任何人都可以在文档中指出正确的位置吗?

如果它是正确的,它将为我节省大量的工作!我们有超过200个测试,为了防止超时,我正在转换所有这些类型的调用:

expect(parentDialog.getAttribute('class')).toContain('k-window-maximized');

到此:

parentDialog.getAttribute('class').then(function(cls) { 
   expect(cls).toContain('k-window-maximized');
});    

1 个答案:

答案 0 :(得分:3)

这绝对是真的。 expect() / jasminewd(内部由protractor使用)对expect进行“修补”以隐式解决承诺。引自自述文件:

  

增强expect(),以便之前自动展开承诺   执行断言。

这是另一个文档参考:

换句话说,除非您需要真正解决的值以进行进一步的操作或计算,否则您可以安全地将承诺传递到expect(parentDialog.getAttribute('class')).toContain('k-window-maximized');

col = 3:4:5:6