簡體   English   中英

如何使用Selenium Firefox WebDriver處理多個彈出窗口

[英]How to handle multiple pop-ups with selenium firefox webdriver

我的情況如下面的SS所示。

多個彈出窗口問題

我正在用selenium(java)測試一些Web應用程序,有一次我同時獲得4個彈出窗口。 我想解雇所有這些人,但實際上我無法得到其中的3個。

我正在搜索如何處理多個彈出窗口,並找到了以下主題: 如何處理硒中的多個警報彈出窗口確認? -但這不是我要尋找的。

第一次driver.switchTo()。alert()返回警報,我可以將其關閉。 但是第二次,它是無效的,不可能打開剩余的彈出窗口。

我還嘗試了使用驅動程序從該主題( https://sqa.stackexchange.com/questions/8416/how-to-switch-handle-close-particular-popup-window-when-multiple-popups-are-ope )進行操作.getWindowHandles(),但它僅返回一個句柄,因此沒有多個窗口可以切換。

因此,我的問題是我無法剩下三個彈出窗口並關閉它們,是否有任何提示或有人遇到相同的問題?

謝謝。

嘗試獲取該彈出窗口的文本,字符串str = driver.switchTo()。alert()。getText(),然后嘗試從第一個彈出窗口切換到另一個彈出窗口

我有一個類似的問題,必須使用autoit而不是硒來解決。 試試看(使用page_title作為彈出窗口的標題,並假設您在Windows計算機上):

from win32com.client import Dispatch
autoit = Dispatch("AutoItX3.Control")

def _window_movement_windows(page_title):
        autoit.WinSetOnTop(page_title, "", 1)
        autoit.WinActivate(page_title, "")
        autoit.WinWaitActive(page_title)

這是安裝和使用AutoIt的方法: 在Python中調用AutoIt函數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM