Software testing has a history dating back to the time when the first software application was developed. The testing was done manually in those days. Later, software development experienced many technical advancements and the applications developed have become capable of handling multiple and more complex functions. At this stage, manual testing proved to be insufficient and ineffective.
Moreover, manual testing needed a huge workforce which in turn enhances the testing cost. When the software market became intensively competitive, the developers were made to look into the possibilities of cutting the cost. All these needs resulted in the invention of test automation tools for automating software tests.
Out of the many test automation tools, Selenium became more popular within a short span of time leaving all its competitors far behind. Selenium is a test automation tool which consists of many components and Selenium webdriver is the latest component added to Selenium.
What is Selenium Webdriver?
Selenium webdriver is the latest addition to the Selenium test suite and hence it has many advanced features. It is said to be more advanced and sophisticated replacement for Selenium RC. Selenium webdriver supports many browsers including headless HTMLunit browser and it supports multiple programming languages. It works on different operating systems too. Hence, Selenium webdriver can be used by people who are familiar with different browsers, programming languages and platforms. Selenium webdriver communicates directly with the browser instant and there is no need of a server. Hence, testing can be executed faster than in Selenium RC.
Comparison with Selenium RC
In the earlier versions of Selenium, it was Selenium Remote Control that was used to execute tests. Selenium webdriver just like Selenium RC is also compatible with multiple browsers and operating systems. Selenium RC also supports multiple programming languages. However, there are several differences between the two and they are as follows
- Selenium webdriver is more user-friendly than Selenium RC. The architecture of webdriver is simpler than that of RC and hence it is easy to learn and work with.
- Selenium RC needs a server to communicate with the browser whereas webdriver can communicate directly with the browser. This makes the tests faster in Selenium webdriver.
- Selenium webdriver has a more realistic approach towards the elements in the web page under test. Hence, the result will be more accurate.
- HTMLunit browser is supported by Selenium webdriver but not by Selenium RC.
Limitations of Selenium Webdriver
Selenium webdriver can communicate directly with the browser but it works on the operating system level. The method for different operating systems to communicate with different browsers will be different. Hence, when a new browser has been introduced, the selenium team will take a little time to make necessary steps. In other words, Selenium webdriver will not work on new browsers as soon as they are launched but take a bit of time.