Search code examples
seleniumradio-button

why Radio Button size() showing 0 in Selenium?


WebDriver driver = new FirefoxDriver();
driver.get("http://www.w3schools.com/html/tryit.asp?filename=tryhtml_radio");
List<WebElement> radio_buttons = driver.findElements(By.name("gender"));
System.out.println(radio_buttons.size());

Solution

  • Those elements are inside <iframe id="iframeResult" frameborder="0">. You need to switch to iframe first:

    WebDriver driver = new FirefoxDriver();
    driver.get("http://www.w3schools.com/html/tryit.asp?filename=tryhtml_radio");
    
    WebDriverWait wait = new WebDriverWait(driver,10);
    wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.id("iframeResult")));
    
    List<WebElement> radio_buttons = driver.findElements(By.name("gender"));
    System.out.println(radio_buttons.size());