C#WPF Selenium3与Geckofx最新版本

时间:2018-02-12 10:58:53

标签: c# wpf selenium geckofx selenium3

我喜欢做的是:

  1. 在WPF xaml中创建一个这样的网格:< _Grid Name =" gridWeb">
  2. 在此网格中打开GeckoFX45 Firefox浏览器(将创建的Geckofx Window作为Child添加到网格中)
  3. 使用Selenium在我的网格中自动化这个精确的浏览器。
  4. 我对这个问题进行了大量的研究,我找到了一些关于如何解决我的问题的文章,如https://nhabuiduc.wordpress.com/2014/09/18/geckofx-net-webbrowser-setup-and-features/。通过那篇文章,我成功地解决了第1点和第2点,但使用了旧版的Geckofx。

    我已经尝试了很多东西,但没有包含我工具的所有要求。

    有谁知道这是否可能? 如果是,有人知道如何将所有这3个要求与Geckofx 45的实际版本结合起来吗?

1 个答案:

答案 0 :(得分:0)

有什么特别的理由要将此浏览器添加到Selenium IWebDriver吗? (比如为IWebDriver写的很多现有代码?)

如果没有,您只想拥有一个自动浏览器,那么您可以使用GeckoFx API进行更多自动化。

例如:

GeckoWebBrowser Browser => GetBrowserInstanceSomehow();

...
//get element reference 
GeckoInputElement textBox = 
this.Browser.Document.GetElementsByClassName("inputBox").FirstOrDefault() as GeckoInputElement; 

//set value
textBox.Value = "Something";

GeckoHtmlElement btn = this.Browser.Document.GetElementById("submitButton") as GeckoHtmlElement;

//interact
btn.Click();

您可以使用它执行几乎所有操作 - 执行脚本,发送POST请求,覆盖CSS,评估/更改/删除节点,导航,处理导航事件等。