2017-05-14 27 views
0

登錄不起作用在硒webdriver 3.4.0版本。登錄不起作用在硒webdriver 3.4.0版本

源代碼:

public static void main(String[] args) throws InterruptedException { 
    // TODO Auto-generated method stub 

    System.setProperty("webdriver.ie.driver", "D:\\Jars\\IEDriverServer.exe"); 
    InternetExplorerDriver driver= new InternetExplorerDriver(); 
    // Navigating to URL 
      driver.navigate().to("https://login.yahoo.com/"); 

      //finding Username field 
      driver.findElement(By.id("login-username")).sendKeys("randomusername"); 

      // Clicking on Next button 
      driver.findElement(By.id("login-signin")).click(); 

      //Thread.sleep(3000); 

      // Entering the password field 
      driver.findElement(By.id("login-passwd")).sendKeys("random_password"); 

      // Clicking on Signin button 
      driver.findElement(By.id("login-signin")).click(); 

      // Driver Closing 
      driver.close(); 

} 

請給我建議任何solution.Thanks提前。

+0

你可以更具體..我想你寫了一個正確的代碼在問題本身。 – Ram

+0

@laxman你有什麼錯誤嗎?也發佈錯誤。 – Arpit

+0

你在哪裏面對錯誤?你能打印錯誤stacktrace嗎? – DebanjanB

回答

0

您的代碼無法使用,因爲您在輸入登錄ID後密碼字段已過時;所以爲了避免使用陳舊的元素,您必須檢查該元素是否再次出現在DOM中;因此使用一些明確的等待如下:

WebDriverWait wait = new WebDriverWait(driver,10); 
    wait.until(ExpectedConditions.stalenessOf(driver.findElement(By.id("login-passwd")))); 

    driver.findElement(By.id("login-passwd")).sendKeys("random_password");