8

.NET 有无头浏览器吗?

我正在测试环境中寻找这个。

来自 Java,我正在考虑类似于 HtmlUnit ( http://htmlunit.sourceforge.net/ ) 的东西,它本身就是 Canoo WebTest 或 Celerity 等不同更高级别工具的基础。

我想在 .Net 环境中为 Web 应用程序创建自动化 UI 测试,但不使用浏览器远程处理(Watin,Selenium ...)

如果可能的话,我想坚持使用 .Net 解决方案并避免使用 Java 或 Ruby 工具。

有什么选择?你们在干什么?

谢谢

4

4 回答 4

1

您可能想查看 Visual Studio 2010 的新 Web 测试功能:

http://channel9.msdn.com/posts/VisualStudio/New-Web-Test-Debugging-Features-in-Visual-Studio-Team-System-2010/

您可以免费下载 VS2010 的 Beta 2 并亲自试用。

于 2010-01-17T13:32:24.250 回答
1

看看是否适用于 C# (.NET) 的无头浏览器?在使用 WatiN 时禁用 IE 可见性是您要寻找的(如果是这样,我可以用更多细节扩展这个答案)

于 2014-12-15T06:20:30.977 回答
0

如果您坚持使用纯 .Net 解决方案,那么您有一些有用的选择,尽管它们都不是很好。

  • 带有 IKVM 的 HtmlUnit。这将允许您在 .NET 中运行 HtmlUnit,但我发现转换后的代码往往比 HtmlUnit 本身要慢得多。
  • 数据提取 SDK。你可以包装它来滚动你自己的请求处理器,它会处理 cookie、表单等。
  • System.Net.WebRequest。需要最繁重的工作,但无论如何都是您将要使用的大部分内容的基础。

您也可以考虑查看LiquidTest,但它并不便宜:开发人员许可证起价为 2,000 美元。而且,如果您想在持续集成服务器上运行它,则需要另外花费 1,000 美元购买服务器许可证。

IMO,虽然 .NET 中的库和语言提供了一些强大的功能,但其支持工具集在某些领域往往不如其他语言的竞争对手。不幸的是,Web 集成测试就是这些领域之一。

于 2010-01-17T12:49:08.233 回答
0

通过浏览器远程处理,我假设您的意思是远程控制第 3 方浏览器。Selenium 为 java 浏览器 htmlUnit 提供了一个驱动程序,它是一个无头浏览器(无 GUI)。 http://seleniumhq.org/docs/03_webdriver.html#htmlunit-driver

于 2012-12-04T01:27:08.863 回答