2017-05-14 11 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

どこがエラーに直面していますか?エラースタックトレースを印刷できますか? – 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");