我需要找到文本消息的 css 选择器:恭喜!新用户成功填写注册表后显示。我正在使用 Selenium Web 驱动程序来自动化注册过程。我必须声明“恭喜,您的电子邮件已通过验证”文本。以下是相同的 HTML 代码:
<div class="d-title">
<h1>Congratulations!</h1>
<strong>Your e-mail address has been verified.</strong>
谢谢,Java初学者
我需要找到文本消息的 css 选择器:恭喜!新用户成功填写注册表后显示。我正在使用 Selenium Web 驱动程序来自动化注册过程。我必须声明“恭喜,您的电子邮件已通过验证”文本。以下是相同的 HTML 代码:
<div class="d-title">
<h1>Congratulations!</h1>
<strong>Your e-mail address has been verified.</strong>
谢谢,Java初学者
下面的代码将等待 10 秒,并检查选择器是否包含提供的文本,如果不包含,则会抛出异常...如果要处理异常,只需将其包围起来 try 和 catch
new WebDriverWait(driver,10).until(ExpectedConditions.textToBePresentInElement(By.cssSelector("div.d-title>h1"),"Congratulations,Your email has been verified"));
您无法匹配 CSS 中的文本。您可以在 XPath 中执行此操作,但 CSS 没有匹配文本节点的选择器。在 XPath 中,这很简单://div/h1[. = 'Congratulations!']
.
由于Congratulations!
和Your e-mail address has been verified.
是两个不同的文本,因此您必须为它们使用两个不同的 css 选择器:
对于Congratulations!
, 使用div.d-title > h1
对于Your e-mail address has been verified.
, 使用div.d-title > strong