サーチ…


Javaでのセレン

Seleniumを使ってJavaでポップアップアラートを処理する方法は次のとおりです。

ポップアップは3種類あります。

  1. シンプルアラート :アラート(「これは簡単なアラート」)。
  2. 確認アラート :var popuResult = confirm( "OKとキャンセルボタンでポップアップを確認する");
  3. プロンプトの警告 :var person = prompt( "あなたはstackoverflowが好きですか?"、 "はい/いいえ");

ポップアップの種類をテストケースで処理する必要があるのは、そのユーザーだけです。

どちらか

  1. accept()アラートを受け入れる

  2. dismiss()アラートを閉じる

  3. getText()アラートのテキストを取得する

  4. sendKeys()警告にテキストを書き込む

簡単なアラートの場合:

    Alert simpleAlert = driver.switchTo().alert();
    String alertText = simpleAlert.getText();
    System.out.println("Alert text is " + alertText);
    simpleAlert.accept();

確認アラートの場合:

    Alert confirmationAlert = driver.switchTo().alert();
    String alertText = confirmationAlert.getText();
    System.out.println("Alert text is " + alertText);
    confirmationAlert.dismiss();

プロンプト警告の場合:

    Alert promptAlert  = driver.switchTo().alert();
    String alertText = promptAlert .getText();
    System.out.println("Alert text is " + alertText);
    //Send some text to the alert
    promptAlert .sendKeys("Accepting the alert");
    Thread.sleep(4000); //This sleep is not necessary, just for demonstration
    promptAlert .accept();

あなたの必要に応じて。

これを行う別の方法は、コードをtry-catchの中にラップすることです。

try{
   // Your logic here.
} catch(UnhandledAlertException e){
  Alert alert = driver.switchTo().alert();
  alert.accept();
}
// Continue.

C#

C#でSeleniumのポップアップアラートを閉じる方法は次のとおりです。

IAlert alert = driver.SwitchTo().Alert(); 
// Prints text and closes alert
System.out.println(alert.Text);
alert.Accept();
or
alert.Dismiss();

あなたの必要に応じて。

これを行う別の方法は、コードをtry-catchの中にラップすることです。

try{
   // Your logic here.
} catch(UnhandledAlertException e){
  var alert = driver.SwitchTo().Alert();
  alert.Accept();
}
// Continue.

Python

Pythonアラートポップアップに切り替えるには、複数の方法があります。

  1. 推奨されない
alert = driver.switch_to_alert()
  1. switch_toを使用する
alert = driver.switch_to.alert
  1. ExplicitWaitを使う
 from selenium.webdriver.common.by import By
 from selenium.webdriver.support.ui import WebDriverWait
 from selenium.webdriver.support import expected_conditions as EC

 alert = WebDriverWait(driver, TIMEOUT_IN_SECONDS).until(EC.alert_is_present())
  1. Alertクラスのインスタンスを宣言することによって
from selenium.webdriver.common.alert import Alert

alert = Alert(driver)

JavaScript prompt()トリガされた入力フィールドをポップアップで入力するには:

alert.send_keys('Some text to send')

ダイアログポップアップを確認する*:

alert.accept()

却下するには:

alert.dismiss()

テキストをポップアップから取得するには:

alert.text

* PS alert.dismiss()は、 JavaScript alert()alert.confirm()によってトリガーされたポップアップを確認するために使用できます。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow