如何解决在使用断言selenium / TestNG / Java提交表单后,如何检查是否在正确的页面中
这是我的情况“我正在提交表单,一旦提交其导航到页面调用WebTable。我想在提交表单后确认现在是不正确的页面”
如何使用断言检查此内容?请帮助硒/ Java / TestNG
解决方法
根据我的经验,您基本上有两种选择。
- 等待URL包含使用
driver.getCurrentUrl()
的期望值 - 等待将仅出现在下一页的特定元素
如果您尚未建立用于执行重试的类,则可以使用FluentWait。
,硒为这种类型的验证提供了一种很好的实践,而FluentWait来了:
FluentWait fluentWait = new FluentWait(webDriverBPO).withTimeout(Duration.ofSeconds(20)).pollingEvery(Duration.ofSeconds(1)).ignoring(NullPointerException.class);
在您上次执行操作后,您要做的就是等待URL包含您的期望值:
fluentWait.until(ExpectedConditions.urlContains("your URL or keyword from URL"));
您也可以尝试等待新页面中的任何元素,但是URL的加载速度比内容要快,因此可以节省一些时间(因为您无需执行任何其他验证)。
,单击表单后,您将等待使用Webdriverwait出现的元素。 您拉出当前URL并检查值并断言。
submitBtn.click();
WebDriverWait(driver,10).until(ExpectedConditions.visibilityOfElementLocated(By.id("etc")));
expectedUrl = driver.getCurrentUrl();
Assert.assertTrue(expectedUrl.equals("something"));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。