iframes in selenium
Iframes are basically <html> inside of another <html>. Selenium can only focus one thing at a time. Therefore, if we have iframe on the page, we need to SWITCH driver's focus to the inner iframe to be able to perform any action with Selenium. -> There are 3 ways to switch to iframes 1- Locating it (the iframe), just as another webelement. WebElement iframe = driver.findElement(By.locator); driver.switchTo().frame(iframe); --> we pass the webelement of iframe 2- byIndex number of the iframe: driver.switchTo().frame(0); We just need to understand which iframe we need to switch to, then we just pass the index number of it. 3- byId or byName attribute value: driver.switchTo().frame("idValue"); driver.switchTo().frame("nameValue");