Finds all radio buttons with name 'gender' and clicks the one with value 'female'.
Selenium Java
List<WebElement> options = driver.findElements(By.name("gender"));
for (WebElement option : options) {
if (option.getAttribute("value").equals("female")) {
option.click();
break;
}
}
Sample Program
This test opens a page with two radio buttons, clicks each one, and checks if the selection updates correctly.
Selenium Java
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class RadioButtonTest {
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
WebDriver driver = new ChromeDriver();
try {
driver.get("https://example.com/radio-form");
WebElement option1 = driver.findElement(By.id("option1"));
WebElement option2 = driver.findElement(By.id("option2"));
// Click first radio button
option1.click();
// Assert option1 is selected
if (!option1.isSelected()) {
System.out.println("Test Failed: option1 should be selected.");
} else {
System.out.println("option1 is selected as expected.");
}
// Click second radio button
option2.click();
// Assert option2 is selected and option1 isnotif (option2.isSelected() && !option1.isSelected()) {
System.out.println("option2 is selected and option1 is not, as expected.");
} else {
System.out.println("Test Failed: Radio button selection did not update correctly.");
}
} finally {
driver.quit();
}
}
}
OutputSuccess
Important Notes
Always wait for the page to load before interacting with radio buttons.
Use clear and unique locators to avoid selecting the wrong element.
Remember only one radio button in a group can be selected at a time.
Summary
Radio buttons let users select one option from many.
Use click() to select and isSelected() to check selection.
Test that selecting one radio button deselects others in the group.
Practice
(1/5)
1. What does the isSelected() method do when used on a radio button element in Selenium?
easy
A. Checks if the radio button is currently selected
B. Clicks the radio button to select it
C. Returns the text label of the radio button
D. Finds the radio button element on the page
Solution
Step 1: Understand the purpose of isSelected()
This method checks the current state of a radio button or checkbox to see if it is selected or not.
Step 2: Differentiate from other methods
click() selects the radio button, but isSelected() only checks selection status without changing it.
Final Answer:
Checks if the radio button is currently selected -> Option A
Quick Check:
isSelected() = Check selection status [OK]
Hint: Remember: isSelected() checks state, click() changes state [OK]
Common Mistakes:
Confusing isSelected() with click()
Expecting isSelected() to select the button
Using getText() to check selection
2. Which of the following is the correct way to select a radio button using Selenium WebDriver in Java?
easy
A. driver.findElement(By.id("option1")).isSelected();
B. driver.findElement(By.id("option1")).sendKeys("select");
C. driver.findElement(By.id("option1")).getText();
D. driver.findElement(By.id("option1")).click();
Solution
Step 1: Identify the method to select a radio button
To select a radio button, you use the click() method on the WebElement.
Step 2: Check other options for correctness
isSelected() only checks selection, getText() returns label text, and sendKeys() is not used for radio buttons.
Final Answer:
driver.findElement(By.id("option1")).click(); -> Option D
Quick Check:
Use click() to select radio button [OK]
Hint: Use click() to select radio buttons, not isSelected() [OK]
Hint: Only one radio button in group is selected at a time [OK]
Common Mistakes:
Assuming both radio buttons can be selected simultaneously
Confusing isSelected() return values
Not understanding radio button group behavior
4. You have the following code to select a radio button:
WebElement radio = driver.findElement(By.name("gender"));
radio.click();
But the test fails because the wrong radio button is selected. What is the likely problem?
medium
A. The findElement method is incorrect; should use findElements
B. The click() method does not work on radio buttons
C. Using By.name returns multiple elements; need to specify which one
D. Radio buttons cannot be selected by Selenium
Solution
Step 1: Analyze locator usage
Using By.name("gender") returns the first matching element, but if multiple radio buttons share the same name, this may select the wrong one.
Step 2: Fix by specifying correct element
To select the intended radio button, use a more specific locator or find all elements and choose the correct one.
Final Answer:
Using By.name returns multiple elements; need to specify which one -> Option C
Quick Check:
Locator must uniquely identify radio button [OK]
Hint: Use unique locators or filter elements to select correct radio button [OK]
Common Mistakes:
Assuming findElement returns all matching elements
Thinking click() doesn't work on radio buttons
Ignoring that multiple radios share the same name attribute
5. You want to write a test to verify that selecting one radio button deselects the others in the same group. Which approach is best to implement this in Selenium Java?
hard
A. Click all radio buttons one by one and assert they are all selected
B. Click one radio button, then assert it is selected and all others are not selected
C. Use sendKeys() to select radio buttons and check their text
D. Check only the first radio button's selection status without clicking
Solution
Step 1: Understand radio button group behavior
Only one radio button in a group can be selected at a time; selecting one deselects others.
Step 2: Write assertions to verify this
Click one radio button, then check that it is selected and all others are not selected to confirm correct behavior.
Final Answer:
Click one radio button, then assert it is selected and all others are not selected -> Option B
Quick Check:
Test selection exclusivity by asserting one selected, others not [OK]
Hint: Assert one selected and others deselected after click [OK]
Common Mistakes:
Expecting multiple radio buttons to be selected simultaneously
Not asserting other buttons are deselected
Using sendKeys() instead of click()
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.