Interview Questions Selenium Java Coding
Interview Questions Selenium Java Coding
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
select.selectByVisibleText("Option 1");
// Select by value
select.selectByValue("option-2-value");
// Select by index
select.selectByIndex(2);
select.deselectAll();
// ...
driver.quit();
}
2. Q: How do you perform mouse hover actions using Selenium WebDriver?
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
actions.moveToElement(element).perform();
// ...
driver.quit();
}
3. Q: How do you capture screenshots using Selenium WebDriver?
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
driver.quit();
}
4. Q: How do you perform file uploads using Selenium WebDriver?
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.WebElement;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
driver.get("https://example.com");
fileInput.sendKeys(filePath);
// ...
driver.quit();
}
5. Q: How do you handle frames/iframe elements using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
driver.switchTo().frame(0);
driver.switchTo().frame("frame-name");
driver.switchTo().frame(frameElement);
driver.switchTo().defaultContent();
// ...
driver.quit();
}
6. Q: How do you perform scrolling actions using Selenium WebDriver?
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
js.executeScript("window.scrollBy(0, 500)");
js.executeScript("arguments[0].scrollIntoView();", element);
js.executeScript("window.scrollBy(500, 0)");
// ...
driver.quit();
}
7. Q: How do you handle multiple windows/tabs using Selenium WebDriver?
import org.openqa.selenium.WebDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
driver.get("https://example.com");
driver.switchTo().newWindow(WindowType.WINDOW);
if (!windowHandle.equals(mainWindowHandle)) {
driver.switchTo().window(windowHandle);
break;
driver.close();
driver.switchTo().window(mainWindowHandle);
driver.quit();
}
8. Q: How do you perform keyboard actions (e.g., pressing Enter, typing special characters) using
Selenium WebDriver?
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
inputField.sendKeys("Text to type");
inputField.sendKeys(Keys.ENTER);
inputField.sendKeys(Keys.CONTROL, "a");
inputField.sendKeys(Keys.BACK_SPACE);
// ...
driver.quit();
}
9. Q: How do you handle JavaScript alerts, confirmations, and prompts using Selenium WebDriver?
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
driver.get("https://example.com");
driver.findElement(By.id("alert-button")).click();
alert.accept();
// alert.dismiss();
// ...
driver.quit();
}
10. Q: How do you handle synchronization/wait conditions in Selenium WebDriver?
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// Navigate to a webpage
driver.get("https:
//example.com");
WebElement element =
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("element-id")));
// ...
driver.quit();
}
11. Q: How do you handle checkboxes and radio buttons using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
if (!checkbox.isSelected()) {
checkbox.click();
if (!radioButton.isSelected()) {
radioButton.click();
// ...
driver.quit();
}
12. Q: How do you handle pop-up windows and child windows using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
driver.get("https://example.com");
driver.findElement(By.id("new-window-button")).click();
driver.switchTo().window(windowHandle);
if (driver.getTitle().equals("New Window")) {
break;
driver.close();
driver.switchTo().window(mainWindowHandle);
driver.quit();
}
13. Q: How do you handle cookies using Selenium WebDriver?
import org.openqa.selenium.Cookie;
import org.openqa.selenium.WebDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// Navigate to a webpage
driver.get("https:
//example.com");
// Add a cookie
driver.manage().addCookie(cookie);
// Delete a cookie
driver.manage().deleteCookie(cookie);
driver.manage().deleteAllCookies();
// ...
driver.quit();
}
14. Q: How do you handle dynamic elements on a webpage using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// Navigate to a webpage
driver.get("https:
//example.com");
WebElement element =
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("dynamic-element-id")));
// ...
driver.quit();
}
15. Q: How do you handle synchronization issues with Ajax calls using Selenium WebDriver?
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// Navigate to a webpage
driver.get("https:
//example.com");
// ...
driver.quit();
}
16. Q: How do you handle browser notifications using Selenium WebDriver?
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
options.addArguments("--disable-notifications");
// ...
driver.quit();
}
17. Q: How do you handle SSL certificate errors using Selenium WebDriver?
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
options.setAcceptInsecureCerts(true);
// ...
driver.quit();
}
18. Q: How do you handle geolocation prompts using Selenium WebDriver?
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// ...
driver.quit();
}
19. Q: How do you handle file downloads using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
options.addArguments("--download.default_directory=/path/to/download/directory");
downloadButton.click();
// ...
driver.quit();
}
20. Q: How do you handle drag and drop actions using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// Navigate to a webpage
driver.get("https:
//example.com");
// Find the source and target elements for drag and drop
actions.dragAndDrop(sourceElement, targetElement).build().perform();
// ...
driver.quit();
}
21. Q: How do you handle dynamic dropdowns and select options using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
driver.get("https:
//example.com");
select.selectByVisibleText("Option 1");
select.selectByValue("option1");
select.selectByIndex(0);
// ...
driver.quit();
}
22. Q: How do you launch a browser using Selenium WebDriver in Java?
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
```
public class BrowserLaunch {
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// ...
driver.quit();
}
23. Q: How do you locate web elements using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
```
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// Find element by ID
WebElement elementByXPath =
driver.findElement(By.xpath("//tagname[@attribute='value']"));
WebElement elementByCssSelector =
driver.findElement(By.cssSelector("tagname[attribute='value']"));
// ...
driver.quit();
}
24. Q: How do you perform actions on web elements using Selenium WebDriver?
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
element.click();
element.sendKeys("Text to type");
element.clear();
// ...
driver.quit();
}
25. Q: How do you handle alerts using Selenium WebDriver?
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
driver.get("https://example.com");
driver.findElement(By.id("alert-button")).click();
alert.accept();
// alert.dismiss();
driver.quit();