How to deal with pop up window?
The process I want to automate is -
When a button (Sign in on https://www.happyeasygo.com/) is clicked pop up window appears to login. Then I have to enter my username:
* Settings Library SeleniumLibrary Test Cases *
Login test for happyeasygo
Open Browser https://www.happyeasygo.com/ gc Click Element xpath://body[@class='modal-open']/div/div/div/div/a Maximize Browser Window sleep 5 Click Element xpath://a[contains(text(),'Sign in')] Input Text xpath://input[@id='user_phone'] 959****701
And I am getting error for all below Elemet with locator not found:
Elemnt used : //input[@id='user_phone'] /html/body/div/div/div/div/div/div/div/div/form/dl/dd/div/input #user_phone
Some more information would be useful (such as the actual error you are getting and the actual code being used.
However from what you've put I'd wager it's an issue with a timeout between clicking the Sign In screen and it trying to enter text in a box that hasn't rendered yet.
So you could add a wait clause until it appears
Click Element xpath://a[contains(text(),'Sign in')] // Wait for the element to appear on the page wait = new WebDriverWait(driver, 10); wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//input[@id='user_phone']"))); Input Text 959****701 ```
You could also use a wait instead of the "sleep 5", waiting instead for the Login option to appear. This prevents your test having artificial pauses that may not be needed.