在 Protractor 的测试中,我希望在最后看到 element1 或 element2,我发现仅当显示 element1 并且 element2 不在页面上时才有效的“解决方案”
expect(element1.isDisplayed() || element2.isDisplayed()).toBeTruthy();
如果 element1 不在页面上但有 element2 - 我收到错误:
Failed: No element found using locator: ...(element1 locator)
我不能在只有一种可能的期望的情况下编写测试,这是使用数据进行的测试,在我的情况下可能有 2 个结果。 我如何验证页面上是否显示了两个元素之一?
最佳答案
我不认为 Jasmine
理解表达式 element1.isDisplayed() || element2.isDisplayed()
,所以只要两个元素不显示,断言仍然通过。
ExpectedConditions API 提供和/或
操作。
var EC = protractor.ExpectedConditions;
var condition = EC.or(EC.visibilityOf(element1), EC.visibilityOf(element2));
expect(condition()).toBeTruthy();
关于javascript - 检查 Protractor 中是否显示了 2 个元素中的 1 个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51488055/