angularjs – 量角器 – 如果元素isNotPresent非常慢,则测试 – 有哪些替代方案?

前端之家收集整理的这篇文章主要介绍了angularjs – 量角器 – 如果元素isNotPresent非常慢,则测试 – 有哪些替代方案?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我用protractor / JUnit编写我的AngularJS测试代码

我愿意测试那个元素不存在.

到目前为止,我使用以下内容

expect(elem.isPresent()).toBe(false);

这是按预期工作,但它的速度减慢.
我并不想要将状态从isPresent更改为isNotPresent,只是为了在我的测试的某个时刻检查我没有各种元素.

对我而言,测试元素是否同样重要.

我的问题是,非存在的几个测试非常简单,需要花费太多时间;因为它似乎等待超时或其他什么.

我愿意尽快对非存在进行测试.

因此,我尝试了不同的approch,例如:

- expect(element.all(locator).count()).toEqual(0)
 - ExpectedCondition : seems promising,but I do not see any condition for isNotPresent.

到目前为止,我的想法已经不多了,任何建议都会非常感激

谢谢你的支持

解决方法

你可以做的是减少 implicit wait timeout

onPrepare: function(){
    browser.manage().timeouts().implicitlyWait(2000);
},

虽然检查它不会影响测试的其他区域.

另一个选择是使用browser.isElementPresent()而不是纯webdriver的存在性检查的实现,因此,有助于避免量角器到角度的同步:

expect(browser.isElementPresent(elem)).toBe(false);

另见:

> In protractor,browser.isElementPresent vs element.isPresent vs element.isElementPresent

猜你在找的Angularjs相关文章