I am trying to automate a website using Selenium, wherein I click on the link having text as "Basic Auth". Enter the text on the username and password fields of the Authentication pop-up window using Java Robot class.
Below is the Selenium code:
driver.get("http://the-internet.herokuapp.com/");
driver.findElement(By.linkText("Basic Auth")).click();
Thread.sleep(10000);
Robot r = new Robot();
// Move the mouse to the username field
r.mouseMove(420, 377);
r.mousePress(InputEvent.BUTTON1_DOWN_MASK);
r.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
// Enter "admin" inside the username field
r.keyPress(KeyEvent.VK_A);
r.keyRelease(KeyEvent.VK_A);
r.keyPress(KeyEvent.VK_D);
r.keyRelease(KeyEvent.VK_D);
r.keyPress(KeyEvent.VK_M);
r.keyRelease(KeyEvent.VK_M);
r.keyPress(KeyEvent.VK_I);
r.keyRelease(KeyEvent.VK_I);
r.keyPress(KeyEvent.VK_N);
r.keyRelease(KeyEvent.VK_N);
// Move the mouse to the password field
r.mouseMove(419, 404);
r.mousePress(InputEvent.BUTTON1_DOWN_MASK);
r.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
// Enter "admin" inside the password field
r.keyPress(KeyEvent.VK_A);
r.keyRelease(KeyEvent.VK_A);
r.keyPress(KeyEvent.VK_D);
r.keyRelease(KeyEvent.VK_D);
r.keyPress(KeyEvent.VK_M);
r.keyRelease(KeyEvent.VK_M);
r.keyPress(KeyEvent.VK_I);
r.keyRelease(KeyEvent.VK_I);
r.keyPress(KeyEvent.VK_N);
r.keyRelease(KeyEvent.VK_N);
// Press Enter key to login
r.keyPress(KeyEvent.VK_ENTER);
r.keyRelease(KeyEvent.VK_ENTER);
Thread.sleep(3500);
softassert.assertEquals(driver.findElement(By.cssSelector("h3")).getText(), "Basic Auth","Basic Auth message is not correct");
softassert.assertEquals(driver.findElement(By.cssSelector("p")).getText(), "Congratulations! You must have the proper credentials.","Credentials message is not correct");
Output:
It is throwing below error:
<<< FAILURE!
org.openqa.selenium.WebDriverException:
Failed to convert data to an object
It is invoking the "Authentication Required" pop-up window multiple times, instead of just once. Also, it is neither entering any text inside the username and password fields, nor clicking on the OK button.
Please help.