如何应对;“无响应脚本”;使用watir webdriver控制Firefox的弹出窗口

如何应对;“无响应脚本”;使用watir webdriver控制Firefox的弹出窗口,firefox,selenium,popup,watir-webdriver,Firefox,Selenium,Popup,Watir Webdriver,这个弹出窗口终止了我的许多测试。即使是简单的DOM交互,比如.exists?超时。有没有办法检测到它的出现并予以驳回 Warning: Unresponsive script. A script on this page may be busy, or it may have stopped responding. You can stop the script now, or you can continue to see if the script will complete. dom.

这个弹出窗口终止了我的许多测试。即使是简单的DOM交互,比如.exists?超时。有没有办法检测到它的出现并予以驳回

Warning: Unresponsive script.

A script on this page may be busy, or it may have stopped responding. You can stop the script now, or you can continue to see if the script will complete.
dom.max\u script\u run\u time=999

dom.max\u chrome\u script\u run\u time=19


这些网站既不是我设计的,也不是我影响的。我只是把指令作为客户发送给他们。

我运行了一个小型autoit3应用程序,可以消除弹出窗口。如果我没记错的话,它会稍等片刻,看看弹出窗口是否被处理,然后将其关闭。这消除了我的许多挫折。我还有一个版本,它可以匹配从文件中读取的标题或正文中的某些关键字,从而避免杀死需要保留的内容

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;   AutoIt Version:     3.1.0                                               ;
;   Author:             Dave McNulla                                        ;
;   Script Function:    Close unwanted popups during test automation.       ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


Opt("GUIOnEventMode", 1)  ; Change to OnEvent mode
Opt("WinTextMatchMode", 1)  ;0=best, 1=quick
Opt("WinTitleMatchMode", 2)     ;1=start, 2=subStr, 3=exact, 4=advanced
Opt("TrayIconHide", 0) ;0=show, 1=hide
Opt("TrayMenuMode", 0) ;0=default
TraySetIcon("Shell32.dll", 98)

dim $SleepTime = 2000
dim $Max = 100

$Message = "{ENTER}"
$ButtonClick = "[CLASS:Button; TEXT:OK]"
$Title = "[CLASS:#32770;TITLE:Internet Explorer]"

While 1
    If WinExists($Title) Then
        WinActivate($Title)
        Sleep($SleepTime)
        ControlClick($Title, "", $ButtonClick)
    EndIf
    Sleep($SleepTime)
    If $Max < 1 Then Exit(1)
WEnd
【代码】;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; AutoIt版本:3.1.0; ; 作者:戴夫·麦克努拉; ; 脚本功能:在测试自动化过程中关闭不需要的弹出窗口; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 选择(“GUIOnEventMode”,1);更改为OneEvent模式 Opt(“WinTextMatchMode”,1);0=最佳,1=快速 选择(“WinTitleMatchMode”,2);1=开始,2=次级,3=精确,4=高级 选择(“TrayIconHide”,0);0=显示,1=隐藏 Opt(“TrayMenuMode”,0);0=默认值 Traysetticon(“Shell32.dll”,98) dim$SleepTime=2000 尺寸$Max=100 $Message=“{ENTER}” $ButtonClick=“[CLASS:Button;TEXT:OK]” $Title=“[CLASS:#32770;Title:Internet Explorer]” 而1 如果WinExists($Title)那么 WinActivate($Title) 睡眠(睡眠时间) 控件单击($Title,“,$button单击) 恩迪夫 睡眠(睡眠时间) 如果$Max<1,则退出(1) 温德
我运行了一个小型autoit3应用程序,它可以关闭弹出窗口。如果我没记错的话,它会稍等片刻,看看弹出窗口是否被处理,然后将其关闭。这消除了我的许多挫折。我还有一个版本,它可以匹配从文件中读取的标题或正文中的某些关键字,从而避免杀死需要保留的内容

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;   AutoIt Version:     3.1.0                                               ;
;   Author:             Dave McNulla                                        ;
;   Script Function:    Close unwanted popups during test automation.       ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


Opt("GUIOnEventMode", 1)  ; Change to OnEvent mode
Opt("WinTextMatchMode", 1)  ;0=best, 1=quick
Opt("WinTitleMatchMode", 2)     ;1=start, 2=subStr, 3=exact, 4=advanced
Opt("TrayIconHide", 0) ;0=show, 1=hide
Opt("TrayMenuMode", 0) ;0=default
TraySetIcon("Shell32.dll", 98)

dim $SleepTime = 2000
dim $Max = 100

$Message = "{ENTER}"
$ButtonClick = "[CLASS:Button; TEXT:OK]"
$Title = "[CLASS:#32770;TITLE:Internet Explorer]"

While 1
    If WinExists($Title) Then
        WinActivate($Title)
        Sleep($SleepTime)
        ControlClick($Title, "", $ButtonClick)
    EndIf
    Sleep($SleepTime)
    If $Max < 1 Then Exit(1)
WEnd
【代码】;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; AutoIt版本:3.1.0; ; 作者:戴夫·麦克努拉; ; 脚本功能:在测试自动化过程中关闭不需要的弹出窗口; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 选择(“GUIOnEventMode”,1);更改为OneEvent模式 Opt(“WinTextMatchMode”,1);0=最佳,1=快速 选择(“WinTitleMatchMode”,2);1=开始,2=次级,3=精确,4=高级 选择(“TrayIconHide”,0);0=显示,1=隐藏 Opt(“TrayMenuMode”,0);0=默认值 Traysetticon(“Shell32.dll”,98) dim$SleepTime=2000 尺寸$Max=100 $Message=“{ENTER}” $ButtonClick=“[CLASS:Button;TEXT:OK]” $Title=“[CLASS:#32770;Title:Internet Explorer]” 而1 如果WinExists($Title)那么 WinActivate($Title) 睡眠(睡眠时间) 控件单击($Title,“,$button单击) 恩迪夫 睡眠(睡眠时间) 如果$Max<1,则退出(1) 温德
+1表示代码。我的Ruby在UbuntuLinux下运行,那里有无数的本地UI自动机,尽管Wine可以支持AutoIt。然而,有时我的网络驾驶作业会被发送到Selenium网格以提高速度,在这种情况下,我甚至不知道哪台PC(或操作系统)将实际运行网络浏览器。顺便说一句,在Windows中,我一直是自动热键的粉丝。AutoIt是否也可以让您编译成.exe?每个平台可能都有一个可以实现的解决方案-这将有助于您的网格解决方案。AutoIt3确实创建可执行文件,而且它们非常小。它救了我好几次。如果你愿意,我可以共享我的dropbox文件夹中的autoit脚本。我发现这个python工具(但我从未使用过python)可以在linux上使用:-我见过Mac OS X的类似工具:-当然还有Windows谢谢-如果你共享dropbox,我会带一个ganderDB。我需要通过电子邮件向你发送“共享”。所以似乎没有提供你的电子邮件地址。很抱歉就像两个陌生人在夜里经过(我指的是DropBox和StackOverflow)+1表示代码。我的Ruby在UbuntuLinux下运行,那里有无数的本地UI自动机,尽管Wine可以支持AutoIt。然而,有时我的网络驾驶作业会被发送到Selenium网格以提高速度,在这种情况下,我甚至不知道哪台PC(或操作系统)将实际运行网络浏览器。顺便说一句,在Windows中,我一直是自动热键的粉丝。AutoIt是否也可以让您编译成.exe?每个平台可能都有一个可以实现的解决方案-这将有助于您的网格解决方案。AutoIt3确实创建可执行文件,而且它们非常小。它救了我好几次。如果你愿意,我可以共享我的dropbox文件夹中的autoit脚本。我发现这个python工具(但我从未使用过python)可以在linux上使用:-我见过Mac OS X的类似工具:-当然还有Windows谢谢-如果你共享dropbox,我会带一个ganderDB。我需要通过电子邮件向你发送“共享”。所以似乎没有提供你的电子邮件地址。很抱歉就像两个陌生人在夜里经过(我指的是DropBox和StackOverflow)