.NET是否有无头浏览器(用于自动Web-UI-Tests)?

时间:2010-01-17 12:34:23

标签: .net automation testing webtest web-testing

是否有适用于.NET的无头浏览器?

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

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

我想在.Net环境中为Web应用程序创建自动UI测试,但不使用Browser-Remoting(Watin,Selenium ...)

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

有哪些选择?你们在做什么?

由于

4 个答案:

答案 0 :(得分: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并亲自试用。

答案 1 :(得分:1)

查看Headless browser for C# (.NET)?disable IE visibility while using WatiN是否符合您的要求(如果是,我可以通过更多详细信息扩展此答案)

答案 2 :(得分:0)

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

  • HtmlUnit with IKVM 即可。这将允许您在.NET中运行HtmlUnit,但我发现转换后的代码本身比HtmlUnit慢得多。
  • Data Extraction SDK。您可以将其换行以滚动您自己的请求处理器,它将处理cookie,表单等等。
  • System.Net.WebRequest。需要最重的提升,但无论如何都是你工作的大部分内容。

您还可以考虑查看 LiquidTest ,但这并不便宜:开发人员许可证起价为2,000美元。如果您想在持续集成服务器上运行它,那么服务器许可证将花费您另外1,000美元。

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

答案 3 :(得分:0)

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