public Wrapper SwitchToWindowWithName()
{
try {
//driver.switchTo().window(newstrWindowName);
//Switch to new window opened
foreach(String handler in driver.WindowHandles)
driver.SwitchTo().Window(handler);
}
catch(Exception e) {
reporter.WriteToTestLevelReport("Switch Window", "Switch to new Window ", "Exception occured : " + e.Message, "Fail");
throw (e);
}
return this;
}
public Wrapper SwitchToFrameWithName(String frameName)
{
driver.SwitchTo().Frame(frameName);
return this;
}
上面的代码已在Wrapper中定义,用于处理应用程序中出现的新窗口或框架。上面的代码用于我的一个应用程序时工作正常,但相同的代码不适用于处理新窗口的另一个应用程序。有一个名为"查看结果"的按钮;在我的申请中。在单击查看结果按钮时,将打开一个窗口并单击按钮。目前我的代码点击了"查看结果"按钮,但单击新窗口中的按钮。有关其他信息,请与我们联系。 我添加了2张图片截图。第一个屏幕截图具有"查看结果"突出显示的按钮。第二个屏幕截图是在运行脚本时显示在新窗口上的页面。
答案 0 :(得分:1)
您能否使用窗口在标签之间切换而不是框架? 到目前为止,我的理解是不能使用框架在两个标签之间切换 。使用框架仅适用于同一页面上的元素,例如提醒,弹出窗口等。要执行与屏幕截图相对应的操作,您必须切换窗口强>
public Wrapper SwitchToWindowWithName(String window)
{
driver.SwitchTo().Window(window);
return this;
}