关于.net:在Windows上使用c#自动化Safari Web浏览器

关于.net:在Windows上使用c#自动化Safari Web浏览器

Automate Safari web browser using c# on Windows

我想知道是否有人成功管理或知道如何在Windows平台上自动化Safari Web浏览器。

理想情况下,我想以与将mshtml用于Internet Explorer相似的方式来自动化Safari。如果没有一种将JavaScript注入正在运行的进程中的方法,也可以。我使用JavaScript注入方法通过jssh插件自动执行Firefox。

我希望使用.Net来自动化浏览器,以增强现有的自动化框架WatiN

编辑:虽然我认为硒在某些情况下可能是自动化Safari的绝佳选择,但我想使用不需要在服务器上安装软件的解决方案,例如在Selenium Remote Control的情况下在Selenium Core或中间代理服务器上安装软件。

更新:2009年3月23日:
虽然我还没有找到一种自动执行Safari的方法,但是我已经找到了一种在Chrome浏览器中自动执行Webkit的方法。如果您使用--remote-shell-port = 9999命令行开关运行Chrome(请参阅:http://www.ericdlarson.com/misc/chrome_command_line_flags.html),则可以将javascript发送到浏览器。

一旦连接到远程调试平台

  • 发送debug()附加到当前选项卡
  • 使用print发送任何JavaScript命令,即print document.window.location.href

我们已经使用这种方法将Chrome支持添加到WatiN


您可以在此处查看我的帖子,其中我使用上述方法在C#中自动执行Chrome浏览器

http://markcz.wordpress.com/2012/02/18/automating-chrome-browser-from-csharp/

马丁


我不确定这是否有帮助,但ArtOfTest的人员已将Safari支持添加到基于.Net的自动化框架WebAii中。 也许您可以弄清楚他们在做什么。


在此处的WatiN http://watinandmore.blogspot.com/2010/01/browserattachto-and-iattachto.html可以使IE和FF自动化。 它是开源的,因此您可以查看他们的操作方式。

也许您可以适应您的需求?


硒对我的兼容性测试非常有用。


推荐阅读