Bird
Raised Fist0
Selenium Javatesting~10 mins

First Selenium Java test - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to open a Chrome browser using Selenium WebDriver.

Selenium Java
WebDriver driver = new [1]();
Drag options to blanks, or click blank then click option'
AFirefoxDriver
BChromeDriver
CSafariDriver
DEdgeDriver
Attempts:
3 left
💡 Hint
Common Mistakes
Using FirefoxDriver when ChromeDriver is needed.
Forgetting to instantiate the driver.
2fill in blank
medium

Complete the code to navigate to the URL 'https://example.com'.

Selenium Java
driver.[1]("https://example.com");
Drag options to blanks, or click blank then click option'
Aopen
Bnavigate
Cget
Dvisit
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'navigate' directly instead of 'get'.
Using non-existent methods like 'open' or 'visit'.
3fill in blank
hard

Fix the error in the code to find an element by its ID 'submitBtn'.

Selenium Java
WebElement button = driver.findElement(By.[1]("submitBtn"));
Drag options to blanks, or click blank then click option'
Aid
Bname
CclassName
DtagName
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'name' or 'className' instead of 'id'.
Using 'tagName' which looks for HTML tags.
4fill in blank
hard

Fill both blanks to click a button with ID 'loginBtn' and then close the browser.

Selenium Java
driver.findElement(By.[1]("loginBtn")).[2]();
Drag options to blanks, or click blank then click option'
Aid
Bclick
Csubmit
Dclose
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'submit' instead of 'click' to press the button.
Using 'close' on the element instead of the driver.
5fill in blank
hard

Fill the blanks to assert the page title is 'Welcome Page' using JUnit.

Selenium Java
String title = driver.getTitle();
[1]("[2]", title);
Drag options to blanks, or click blank then click option'
AassertTrue
BassertEquals
CWelcome Page
DassertFalse
Attempts:
3 left
💡 Hint
Common Mistakes
Using assertTrue or assertFalse instead of assertEquals.
Mixing up expected and actual values.

Practice

(1/5)
1. What is the main purpose of a Selenium Java test?
easy
A. To write Java programs unrelated to browsers
B. To automate browser actions like opening a page and checking content
C. To manually test software without code
D. To design user interfaces

Solution

  1. Step 1: Understand Selenium's role

    Selenium is used to automate browser actions such as opening pages and clicking buttons.
  2. Step 2: Identify the test goal

    The main goal of a Selenium Java test is to automate browser tasks and verify web page behavior.
  3. Final Answer:

    To automate browser actions like opening a page and checking content -> Option B
  4. Quick Check:

    Selenium test = automate browser [OK]
Hint: Selenium automates browsers, not manual or UI design tasks [OK]
Common Mistakes:
  • Confusing Selenium with manual testing
  • Thinking Selenium is for UI design
  • Assuming Selenium runs non-browser Java code
2. Which of the following is the correct way to start a Chrome browser in Selenium Java?
easy
A. WebDriver driver = new ChromeDriver();
B. ChromeDriver driver = WebDriver();
C. driver = new WebDriver.Chrome();
D. WebDriver driver = ChromeDriver();

Solution

  1. Step 1: Recall Selenium WebDriver syntax

    The correct way is to declare WebDriver interface and instantiate ChromeDriver class.
  2. Step 2: Check each option's syntax

    WebDriver driver = new ChromeDriver(); uses correct Java syntax: WebDriver driver = new ChromeDriver(); others have syntax errors or wrong order.
  3. Final Answer:

    WebDriver driver = new ChromeDriver(); -> Option A
  4. Quick Check:

    Use interface = new implementation() [OK]
Hint: Use WebDriver driver = new ChromeDriver(); to start Chrome [OK]
Common Mistakes:
  • Missing 'new' keyword
  • Wrong constructor call syntax
  • Assigning without type declaration
3. What will be the output of this Selenium Java code snippet?
WebDriver driver = new ChromeDriver();
driver.get("https://example.com");
String title = driver.getTitle();
System.out.println(title);
driver.quit();

Assuming the page title is "Example Domain".
medium
A. Example Domain
B. https://example.com
C. null
D. No output, code throws error

Solution

  1. Step 1: Understand driver.getTitle()

    driver.getTitle() returns the title of the current page, which is "Example Domain" here.
  2. Step 2: Check the print statement

    System.out.println(title) prints the page title to the console.
  3. Final Answer:

    Example Domain -> Option A
  4. Quick Check:

    getTitle() prints page title [OK]
Hint: getTitle() returns page title string [OK]
Common Mistakes:
  • Confusing URL with title
  • Expecting no output
  • Assuming getTitle() returns null
4. Identify the error in this Selenium Java code snippet:
import org.openqa.selenium.By;
WebDriver driver = new ChromeDriver();
driver.get("https://example.com");
WebElement button = driver.findElement(By.id("submit"));
button.click();
driver.close();
medium
A. Missing import for By class
B. findElement should use By.name instead of By.id
C. driver.close() should be driver.quit() to close browser fully
D. button.click() is not valid for WebElement

Solution

  1. Step 1: Understand driver.close() vs driver.quit()

    driver.close() closes current tab, driver.quit() closes entire browser session.
  2. Step 2: Check best practice for test cleanup

    To fully close browser and end session, driver.quit() is preferred after test.
  3. Final Answer:

    driver.close() should be driver.quit() to close browser fully -> Option C
  4. Quick Check:

    Use quit() to close browser fully [OK]
Hint: Use driver.quit() to close browser fully after test [OK]
Common Mistakes:
  • Using driver.close() only closes one tab
  • Confusing By.id and By.name without context
  • Assuming button.click() is invalid
5. You want to write a Selenium Java test that opens a browser, navigates to "https://example.com", verifies the page title is "Example Domain", and then closes the browser. Which code snippet correctly performs this test with assertion?
hard
A. WebDriver driver = new ChromeDriver(); driver.get("https://example.com"); assert driver.getTitle().equals("Example Domain"); driver.quit();
B. WebDriver driver = new ChromeDriver(); driver.get("https://example.com"); if(driver.getTitle() == "Example Domain") { System.out.println("Title matches"); } driver.close();
C. WebDriver driver = new ChromeDriver(); driver.get("https://example.com"); assert driver.getTitle() == "Example Domain"; driver.quit();
D. WebDriver driver = new ChromeDriver(); driver.get("https://example.com"); assertEquals("Example Domain", driver.getTitle()); driver.quit();

Solution

  1. Step 1: Check assertion method correctness

    assertEquals(expected, actual) is the correct JUnit assertion method to compare strings.
  2. Step 2: Verify browser close method

    driver.quit() properly closes the browser after test.
  3. Step 3: Identify errors in other options

    WebDriver driver = new ChromeDriver(); driver.get("https://example.com"); assert driver.getTitle().equals("Example Domain"); driver.quit(); uses plain assert with equals() but is less clear; WebDriver driver = new ChromeDriver(); driver.get("https://example.com"); if(driver.getTitle() == "Example Domain") { System.out.println("Title matches"); } driver.close(); uses == for string comparison (wrong); WebDriver driver = new ChromeDriver(); driver.get("https://example.com"); assert driver.getTitle() == "Example Domain"; driver.quit(); uses == in assert (wrong).
  4. Final Answer:

    assertEquals("Example Domain", driver.getTitle()); with driver.quit() -> Option D
  5. Quick Check:

    Use assertEquals for string check, quit() to close browser [OK]
Hint: Use assertEquals(expected, actual) and driver.quit() [OK]
Common Mistakes:
  • Using == to compare strings
  • Using driver.close() instead of quit()
  • Missing proper assertion method
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