检查是否显示带有量角器的html元素

时间:2014-09-01 13:46:18

标签: javascript angularjs protractor angularjs-e2e

我正在测试一个简单的复选框,在选中时会显示弹出窗口。当我运行我的e2e测试时,我会看到在选中复选框后弹出窗口。然而,测试结果是错误的。为什么isPresent()函数返回false?有什么延迟吗?

这是我的e2e测试代码:

it('should display popup window if button is checked', function () {
    var popUp = element(by.binding('who.othersIncluded'));
    element(by.id('othersIncl')).click();
    expect(popUp.isPresent()).toBeTruthy();
});

这是html:

<input id="othersIncl" class="input-checkbox-alt" type="checkbox" data-ng-model="who.othersIncluded" data-ng-change="update()"/>

<div data-ng-show="who.othersIncluded">
    <div>hidden popup</div>
</div>

1 个答案:

答案 0 :(得分:1)

找到一种方法让它发挥作用!

这是使用ng-show属性选择html div的工作代码:

popUp = $('[data-ng-show="who.othersIncluded"]');

这将返回一个可以在期望中使用的元素。