使用ng-show属性</span>测试<span>是否可见

时间:2015-01-20 18:50:15

标签: javascript css angularjs selenium protractor

在我看来,我需要测试ng-show="showMsgRoundDownToHours"是否可以显示跨度。这是观点:

<div class="highlight">
    ...     
    <span class="MsgRoundDownToHours" ng-show="showMsgRoundDownToHours">
       {{msgRoundDownToHours}}
    </span><br>
    ...
</div>

这是我针对该场景的量角器测试:

describe('c2g test', function() {
  ...
  var showMsgRoundDownToHours = element(by.css('.MsgRoundDownToHours'));
  ...
  // 10km and 229 minutes)
  it('10km, 229 minutes', function() {
    ...
    expect(showMsgRoundDownToHours).toBe(false);
    ...
  });
});

我不知道如何选择特定范围。我已尝试制作span一个div,但这打破了布局。我尝试过为它分配一个css类MsgRoundDownToHours,但这会让我的控制台爆炸出错。有没有其他方法可以选择那个跨度?我也很乐意做css修改。

1 个答案:

答案 0 :(得分:4)

使用isDisplayed()找到元素并检查可见性:

expect(element(by.css('span.MsgRoundDownToHours')).isDisplayed()).toBe(true);