我需要在IE中实现从一个窗口切换到另一个窗口。但是,元素驱动程序不支持getWindowHandle函数。
我认为它可能只是配置问题或设置,但我不知道如何解决它。
请提出任何建议。
我正在使用c# - Visual Studio
答案 0 :(得分:4)
您还没有说过您正在使用哪种语言绑定,但根据您发布的评论,看起来您正在使用C#。每种语言绑定的方法名称略有不同。来自this answer:
.NET语言绑定中的对象,方法和属性名称 不完全对应于Java绑定中的那些。其中一个 该项目的原则是每种语言绑定都应该“感觉到” 对那些用那种语言编码的人很自然。
因此,如果您尝试复制粘贴Java代码,则必须进行一些翻译。在这种情况下,您需要组合WindowHandles
属性(以查找新窗口句柄)和驱动程序的CurrentWindowHandle
属性。您可以在项目的API documentation for the .NET bindings找到完整的Google code site。
答案 1 :(得分:1)
我会猜测:
尝试按照以下方式初始化您的驱动程序:
WebDriver driver = new FirefoxDriver(); //assume you use firefox
接口WebDriver
支持该方法。不要忘记将把手存放在某处;)
String myWindow = driver.getWindowHandle();
BTW该方法应该返回实际窗口如果您需要所有窗口,您可能应该使用getWindowHandles()
方法
如果这不起作用,请提供更多信息: