문제

Is there a headless browser for .NET?

I am looking for this in a testing context.

Coming from Java I am thinking of something similar to HtmlUnit (http://htmlunit.sourceforge.net/) which itself is the base for different higher level tools like Canoo WebTest or Celerity.

I would like to create automated UI tests for web applications in a .Net environment, but not using Browser-Remoting (Watin, Selenium...)

If possible, I would like to stick to a .Net solution and avoid using Java or Ruby tools.

What are the options? What are you guys doing?

Thanks

도움이 되었습니까?

해결책

If you're adamant about sticking with pure .Net solutions, then you have a few useful options, although none of them are really great.

  • HtmlUnit with IKVM. This will let you run HtmlUnit in .NET, but I've found that the converted code tends to be much slower than HtmlUnit all by itself.
  • Data Extraction SDK. You could wrap this to roll your own request processor, and it'll handle cookies, forms, et cetera.
  • System.Net.WebRequest. Requires the most heavy lifting, but underpins most of what you'd be working with anyway.

You can also consider looking at LiquidTest, but it's not cheap: developer licenses start at $2,000. And if you want to run it on a continuous integration server, that'll cost you another $1,000 for a server license.

IMO, while the libraries and languages in .NET provide some powerful features, the supporting toolset often falls short of competitors in other languages in some areas. Unfortunately, web integration testing is one of those areas.

다른 팁

You might want to check out the new Web Testing features of Visual Studio 2010:

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

You can download Beta 2 of VS2010 for free and try them for yourself.

See if Headless browser for C# (.NET)? and disable IE visibility while using WatiN is what you looking for (if so, I can expand this answer with more details)

By browser remoting I assume you mean remotely controlling a 3rd party browser. Selenium offers a driver for the java browser, htmlUnit, which is a headless browser (no GUI). http://seleniumhq.org/docs/03_webdriver.html#htmlunit-driver

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top