gpt4 book ai didi

selenium - 检查是否出现 "Please enter an email address"消息

转载 作者:行者123 更新时间:2023-12-03 01:16:04 24 4
gpt4 key购买 nike

给定一个简单的页面:

<form>
<input type="email">
<button>click</button>
</form>

如果我在文本字段中输入非电子邮件的任何内容并单击按钮,则会出现请输入电子邮件地址消息。

有没有办法检查消息是否使用 Selenium 或 Watir 出现?据我所知,浏览器 DOM 中没有出现任何新内容。

由于该页面使用浏览器内置的电子邮件检查功能,因此检查是否出现错误消息是否有意义?它与检查浏览器滚动条是否工作处于同一级别。我们不再检查 Web 应用程序,而是检查平台(浏览器)。

关于 SO 的早期相关问题是:How do I test error conditions in HTML5 pages with cucumber?

最佳答案

你可以这样尝试

JavascriptExecutor js = (JavascriptExecutor) driver;
driver.findElement(By.cssSelector("input[type='email']")).sendKeys("asd");
Object s=js.executeScript("return document.getElementById(\"a\").validity.valid");
System.out.println(s);
driver.findElement(By.cssSelector("input[type='email']")).sendKeys("asd@gmail.com");
s=js.executeScript("return document.getElementById(\"a\").validity.valid");
System.out.println(s);

上面一行的输出是

false
true

据此您可以得出给定值是否有效的结论。

下面的 JavaScript 逻辑将根据字段的有效性返回 true/false

document.getElementById(\"a\").validity.valid

P.s:我假设输入标签的 ID 为“a”

关于selenium - 检查是否出现 "Please enter an email address"消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15636721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com