在使用Selenium Web驱动程序切换选项卡时出现异常错误。 这是引发错误的代码
var tabs = WebDriver.WindowHandles;
WebDriver.SwitchTo().Window(tabs[tabs.Count - 1]);
此代码只是切换到新打开的标签页。
invalid argument: 'handle' must be a string
(Session info: chrome=75.0.3770.80)
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-
14T08:25:53'
System info: host: 'DESKTOP-9QCDGLU', ip: '10.194.143.155', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_161'
Driver info: driver.version: unknown
传递的值.Window()是一个字符串,但错误表明该参数无效。
答案 0 :(得分:0)
只要您使用与Webdriver打开相同的窗口,就不需要切换。重定向后,您可以尝试再次切换到窗口。
为您保存窗口句柄:
String myWindowHandle = driver.getWindowHandle();
重定向到所需的页面,然后使用窗口句柄调用switchTo:
driver.switchTo().window(myWindowHandle );
您的页面是否包含任何框架?重定向后,您可能还不在正确的帧中。