警报消息的Xpath定义

时间:2018-02-15 10:43:42

标签: java css xpath selenium-webdriver intellij-idea

我已经定义了一个xpath来为消息文本创建webelement(alertMessage):"用户不存在。"

用firepath表示xpath是:xpath =" .//* [@ id =' loginAlert']"

<div id="login-box">
<h1>Control Sphere Login</h1>
<form id="login" class="navbar-form navbar-right" role="form" name="login" method="post" novalidate="novalidate">
<div id="input-box">
<div id="submit-box">
<div id="loginAlert" class="loginAlert">User doesn't exist.</div>
</form>
</div>
<div id="webgl"/>

我运行测试,并且我没有使用alertMessage.getText()获得文本:
   java.lang.AssertionError: 预期:&#34;用户不存在。&#34;      但是:是#34;&#34; 预期:用户不存在。 实际:                                                       

我的问题是你认为xpath的定义是否正确?

谢谢

1 个答案:

答案 0 :(得分:0)

您需要注意以下几个因素:

  • 您可以尝试按如下方式构建逻辑xpath

    xpath = ".//form[@id='login']//div[@class='loginAlert' and @id='loginAlert']"
    
  • 要提取文字用户不存在。而不是getText()使用getAttribute("innerHTML")

  • 尝试使用以下断言

    Assert.assertTrue(actualText.contains("User doesn't exist"))
    
相关问题