【问题标题】:Verify an error message using selenium web driver使用 selenium Web 驱动程序验证错误消息
【发布时间】:2018-06-03 19:15:27
【问题描述】:

我想验证登录失败后显示的错误消息。我总是得到我尝试过的“测试用例失败”。

我想用“无效的用户名或密码”验证文本。以下是我尝试过的代码。

这是html代码。

<div id="statusMsg">
  <div class="alert in fade alert-error" style="opacity: 1;">
    <a class="close" data-dismiss="alert">×</a>
      Invalid username or password
  </div>
</div>

这是我试过的代码。

String actualMsg=driver2.findElement(By.xpath("//div[@id='statusMsg']/div")).getText()
String errorMsg= "× Invalid username or password";

if(actualError.equals(errorMsg)) {
        System.out.println("Test Case Passed");
    }else{
        System.out.println("Test Case Failed");
    };

输出总是“测试用例失败”。

有没有办法解决这个问题?

【问题讨论】:

    标签: java selenium selenium-webdriver automated-tests qa


    【解决方案1】:

    要提取文本Invalid username or password,您必须访问&lt;div&gt; 标记,如下所示:

    String actualMsg = driver2.findElement(By.xpath("//div[@id='statusMsg']/div[@class='alert in fade alert-error']")).getAttribute("innerHTML");
    

    接下来您预期的错误消息是:

    String errorMsg = "× Invalid username or password";
    

    由于 x 位于 &lt;a&gt; 标记内,而 Invalid username or password 位于 &lt;div&gt; 标记内,因此验证过程需要对 String 进行一些操作。为了使验证更简单,您可以减少预期的错误消息,如下所示:

    String errorMsg = "Invalid username or password";
    

    现在您可以使用以下代码块来验证 actualMsg 是否包含 errorMsg,如下所示:

    if(actualMsg.contains(errorMsg)) 
    {
        System.out.println("Test Case Passed");
    }else
    {
        System.out.println("Test Case Failed");
    };
    

    【讨论】:

      【解决方案2】:

      在 div 中,您只有文本“无效的用户名或密码”,但您正在验证“× 无效的用户名或密码”。 首先从 String actualMsg 打印文本,然后输入正确的 errorMsg。

      String actualMsg = driver2.findElement(By.xpath("//div[@id='statusMsg']/div")).getText()
      String errorMsg= "Invalid username or password";
      
      if(actualError.equals(errorMsg)) {
              System.out.println("Test Case Passed");
          }else{
              System.out.println("Test Case Failed");
          }
      

      ;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-14
        • 1970-01-01
        • 1970-01-01
        • 2023-03-10
        相关资源
        最近更新 更多