3

我需要在 IE 中实现从一个窗口切换到另一个窗口。但是,元素驱动程序不支持 getWindowHandle 函数。

我认为这可能只是配置问题或设置,但我不知道如何解决它。

请,任何建议。

我正在使用 c# - Visual Studio

4

2 回答 2

4

您还没有说您正在使用哪种语言绑定,但根据您发布的评论,您似乎正在使用 C#。每种语言绑定的方法名称略有不同。从这个答案

.NET 语言绑定中的对象、方法和属性名称与 Java 绑定中的名称并不完全对应。该项目的一项原则是,每种语言绑定对于那些使用该语言进行舒适编码的人来说应该“感觉自然”。

因此,如果您尝试复制粘贴 Java 代码,则必须进行一些翻译。在这种情况下,您需要WindowHandles属性(以查找新窗口句柄)和CurrentWindowHandle驱动程序属性的组合。您可以在项目的Google 代码站点上找到.NET 绑定的完整 API 文档

于 2013-04-02T13:17:57.540 回答
1

我将做出疯狂的猜测:

尝试像这样初始化您的驱动程序:

 WebDriver driver = new FirefoxDriver(); //assume you use firefox

该接口WebDriver支持该方法。不要忘记将手柄存放在某处;)

String myWindow = driver.getWindowHandle();

顺便说一句,该方法应该返回您实际的窗口如果您需要所有窗口,您可能应该使用getWindowHandles()方法

如果这不起作用,请提供更多信息:

  • 你到底得到了什么错误?
  • 你如何初始化WebDriver?
  • 您使用的是什么版本的硒?|
  • 您使用的是什么类型的驱动程序?
于 2013-04-02T07:04:32.193 回答