我已經用java testng編寫了一個用於提交表單的selenium代碼。點擊提交按鈕後,頁面導航到謝謝頁面。但在加載之前,謝謝您獲得一個安全警告對話框,其中包含名爲「繼續」和「取消」的選項。如何點擊繼續通過硒控制。沒有辦法獲得繼續按鈕的xpath或id。如何使用Selenium在安全警告對話框中單擊一個選項?
2
A
回答
0
1
曾有同樣的問題,這個工作對Firefox 13和硒2.0
用狙得到窗口信息。 對於Firefox 13的Windows類是MozillaDialogClass WindowName是安全警告。
申報進口
[DllImport("user32.dll")]
public static extern int FindWindow(string className, string windowName);
化妝方法
public static void SetOkButton(string className, string windowName)
{
int handle = FindWindow(className, windowName);
if (handle > 0)
{
if (SetForegroundWindow(handle))
{
SendKeys.SendWait("{ENTER}");
}
}
}
調用該方法
SetOkButton("MozillaDialogClass", "Security Warning");
+0
的SendKeys只是想知道什麼是修復一個鏈接如果你在Mac上運行。 – Rambo7 2014-04-04 22:08:10
1
記得之前出現,否則實際上出現警報之前你的代碼可以執行添加等待。以下代碼正在爲我工作
private void acceptSecurityAlert() {
Wait<WebDriver> wait = new FluentWait<WebDriver>(driver).withTimeout(10, TimeUnit.SECONDS)
.pollingEvery(3, TimeUnit.SECONDS)
.ignoring(NoSuchElementException.class);
Alert alert = wait.until(new Function<WebDriver, Alert>() {
public Alert apply(WebDriver driver) {
try {
return driver.switchTo().alert();
} catch(NoAlertPresentException e) {
return null;
}
}
});
alert.accept();
}
相關問題
- 1. 如何在IE 11中使用Selenium webdriver單擊安全警告窗口?
- 2. Android安全警告對話框
- 3. 在列表首選項中單擊項目時顯示警告對話框-ios
- 4. 如何使用共享首選項保存警告對話框
- 5. 安卓:警告對話框
- 6. QTP腳本不點擊安全警告對話框
- 7. 多個警告對話框
- 8. 如何在Linux中使用Python中的警告對話框?
- 9. 發送擊鍵硒RC按繼續在安全警告對話框
- 10. 製作全屏警告對話框
- 11. 看一個警告對話框
- 12. 在警告對話框
- 13. Rails的安全警告 - 祕密選項
- 14. 如何在單個首選項選擇中使用兩個對話框
- 15. vb.net - 繞過轉換對話框/安全警告
- 16. ShellExecute的ADOBE READER XI安全警告對話框設置
- 17. 日期選取器警告對話框
- 18. 如何從警告對話框
- 19. 如何在Firefox中使用Selenium處理安全警報
- 20. 如何在IE中使用Selenium處理安全警報彈出
- 21. 如何使用對話框替換警告框?
- 22. Java/SeleniumWebDriver - 使用Selenium點擊一個JQuery對話框按鈕
- 23. 如何使用單選按鈕創建警報對話框?
- 24. 自動在證書上點擊是安全警告和Windows安全警告
- 25. 如何確認一個警告框,單選按鈕選擇
- 26. 如何使用watin在警報對話框中單擊確定按鈕?
- 27. jqGrid警告對話框
- 28. 警告對話框準備
- 29. Android的警告對話框
- 30. libGDX警告對話框
我通常使用操作系統密鑰發送命令,例如Windows的SendKeys,併發送一個回車鍵或一個Tab鍵,然後按Enter鍵。 我知道這不是一個非常堅實或聰明的答案,但它完成了工作,我花了一些時間嘗試與WatiN和Selenium一起完成工作,但沒有取得多大成功。 – Nashibukasan 2012-04-27 06:20:44
我已經使用這個selenium.KeyPress(「quicksearchtextcriteria」,「13」); 但它不起作用 – bumblebee87 2012-04-27 06:30:04
我在說的是SendKey方法,它不依賴於它只是模擬按鍵在鍵盤上按下的元素。 – Nashibukasan 2012-04-28 07:43:43