Bird
Raised Fist0
Selenium Javatesting~5 mins

Prompt alert text entry in Selenium Java

Choose your learning style10 modes available
Introduction

Prompt alerts ask the user to enter text. Testing this ensures your app handles user input correctly.

When a website asks for your name or email in a popup.
When confirming an action by typing a code in a prompt.
When testing form inputs that appear in alert popups.
When automating user input in popup dialogs during tests.
Syntax
Selenium Java
Alert alert = driver.switchTo().alert();
alert.sendKeys("your text here");
alert.accept();

Use switchTo().alert() to access the prompt alert.

sendKeys() inputs text into the prompt.

Examples
Enter "Hello" into the prompt and click OK.
Selenium Java
Alert alert = driver.switchTo().alert();
alert.sendKeys("Hello");
alert.accept();
Enter "12345" but then cancel the prompt.
Selenium Java
Alert alert = driver.switchTo().alert();
alert.sendKeys("12345");
alert.dismiss();
Sample Program

This test opens a page with a prompt alert, enters text, accepts it, and prints the result message.

Selenium Java
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class PromptAlertTest {
    public static void main(String[] args) throws InterruptedException {
        System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
        WebDriver driver = new ChromeDriver();
        try {
            driver.get("https://the-internet.herokuapp.com/javascript_alerts");
            driver.findElement(By.xpath("//button[text()='Click for JS Prompt']")).click();

            Alert alert = driver.switchTo().alert();
            alert.sendKeys("Selenium Test");
            alert.accept();

            String resultText = driver.findElement(By.id("result")).getText();
            System.out.println(resultText);
        } finally {
            driver.quit();
        }
    }
}
OutputSuccess
Important Notes

Always switch to the alert before interacting with it.

Use accept() to click OK and dismiss() to click Cancel.

Make sure the alert is present before switching to avoid errors.

Summary

Prompt alerts let users enter text in popups.

Use sendKeys() to input text in Selenium.

Always accept or dismiss the alert to continue the test.

Practice

(1/5)
1. What is the main purpose of a prompt alert in Selenium testing?
easy
A. To allow the user to enter text in a popup window
B. To display a message without user input
C. To confirm an action with OK or Cancel buttons only
D. To automatically close the browser window

Solution

  1. Step 1: Understand what a prompt alert is

    A prompt alert is a popup that asks the user to enter some text.
  2. Step 2: Compare with other alert types

    Unlike simple alerts or confirmation alerts, prompt alerts allow text input.
  3. Final Answer:

    To allow the user to enter text in a popup window -> Option A
  4. Quick Check:

    Prompt alert = text input popup [OK]
Hint: Prompt alerts let users type text in popups [OK]
Common Mistakes:
  • Confusing prompt alerts with simple alerts
  • Thinking prompt alerts only show messages
  • Assuming prompt alerts cannot accept input
2. Which Selenium Java method is used to enter text into a prompt alert?
easy
A. alert.sendKeys("text")
B. alert.enterText("text")
C. alert.type("text")
D. alert.setText("text")

Solution

  1. Step 1: Recall Selenium Alert interface methods

    The Alert interface provides sendKeys() to input text into prompt alerts.
  2. Step 2: Verify method names

    Only sendKeys() is the correct method; others do not exist in Selenium Alert API.
  3. Final Answer:

    alert.sendKeys("text") -> Option A
  4. Quick Check:

    Use sendKeys() to input text [OK]
Hint: Use sendKeys() to type text in prompt alerts [OK]
Common Mistakes:
  • Using non-existent methods like enterText()
  • Trying to use setText() which is not in Alert API
  • Confusing sendKeys() with WebElement methods
3. What will happen if you run this Selenium Java code snippet?
Alert alert = driver.switchTo().alert();
alert.sendKeys("hello");
alert.accept();
medium
A. A NoAlertPresentException will be thrown
B. The prompt alert will receive 'hello' and then close by accepting
C. The alert will close without entering text
D. The alert will dismiss without accepting

Solution

  1. Step 1: Analyze alert switching and text entry

    The code switches to the alert, sends text 'hello' to the prompt alert.
  2. Step 2: Understand alert acceptance

    Calling accept() closes the alert by clicking OK, confirming the input.
  3. Final Answer:

    The prompt alert will receive 'hello' and then close by accepting -> Option B
  4. Quick Check:

    sendKeys + accept = input text and confirm [OK]
Hint: sendKeys + accept inputs text and confirms prompt [OK]
Common Mistakes:
  • Assuming alert closes without text input
  • Expecting dismiss() to be called instead of accept()
  • Not switching to alert before sendKeys()
4. Identify the error in this Selenium Java code for entering text in a prompt alert:
Alert alert = driver.switchTo().alert();
alert.sendKeys("test");
alert.dismiss();
medium
A. alert variable should be WebElement
B. Missing driver initialization
C. sendKeys() cannot be used on alerts
D. Using dismiss() instead of accept() after sendKeys()

Solution

  1. Step 1: Check alert method usage

    sendKeys() inputs text, but dismiss() cancels the prompt, ignoring input.
  2. Step 2: Correct method to confirm input

    accept() should be used to confirm and submit the entered text.
  3. Final Answer:

    Using dismiss() instead of accept() after sendKeys() -> Option D
  4. Quick Check:

    Use accept() to confirm prompt input [OK]
Hint: Use accept() after sendKeys(), not dismiss() [OK]
Common Mistakes:
  • Calling dismiss() cancels input silently
  • Confusing alert with WebElement
  • Forgetting to switch to alert before sendKeys()
5. You want to test a prompt alert that asks for a username. Which Selenium Java code snippet correctly enters "user123" and confirms the alert?
hard
A. driver.switchTo().alert().sendKeys("user123"); driver.switchTo().alert().accept();
B. Alert alert = driver.switchTo().alert(); alert.dismiss(); alert.sendKeys("user123");
C. Alert alert = driver.switchTo().alert(); alert.sendKeys("user123"); alert.accept();
D. driver.switchTo().alert().accept(); driver.switchTo().alert().sendKeys("user123");

Solution

  1. Step 1: Understand alert handling best practice

    Store the alert in a variable to reuse it for sendKeys() and accept().
  2. Step 2: Check order of operations

    First sendKeys() to enter text, then accept() to confirm and close alert.
  3. Final Answer:

    Alert alert = driver.switchTo().alert(); alert.sendKeys("user123"); alert.accept(); -> Option C
  4. Quick Check:

    Store alert, sendKeys, then accept [OK]
Hint: Assign alert to variable before sendKeys and accept [OK]
Common Mistakes:
  • Calling accept() before sendKeys()
  • Using dismiss() which cancels input
  • Calling switchTo().alert() twice unnecessarily
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