繁体   English   中英

如何使用量角器计算不可见项

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM