Bruce Sun
Bruce Sun

Reputation: 661

Selenium vs. WebDriver, any obvious advantages?

I've moved from SeleniumRC to WebDriver for nearly two years. But I have to say that I haven't felt there's any obvious advantages for webdriver over rc. Now I have 200+ test cases with C# driver against a website. But when I run them thoroughly for regression testing, I usually get 150 passed and 50+ failed/errored. After running failed test cases for the second time, many of them passed, only few of them were proven to be issues with the testing code. As I can see it, sometimes WebDriver is really performing slowly, while I never met with such a situation when I was using SeleniumRC before. As a result, I started to doubt the necessity to move from rc to webdriver, because it took much more time for me to verify errors and failures than before.

So my question is, are there any advantages for webdriver over rc to make it worth it to move from rc to webdriver? If so, can you please kindly tell me? Also, tell me about the disadvantages.

Upvotes: 7

Views: 17198

Answers (3)

vanangelov
vanangelov

Reputation: 164

From my experience Selenium RC is the most stable and robust web testing framework I have used. I recently started evaluating WebDriver (aka Selenium 2) for the reason that everybody says it is the future of Selenium. So far I am not impressed. Simple things (like clicking a button) do not work consistently across different browsers and require different workarounds. I realize that there are limitations in what you can do with JavaScript, but I would not want to sacrifice the stability of my tests to get over those limitations.

Upvotes: 2

Petr Janeček
Petr Janeček

Reputation: 38424

What @OCary said.

However, the new and more powerful WebDriver has some limitations, too. Because it is a work-in-progress, it's behaviour between different versions changes slightly from time to time. Also, not nearly all intended features have been implemented yet, it will take some more time to have it stable, bug-free and fully developed. For example: the SafariDriver has just landed, the window controls are missed, you can't download files in a convenient way etc.

But a healthy development on WebDriver is better than today's non-existant development on Selenium 1 (It just won't get any better.), right?

Upvotes: 2

OCary
OCary

Reputation: 3311

Selenium RC injects Javascript into the page to drive the interactions. Webdriver interacts directly with the browser. Injecting additional Javascript has disadvantages, with the Selenium HQ site stating it rather well.

While Selenium was a tremendous tool, it wasn’t without its drawbacks. Because of its Javascript based automation engine and the security limitations browsers apply to Javascript, different things became impossible to do. To make things “worst”, webapps became more and more powerful over time, using all sorts of special features new browsers provide and making this restrictions more and more painful.

http://seleniumhq.org/docs/01_introducing_selenium.html#selenium-history

Another way to think about it is that testing a page that has had more JS added, you're not really testing the original page; you're testing a modified page.

Upvotes: 16

Related Questions