作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
场景是,在我填写表单的所有必要信息(假设它们都是有效的)然后选择保存后,我收到一条消息弹出大约 6-7 秒,说表单已成功保存然后它会消失,连同它的 HTML 代码,即
<div data-notify="container" class="alert-success animated" role="alert" data-notify-position="top-right">
<span data-notify="title">
<span class="glyphicon glyphicon-ok">
::before
</span>
<span> Saving</span>
<span data-modify="message">Successfully saved</span>
</span>
</div>
我正在尝试使用文本“成功保存”进行断言,代码如下:
String message = driver.findElement(By.cssSelector("span.glyphicon glyphicon-ok")).getText();
assertTrue(message.contains("Successfully saved"));
不幸的是,它返回失败,因为找不到元素
org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"css selector","selector":"span.glyphicon glyphicon-ok"}
我想知道是我的代码不正确还是消息消失的速度快于驱动程序定位元素的速度。
如有任何帮助或更正,我们将不胜感激。
干杯,丹尼
最佳答案
尝试如下:-
WebDriverWait wait = new WebDriverWait(driver, 100);
WebElement el = wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//div[@data-notify='container']/descendant::span[@data-modify='message']")));
String message = el.getText();
assertTrue(message.contains("Successfully saved"));
希望对你有帮助..:)
关于javascript - Selenium WebDriver - 断言淡入淡出消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37915031/
我是一名优秀的程序员,十分优秀!