Take the 2-minute tour ×
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

I have used WatiN and WebAii but I have limited experience with Selenium. How does Selenium differ from these other tools?

share|improve this question
1  
On the basis of "No X vs Y questions" I'm voting to close. We reached the same conclusion on sqa.stackexchange.com/questions/245/qtp-vs-selenium –  corsiKa May 19 '11 at 23:29
1  
I think that if you were to rephrase the question with a little more flushed out detail of what you are testing, and ask about the benefits of using Selenium that you wouldn't find in WebAii, it would be a much more valid question. –  Lyndon Vrooman May 20 '11 at 0:34
    
Thanks for rephrasing the question –  Lyndon Vrooman May 20 '11 at 0:48
    
Please don't close questions like these. Vote down vapid answers if you like but thoughtful answers to questions like these have the potential to be extremely useful to many people. –  Justin May 20 '11 at 1:06
3  
I rephrased but I don't see how it was necessary. These types of questions are not discouraged on StackOverflow and they provide interesting answers, so why should they be discouraged here? stackoverflow.com/questions/417380/watin-or-selenium –  Trish Khoo May 20 '11 at 11:53
show 2 more comments

2 Answers

Thanks for rephrasing the question.

In this case, I'll describe the differences between Selenium and WatiR/N as those are the two that I'm most familiar with.

The IDE for Selenium is immensely useful for those who are new to programming. It's how I learned my first bit of C#. After a while, it becomes next to useless. The same thing exists for WatiN, the Watin Test Recorder, although I've never actually used it.

If you need to access to more that you can't see on the page, Wat** is the way to go. Need find an element by ANY identifier (I've had to use element width because of lazy developers who wouldn't change anything). Although Selenium is getting better in this regard, I don't think that it's quite there yet.

Cross-browser functionality. Selenium wins this hands down. The browsers for Wat** are somewhat limited while Selenium has been moving to more browsers inclusind mobile browsers.

Ease of Use. Personally, I find WatiN to "just make sense". When I first switched to Selenium, I found the classes to be very confusing. Over time, it's starting becoming more fluid though as I begin to understand it more.

Community Support. WATiR has amazing community support, have a question, it's usually already been asked and documented somewhere. WatiN, let's just say...not so much. Selenium however is the company standard in many organizations and the support for it has been nothing short of amazing.

Hope this helps a little bit.

share|improve this answer
add comment

I've used Watir and a few other tools but the way I see it is that WAT** and some of the other options like that are framework tools, they give you a structure to build around. Selenium is by far a recorder that you can then use that recording in other ways, either export to another language and plug into the framework or if you do need something with a lot of repeatability then its easy to record something small and play it over and over again. Selenium to me allows you to generate quick and easy Unit Tests, which is more of its power in the realm of Free/Open Source tools, rather than a bulky Suite of tools like a Visual Studio which gives you the same function and a whole lot more. Some people record long scripts to play back, but I find those sorts of scenarios useless as they are too fragile, you can make short Units and plug them together in a suite and get more power of the tool.

If you need a free, quick Unit Testable Recorder for short tests that can export to other languages and frameworks, that also can be run in multiple browsers then Selenium is useful. If you need more than that then keep looking for something else.

EDITED to add note:

If you are comfortable coding with Selenium you can do so without using the IDE and just write Selenese in your language of choice. Some people prefer to do it this way, although if you are unfamiliar with the requirements the IDE is a good way to learn, although if you want to do serious testing you will want to extract your scripts into libraries to run your tests later on.

share|improve this answer
2  
The recording part of Selenium is a very small part. Experienced user of selenium don't go near IDE they write everything from scratch in code. Record and play is probably the least useful part of selenium if you are looking at creating robust and reliable regression tests on a dynamic website. –  Ardesco May 20 '11 at 12:41
    
I've done that as well, but there are still a fair number of people I have seen who need a place to start and still use the IDE it's not all about GRID. –  MichaelF May 20 '11 at 14:38
    
I don't personally bother with grid, I find it easier to just get Hudson to kick of tests on various machine. Anyway the point I was making is that Selenium is a lot more than a one trick "record and play" pony which is what you original answer implied. I agree that record and play can be a good place to start, but it really is just a small part of Selenium. –  Ardesco May 21 '11 at 13:32
    
Not really, if you read my answer I say its better to make Unit Tests then pull them into Suites so you get repeatability. Sure you can code tests, but not everyone who Tests is a coder but they can make recorded libraries that can be used as building blocks to something better. –  MichaelF May 22 '11 at 11:58
    
You can't make unit tests with Selenium, if you are testing the GUI you are not testing a unit of code, acceptance tests and integration tests or even end to end tests yes but definetly not unit tests. Unit tests are the developers domain, not the testers. –  Ardesco May 22 '11 at 14:33
show 6 more comments

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.