在 IE11 32 位 C# 中识别弹出窗口 window Selenium
Identify popup window Selenium in IE11 32 bit C#
我无法识别用于处理它的弹出窗口。这是我试过的:
string dialog4;
string dialog5;
try
{
IAlert alert = driver.SwitchTo().Alert();
dialog4 = alert.Text;
alert.Accept();
dialog5 = "nothing alert";
}
catch (NoAlertPresentException f)
{
try
{
dialog4 = driver.SwitchTo().Frame(0).Title;// "dialog4";//
dialog5 = driver.SwitchTo().Frame(1).Title;// "dialog5";//
}
catch (NoSuchFrameException e)
{
try
{
dialog4 = driver.SwitchTo().Window("iHTKK").Title;
dialog5 = "nothing window";
}
catch
{
dialog4 = "nothing 4";
dialog5 = "nothing 5";
}
}
}
- 单击红色突出显示的按钮后,代码等待 10 秒,网络驱动器等待 30 秒,以确保弹出窗口有时间被捕获。
- 和代码 return "nothing 4" 和 "nothing 5".
- xPath 在这个项目中工作得不是很好,我不知道为什么,但我之前尝试过不同的元素,但 xPath 不工作。
- 除非我响应这个弹出窗口,否则我无法打开 F12。我可以在这个弹出窗口存在之前和之后打开它。
- 我也试过找
在网站(所有 HTML 和 .js 文件)中使用调试器和 Dom 资源管理器选项卡中的开发人员工具 (F12) 中的搜索功能在弹出框中获取信息。
什么都没找到。这不是我的网站。
- 我附上了带有 Window 间谍的屏幕截图(AutoHotkey 附带的实用程序帮助识别 windows)。弹出窗口是由进程调用 "jp2lancher.exe" 创建的。我的 Java 版本是 8.x 32 位,如果有的话。虽然弹出窗口似乎来自不同的进程,但在我响应该弹出窗口之前我无法与 IE 交互。但是,我可以通过任务栏中的 "Close all windows" 操作关闭它,弹出窗口仍然存在。
我还能做些什么来识别这个弹出窗口?
经过测试,确认 Window 间谍工具是识别 browser/driver 是否生成弹出窗口的好方法。在ahk_exe
行,会说window是运行哪个可执行文件。在我的例子中,弹出窗口确实是一个从网站加载的 Java 插件,在我的计算机上 运行。我终于使用 AutoIt 来处理 window。如果有人使用 AutoIt,请记住它是一种不同的语言,所有操作都必须以其格式启动。
我无法识别用于处理它的弹出窗口。这是我试过的:
string dialog4;
string dialog5;
try
{
IAlert alert = driver.SwitchTo().Alert();
dialog4 = alert.Text;
alert.Accept();
dialog5 = "nothing alert";
}
catch (NoAlertPresentException f)
{
try
{
dialog4 = driver.SwitchTo().Frame(0).Title;// "dialog4";//
dialog5 = driver.SwitchTo().Frame(1).Title;// "dialog5";//
}
catch (NoSuchFrameException e)
{
try
{
dialog4 = driver.SwitchTo().Window("iHTKK").Title;
dialog5 = "nothing window";
}
catch
{
dialog4 = "nothing 4";
dialog5 = "nothing 5";
}
}
}
- 单击红色突出显示的按钮后,代码等待 10 秒,网络驱动器等待 30 秒,以确保弹出窗口有时间被捕获。
- 和代码 return "nothing 4" 和 "nothing 5".
- xPath 在这个项目中工作得不是很好,我不知道为什么,但我之前尝试过不同的元素,但 xPath 不工作。
- 除非我响应这个弹出窗口,否则我无法打开 F12。我可以在这个弹出窗口存在之前和之后打开它。
- 我也试过找 在网站(所有 HTML 和 .js 文件)中使用调试器和 Dom 资源管理器选项卡中的开发人员工具 (F12) 中的搜索功能在弹出框中获取信息。 什么都没找到。这不是我的网站。
- 我附上了带有 Window 间谍的屏幕截图(AutoHotkey 附带的实用程序帮助识别 windows)。弹出窗口是由进程调用 "jp2lancher.exe" 创建的。我的 Java 版本是 8.x 32 位,如果有的话。虽然弹出窗口似乎来自不同的进程,但在我响应该弹出窗口之前我无法与 IE 交互。但是,我可以通过任务栏中的 "Close all windows" 操作关闭它,弹出窗口仍然存在。
我还能做些什么来识别这个弹出窗口?
经过测试,确认 Window 间谍工具是识别 browser/driver 是否生成弹出窗口的好方法。在ahk_exe
行,会说window是运行哪个可执行文件。在我的例子中,弹出窗口确实是一个从网站加载的 Java 插件,在我的计算机上 运行。我终于使用 AutoIt 来处理 window。如果有人使用 AutoIt,请记住它是一种不同的语言,所有操作都必须以其格式启动。