Java 登录测试中的If语句是否一直失败?

Java 登录测试中的If语句是否一直失败?,java,selenium,if-statement,selenium-webdriver,Java,Selenium,If Statement,Selenium Webdriver,我正在SeleniumJava中运行一个简单的测试来测试登录名,但是我的if语句一直直接跳到else,表示登录名已通过,即使我知道登录名已失败 // if error message test fails if (driver.getPageSource().contains("User not found")) { System.out.println("Login Failed - incorrect us

我正在SeleniumJava中运行一个简单的测试来测试登录名,但是我的if语句一直直接跳到else,表示登录名已通过,即使我知道登录名已失败

        // if error message test fails
        if (driver.getPageSource().contains("User not found")) {
            System.out.println("Login Failed - incorrect username ");
            Thread.sleep(1000);
        driver.quit();
        } else if (driver.getPageSource().contains("Incorrect Username or Password!")) {
            System.out.println("Login Failed - incorrect username or password");
            Thread.sleep(1000);
        driver.quit();
        } else if (driver.getPageSource().contains("Account is locked")) {
            System.out.println("Login Failed - Account locked");
            Thread.sleep(1000);
            driver.quit();}
        } else {
            System.out.println("Login Passed");
            // Open Nav Bar
            driver.findElement(By.xpath("//*[@id=\"root\"]/div/div/div[1]/div[1]/button")).click();
            Thread.sleep(1000);
            // log out
            driver.findElement(By.xpath("//*[contains(text(),'Log out')]")).click();
            driver.quit();
        }
我遗漏了什么?

下面的代码中标记了一个额外的}。我甚至不确定您的代码是否正确编译或呈现,但您可能希望更正这一点

//如果错误消息测试失败 如果未找到driver.getPageSource.ContainesUser{ System.out.printlnLogin失败-用户名不正确; 线程1000; driver.quit; }否则,如果driver.getPageSource.contains包含正确的用户名或密码!{ System.out.printlnLogin失败-用户名或密码不正确; 线程1000; driver.quit; }否则,如果driver.getPageSource.containsAccount被锁定{ System.out.printlnLogin失败-帐户已锁定; 线程1000;
quit;}我认为应该将此代码放在ActionListener或ChangeListener中


这样就行了。

眼睛好,但问题仍然存在。就像我的,if语句一直跳到else;