使用selenium测试注销

时间:2015-01-21 16:21:45

标签: java testing selenium selenium-webdriver

嗨我刚接触selenium并且我必须测试用户是否可以从页面注销,继承人我测试它的方法,但不幸的是它永远不会到达页面,我想我在方法中遗漏了一些东西:

public boolean logOut() {
    WebDriver driver = getDriver();
    //driver.get(BASE_URL);
    driver.get("http://enos.itcollege.ee/~mkalmo/selenium/menu.php");
    elementById("log_out_link").click();

    if(!driver.getCurrentUrl().equals("http://enos.itcollege.ee/~mkalmo/selenium/index.php"))
    {
        return false;
    }

    return true;
}

如果用户返回到主页面它应该返回true,那么测试将继续测试,所以测试将通过,但它总是返回false:

 @Test
public void logOutSuccess() {
    LoginPage loginPage = LoginPage.goTo();
    loginPage.logInWith(USERNAME, CORRECT_PASSWORD);
    System.out.println(driver.getPageSource());
    assertThat(loginPage.logOut(), is(true));
}

1 个答案:

答案 0 :(得分:1)

或者,您可以明确等待"登录"按钮出现

WebDriverWait wait = new WebDriverWait(driver, 5);
try {
    wait.until(ExpectedConditions.visibilityOfElementLocated(By.id('log_in_button')));
    return true;
} catch (TimeoutException exception) {
    return false;
}