如何使用量角器检查元素是否可见?

时间:2014-06-18 16:19:58

标签: angularjs protractor

我正在使用Protractor软件进行端到端测试。一些元素正在使用ng-show进行设置。

有人可以告诉我如何用Protractor检查这些元素是否可见?

4 个答案:

答案 0 :(得分:14)

假设您的元素具有ID“foo”,您可以这样做,例如

expect($('#foo').isDisplayed()).toBe(true); // or false to test that it's hidden

expect(element(by.id('foo')).isDisplayed()).toBe(true); 

答案 1 :(得分:2)

我发现isDisplayed()返回一个promise,而在.then中,你传递了boolean。所以看起来更像是这样:

$('#foo').isDisplayed().then(function(isDisplaying) {
    expect(isDisplaying).toBe(true);
  });

答案 2 :(得分:1)

期望知道如何处理承诺,以便以下工作。

expect($('#foo').isDisplayed()).toBe(true);

答案 3 :(得分:1)

假设您有相同ID /类的多个元素,并且您希望assert计算可见元素的数量

var elements = element.all(by.id('foo'))
               .filter(function(el){
                    return el.isDisplayed();
                });

expect(elements.count()).toEqual(2);
相关问题