Java 如何比较SeleniumWebDriver中HTML弹出窗口中是否存在部分文本?

Java 如何比较SeleniumWebDriver中HTML弹出窗口中是否存在部分文本?,java,selenium,xpath,selenium-webdriver,compare,Java,Selenium,Xpath,Selenium Webdriver,Compare,我需要检查一些部分文本是否存在于HTML弹出窗口中,因为一些文本是动态的 我的场景是这样的: 输入用户名和密码,然后单击登录按钮 系统显示警告消息为:密码为,在该日期之前的年月日到期(到期日期为动态),重置密码 我只想检查“密码是”文本是否存在。 还有其他HTML弹出窗口具有相同的divID和class,只是警报消息文本不同 HTML代码: <div id="msgBox1481602403457" class="msgBox" style="opacity: 1; top: 19.5

我需要检查一些部分文本是否存在于HTML弹出窗口中,因为一些文本是动态的

我的场景是这样的:

  • 输入用户名和密码,然后单击登录按钮
  • 系统显示警告消息为:密码为,在该日期之前的年月日到期(到期日期为动态),重置密码
我只想检查“密码是”文本是否存在。 还有其他HTML弹出窗口具有相同的
div
ID
class
,只是警报消息文本不同

HTML代码:

<div id="msgBox1481602403457" class="msgBox" style="opacity: 1; top: 19.5px; left: 566.5px; background-image: url("styles/images/msgBoxBackGround.png");">  
<div class="msgBoxTitle">Information</div>
  <div>
     <div class="msgBoxContainer">
     <div id="msgBox1481602403457Image" class="msgBoxImage">
     <img src="styles/images/info.png">
 </div>

<div id="msgBox1481602403457Content" class="msgBoxContent">
  <p>
    <span>
       The Password is,
       <br>
       Expires on dd/mm/yy
       <br>
       Before this date,
       <br>
        Reset the password
    </span>
   </p>
  </div>
 </div>
 <div id="msgBox1481602403457Buttons" class="msgBoxButtons">
</div>
</div>

问询处

密码是,

于年月日到期
在此日期之前,
重置密码

这样试试-

String divText = driver.findElement(By.xpath("@class='msgBoxContent'")).getText();
上面的代码行应该给出该div中的全文-密码是,在该日期之前的dd/mm/yy到期,重置密码

然后使用contains()方法检查您要查找的文本是否可用

if(divText.contains("The Password is")) {
    System.out.println("match found");
} else {
    System.out.println("match not found");
}

到目前为止你做了什么?发布我在下面尝试过的代码String text=“密码是”;List List=driver.findelelements(By.xpath(“/*[contains(text(),“+text+”)]”));如果(text.equals(list)){System.out.println(“请重置密码,密码将过期”);}其他{System.out.println(“继续”);}谢谢您的回复,这对我有用。我刚刚将xpath更新为:String divText=driver.findElement(By.xpath(“//div[@class='msgBoxContent']/p/span”).getText();