[英]How to count invisible items with Protractor
我可以使用这样的filter
来计算可见项:
it('should have correct number of visible columns', function () {
expect(tableHeaders.filter(function (header) {
return header.isDisplayed()
}).count()).toBe(6);
});
但是,我该如何更好地计算不可见的呢? 此函数不作为header.isDisplayed()
返回Promise,而不仅仅是布尔值:
it('should have correct number of visible columns', function () {
expect(tableHeaders.filter(function (header) {
return !header.isDisplayed()
}).count()).toBe(6);
});
那么,我应该如何最量角器地计算不可见的项目?
我已经弄清楚了如何使用.reduce()
来达到这个目的:
expect(tableHeaders.reduce(function (acc, header) {
return header.isDisplayed()
.then(function (isDisplayed) {
return acc += !isDisplayed ? 1 : 0;
})
}, 0)).toBe(7);
如果未显示该项目,我将累加器变量增加1
,然后将其返回并与正确值进行比较。
reduce()
可以在这里使用,但是.filter()
将是“最量角器”的方式:
var invisibleTableHeaders = tableHeaders.filter(function (header) {
return header.isDisplayed().then(function (isDisplayed) {
return !isDisplayed;
})
});
expect(invisibleTableHeaders.count()).toBe(7);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.