Bird
Raised Fist0
Selenium Javatesting~20 mins

Select by value, visible text, index in Selenium Java - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Dropdown Selection Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ query_result
intermediate
2:00remaining
What is the selected option's visible text after selecting by value?
Given a dropdown with options:
  • <option value='1'>Apple</option>
  • <option value='2'>Banana</option>
  • <option value='3'>Cherry</option>

What will be the visible text of the selected option after running this code?
WebElement dropdown = driver.findElement(By.id("fruits"));
Select select = new Select(dropdown);
select.selectByValue("2");
String selectedText = select.getFirstSelectedOption().getText();
Selenium Java
WebElement dropdown = driver.findElement(By.id("fruits"));
Select select = new Select(dropdown);
select.selectByValue("2");
String selectedText = select.getFirstSelectedOption().getText();
ABanana
BCherry
C2
DApple
Attempts:
2 left
💡 Hint
Selecting by value picks the option whose value attribute matches the given string.
❓ query_result
intermediate
2:00remaining
What is the selected option's value after selecting by visible text?
Given a dropdown with options:
  • <option value='a'>Red</option>
  • <option value='b'>Green</option>
  • <option value='c'>Blue</option>

What will be the value attribute of the selected option after running this code?
WebElement dropdown = driver.findElement(By.id("colors"));
Select select = new Select(dropdown);
select.selectByVisibleText("Blue");
String selectedValue = select.getFirstSelectedOption().getAttribute("value");
Selenium Java
WebElement dropdown = driver.findElement(By.id("colors"));
Select select = new Select(dropdown);
select.selectByVisibleText("Blue");
String selectedValue = select.getFirstSelectedOption().getAttribute("value");
Ac
Bb
Ca
DBlue
Attempts:
2 left
💡 Hint
Selecting by visible text picks the option whose text matches exactly.
❓ query_result
advanced
2:00remaining
What is the visible text of the selected option after selecting by index?
Given a dropdown with options:
  • <option value='x'>Small</option>
  • <option value='y'>Medium</option>
  • <option value='z'>Large</option>

What will be the visible text of the selected option after running this code?
WebElement dropdown = driver.findElement(By.id("sizes"));
Select select = new Select(dropdown);
select.selectByIndex(0);
String selectedText = select.getFirstSelectedOption().getText();
Selenium Java
WebElement dropdown = driver.findElement(By.id("sizes"));
Select select = new Select(dropdown);
select.selectByIndex(0);
String selectedText = select.getFirstSelectedOption().getText();
ALarge
BMedium
CSmall
D0
Attempts:
2 left
💡 Hint
Index starts at 0 for the first option in the dropdown.
📝 Syntax
advanced
2:00remaining
Which option causes a compile-time error when selecting by visible text?
Which of the following code snippets will cause a compile-time error in Java when trying to select an option by visible text from a dropdown?
Aselect.selectByVisibleText("Option 1");
Bselect.selectByVisibleText("Option1");
Cselect.selectByVisibleText("option1");
Dselect.selectByVisibleText(Option1);
Attempts:
2 left
💡 Hint
Check if the argument is a valid string literal.
🧠 Conceptual
expert
2:00remaining
Why might selectByIndex be less reliable than selectByValue or selectByVisibleText?
Consider a dropdown menu whose options might change order dynamically. Which reason best explains why using selectByIndex to select an option can cause problems compared to selectByValue or selectByVisibleText?
ABecause selectByIndex is slower than selectByValue or selectByVisibleText.
BBecause selectByIndex depends on the position of options, which can change, causing wrong selections.
CBecause selectByIndex only works with numeric visible text, which is rare.
DBecause selectByIndex requires the value attribute to be unique, which is not always true.
Attempts:
2 left
💡 Hint
Think about what changes in the dropdown might affect the index.

Practice

(1/5)
1. In Selenium Java, which method of the Select class allows you to select an option from a dropdown by the exact text shown to the user?
easy
A. selectOptionByText(String text)
B. selectByValue(String value)
C. selectByIndex(int index)
D. selectByVisibleText(String text)

Solution

  1. Step 1: Understand Select class methods

    The Select class provides methods to select dropdown options by different criteria: visible text, value attribute, or index.
  2. Step 2: Identify method for visible text selection

    The method selectByVisibleText(String text) selects the option matching the exact text shown to the user.
  3. Final Answer:

    selectByVisibleText(String text) -> Option D
  4. Quick Check:

    Select by visible text = selectByVisibleText [OK]
Hint: Use selectByVisibleText to pick option by what user sees [OK]
Common Mistakes:
  • Confusing selectByValue with visible text selection
  • Using incorrect method names like selectOptionByText
  • Trying to select by index when text is known
2. Which of the following is the correct syntax to select the third option in a dropdown using Selenium Java's Select class?
easy
A. select.selectByValue(3);
B. select.selectByVisibleText(3);
C. select.selectByIndex(2);
D. select.selectByIndex(3);

Solution

  1. Step 1: Understand index numbering in Select

    Indexing in Select starts at 0, so the third option has index 2.
  2. Step 2: Choose correct method and index

    Using selectByIndex(2) selects the third option correctly.
  3. Final Answer:

    select.selectByIndex(2); -> Option C
  4. Quick Check:

    Index 2 selects third option [OK]
Hint: Remember index starts at 0, so third option is index 2 [OK]
Common Mistakes:
  • Using index 3 for third option (off-by-one error)
  • Passing integer to selectByVisibleText instead of string
  • Using selectByValue with an integer instead of string
3. Given the following dropdown HTML:
<select id="colors">
  <option value="r">Red</option>
  <option value="g">Green</option>
  <option value="b">Blue</option>
</select>

What will be the selected option after executing:
Select select = new Select(driver.findElement(By.id("colors")));
select.selectByValue("g");
medium
A. Green
B. No option selected
C. Blue
D. Red

Solution

  1. Step 1: Identify option with value 'g'

    The option with value attribute "g" is Green.
  2. Step 2: Understand selectByValue behavior

    The method selectByValue("g") selects the option whose value attribute matches "g" exactly.
  3. Final Answer:

    Green -> Option A
  4. Quick Check:

    Select by value 'g' = Green [OK]
Hint: Match the value attribute string exactly to select option [OK]
Common Mistakes:
  • Confusing value attribute with visible text
  • Using selectByVisibleText("g") instead of selectByValue
  • Assuming index 1 selects 'Green' without checking value
4. What is wrong with the following Selenium Java code snippet?
Select select = new Select(driver.findElement(By.id("dropdown")));
select.selectByIndex(5);

Assuming the dropdown has only 4 options indexed 0 to 3.
medium
A. Throws NoSuchElementException because index 5 is out of range
B. Selects the last option automatically
C. No error, selects the 6th option
D. Syntax error due to wrong method usage

Solution

  1. Step 1: Check dropdown option count and index

    The dropdown has 4 options indexed 0 to 3, so index 5 is invalid.
  2. Step 2: Understand selectByIndex behavior on invalid index

    Calling selectByIndex(5) throws NoSuchElementException because the index is out of range.
  3. Final Answer:

    Throws NoSuchElementException because index 5 is out of range -> Option A
  4. Quick Check:

    Invalid index throws exception [OK]
Hint: Check dropdown size before selecting by index to avoid errors [OK]
Common Mistakes:
  • Assuming selectByIndex auto-corrects invalid indexes
  • Thinking it selects last option if index too big
  • Confusing exception type thrown
5. You have a dropdown with options:
<option value="1">Apple</option>
<option value="2">Banana</option>
<option value="3">Cherry</option>
<option value="4">Date</option>

You want to select "Cherry" but only know its position is third in the list. Which code snippet correctly selects "Cherry" using Selenium Java?
hard
A. select.selectByValue("3");
B. All of the above
C. select.selectByVisibleText("Cherry");
D. select.selectByIndex(2);

Solution

  1. Step 1: Understand each selection method

    selectByIndex(2) selects the third option (index starts at 0).
    selectByValue("3") selects option with value "3".
    selectByVisibleText("Cherry") selects option with visible text "Cherry".
  2. Step 2: Confirm all methods select "Cherry"

    All three methods correctly select the "Cherry" option in this dropdown.
  3. Final Answer:

    All of the above -> Option B
  4. Quick Check:

    Index, value, or text all select Cherry [OK]
Hint: Any method works if you know index, value, or visible text [OK]
Common Mistakes:
  • Thinking only one method can select the option
  • Using wrong index (off by one)
  • Confusing value attribute with visible text
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard