First look at Selenium brought to WatiN

I have heard and read a lot of good and review about Selenium web testing tool. And it was the time to try it. My impression is very good of it. I liked to write tests as a table. This is quick and easy way. I enjoyed it. The framework and architecture seems to be very extensible and written JavaScript that is promised to support lots of browsers.

Just a sample of test written in HTML:

This is random comment
type q Selenium
clickAndWait btnG
verifyTextPresent Selenium

I love this. The Selenium IDE even more simplifies the task of writing tests with hints about available commands and parameters. This is really cool.

But... What are my requirements for now? Basically I just need to crawl the site to verify every thing is working fine. So even plain Request/Response would do the task for me. Keeping in mind that later I will definitely need something more (has somebody said the requirements should never change??) I did not go the plain Request/Response way (like already closed project - NUnitASP).

I went WatiN way :) This project is comparably new and it come with IE 6, 7 support only. In the Feb 2008 it should support Firefox also.

The reasons why I have chosen WatiN:

  1. I believe in its success.
  2. Full user simulation.
  3. No additional server maintenance (comparing to Selenium).
  4. It is native .NET implementation (that is based on COM Interop :-))
  5. Very nice syntax to write tests.
  6. It has recorder (honestly, not impressed of it).
  7. Write tests in Excel using Wax. (Haven't tried it yet).
  8. Looking forward for Firefox support.

The reason (ONE) why I did not went Selenium way:

  1. It requires keeping all tests on the server. It is not good for me because:
    1. I don't like to fight with caching every time I change one line in HTML-test.
    2. Keeping tests on the production server exposes security issues.
    3. Keeping tests on the server requires (small) maintenance efforts.

As far as I can see these 2 tools are very good ones, but choose one with accuracy... Or maybe use both.

Happy testing!