所以,我在一个有角度的应用程序中有这个HTML:
<div class="panel">
<input class="eula" id="eula" type="checkbox" />
<label for="eula">I agree</label>
</div>
这两个期望同样的规范(只是为了确保没有其他东西在运行):
expect(element(by.css('.panel')).isDisplayed()).toBeTruthy();
expect(element(by.css('.eula')).isDisplayed()).toBeTruthy();
第一个是真的。第二个是假的。那很奇怪。它也应该是真的。
所以,我试试:
element( by.css( '.panel' ) ).getOuterHtml()
.then( function ( html ) {
console.log( html );
});
我得到了:
<input class="eula" id="eula" type="checkbox">
从我看到的情况来看,没有什么可以隐藏复选框,所以我不明白为什么量角器说不可见。有没有其他方法来测试这个?有关如何进行调试和修复的想法吗?
答案 0 :(得分:0)
来自量角器isDisplayed()文档:
期望检查页面的DOM上是否存在元素并且可见。可见性意味着不仅要显示元素,还要使其高度和宽度大于0。
输入有一个display:none属性,这就是问题所在。