2. Which of the following is the correct syntax to switch to an iframe by its name "frame1"?
easy
A. driver.switch_to.frame[name="frame1"]
B. driver.switch_to.frame(frame1)
C. driver.switch_to.frame("frame1")
D. driver.switch_to.frame['frame1']
Solution
Step 1: Recall correct method syntax
The method switch_to.frame() accepts a string name as an argument inside parentheses and quotes.
Step 2: Check each option
driver.switch_to.frame("frame1") uses correct parentheses and quotes. Options A and D use incorrect bracket syntax. driver.switch_to.frame(frame1) misses quotes around the string.
Final Answer:
driver.switch_to.frame("frame1") -> Option C
Quick Check:
Use parentheses and quotes for frame name [OK]
Hint: Use parentheses and quotes for frame name [OK]
Common Mistakes:
Using square brackets instead of parentheses
Forgetting quotes around the frame name
Passing variable without quotes
3. What will happen when the following code runs?
driver.switch_to.frame(0)
element = driver.find_element(By.ID, "submit")
print(element.text)
medium
A. It will raise NoSuchElementException because the element is outside the iframe.
B. It will print the text of the element with ID 'submit' inside the first iframe.
C. It will raise a SyntaxError due to wrong frame index.
D. It will print nothing because the iframe is empty.
Solution
Step 1: Understand frame switching by index
Using switch_to.frame(0) switches focus to the first iframe on the page (index 0).
Step 2: Locate element inside iframe
Finding element by ID 'submit' inside this iframe will succeed if it exists there, and printing its text will output the element's text content.
Final Answer:
It will print the text of the element with ID 'submit' inside the first iframe. -> Option B
Quick Check:
switch_to.frame(0) focuses first iframe, element found inside [OK]
Hint: Index 0 means first iframe, then find element inside [OK]
Common Mistakes:
Assuming element is outside iframe without switching
Thinking frame index starts at 1
Confusing SyntaxError with runtime errors
4. Identify the error in this code snippet:
driver.switch_to.frame("frame2")
element = driver.find_element(By.ID, "button")
driver.switch_to.frame("frame3")
print(element.text)
medium
A. The print statement should be before switching frames.
B. You cannot switch to a second iframe without switching back to default content first.
C. The frame names must be integers, not strings.
D. The element variable is not updated after switching to the second iframe.
Solution
Step 1: Analyze frame switching and element locating
The element is found inside "frame2" and stored in variable element.
Step 2: Switching to another frame without updating element
After switching to "frame3", the element still points to the old frame's element, which may cause stale reference or incorrect data.
Final Answer:
The element variable is not updated after switching to the second iframe. -> Option D
Quick Check:
Element must be found after switching to correct frame [OK]
Hint: Find elements after switching to correct iframe [OK]
Common Mistakes:
Assuming you must switch back to default before switching frames
Thinking frame names must be integers
Ignoring element reference update after frame switch
5. You have nested iframes: an outer iframe named "outerFrame" and inside it an inner iframe with index 0. How do you switch to the inner iframe to access its elements?
hard
A. driver.switch_to.frame("outerFrame") followed by driver.switch_to.frame(0)
B. driver.switch_to.frame(0) followed by driver.switch_to.frame("outerFrame")
C. driver.switch_to.frame("outerFrame") only
D. driver.switch_to.default_content() then driver.switch_to.frame(0)
Solution
Step 1: Switch to the outer iframe by name
First, use driver.switch_to.frame("outerFrame") to focus inside the outer iframe.
Step 2: Switch to the inner iframe by index
Then, use driver.switch_to.frame(0) to focus inside the first iframe nested within the outer iframe.
Final Answer:
driver.switch_to.frame("outerFrame") followed by driver.switch_to.frame(0) -> Option A
Quick Check:
Switch outer frame first, then inner frame [OK]
Hint: Switch outer iframe first, then inner iframe by index [OK]
Common Mistakes:
Switching inner frame before outer frame
Forgetting nested switch and switching only once
Using default_content() unnecessarily
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.