嗨,我使用以下代码来处理警告框,点击一个动作,但它不工作
有人可以帮忙
有人可以帮忙
这是我称之为处理程序的地方. clickOnAlert()之后clickOnAddQuote()被叫做alert框出现.
System.out.println("before add to quote"); this.clickOnAddQuote(); System.out.println("before alert"); this.clickOnAlert(); System.out.println("after alert");
功能clickOnAlert()
public void clickOnAlert() { System.out.println("In click"); Alert alert = webdriverSession().switchTo().alert(); System.out.println("after constructor"); alert.accept(); }
请帮忙.
谢谢
解决方法
使用selenium webDriver处理不同的对话框:
import org.openqa.selenium.Alert; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; public class JavaScriptAlertTest { public static void main(String[] args) { WebDriver myTestDriver = new FirefoxDriver(); myTestDriver.get("...blablabla...."); myTestDriver.manage().window().maximize(); myTestDriver.findElement(By.xpath("//input[@value = 'alert']")).click(); Alert javascriptAlert = myTestDriver.switchTo().alert(); System.out.println(javascriptAlert.getText()); // Get text on alert Box javascriptAlert.accept(); System.out.println("*************prompt******************************************"); myTestDriver.findElement(By.xpath("//input[@value = 'prompt']")).click(); Alert javascriptprompt = myTestDriver.switchTo().alert(); javascriptprompt.sendKeys("This is Selenium Training"); System.out.println(javascriptprompt.getText()); // Get text on alert Box javascriptprompt.accept(); javascriptprompt = myTestDriver.switchTo().alert(); System.out.println(javascriptprompt.getText()); // Get text on alert Box javascriptprompt.accept(); myTestDriver.findElement(By.xpath("//input[@value = 'prompt']")).click(); javascriptprompt = myTestDriver.switchTo().alert(); System.out.println(javascriptprompt.getText()); // Get text on alert Box javascriptprompt.dismiss(); javascriptprompt = myTestDriver.switchTo().alert(); System.out.println(javascriptprompt.getText()); // Get text on alert Box javascriptprompt.accept(); System.out.println("***********************************confirm dialog Box****************************"); myTestDriver.findElement(By.xpath("//input[@value = 'confirm']")).click(); Alert javascriptconfirm = myTestDriver.switchTo().alert(); javascriptconfirm.accept(); javascriptconfirm = myTestDriver.switchTo().alert(); System.out.println(javascriptconfirm.getText()); // Get text on alert Box javascriptconfirm.accept(); myTestDriver.findElement(By.xpath("//input[@value = 'confirm']")).click(); javascriptconfirm = myTestDriver.switchTo().alert(); javascriptconfirm.dismiss(); javascriptconfirm = myTestDriver.switchTo().alert(); System.out.println(javascriptconfirm.getText()); // Get text on alert Box javascriptconfirm.accept(); } }
希望它可以帮助你:)