0
votes

I have searched and found many answers to my question but none of them satisfied me. My Question,

  • What actually is the main difference in between Selenium Standalone Server and Selenium WebDriver?
  • Also does Standalone Selenium Server has Selenium WebDriver in it or not ?
  • And If Yes then in the case of running tests on remote machine's browser which Selenium WebDriver will be use? Remote machine's Standalone WebDriver or local machine's WebDriver ?
  • And Also What is the main role of Standalone Selenium WebDriver
2

2 Answers

3
votes

It appears the major difference is the size of the API (server is bigger) and the ability to run RC-style scripts and "remote" Slenium WebDriver scripts, at first glance:

Selenium Server:

The Selenium Server is needed in order to run either Selenium RC style scripts or Remote Selenium WebDriver ones. The 2.x server is a drop-in replacement for the old Selenium RC server and is designed to be backwards compatible with your existing infrastructure.

I induce this includes the API of the WebDriver and would be used to test remote code (see needs assessment).

Selenium WebDriver:

WebDriver is designed in a simpler and more concise programming interface along with addressing some limitations in the Selenium-RC API. WebDriver is a compact Object Oriented API when compared to Selenium1.0

0
votes

Firstly, WebDriver is an API (with many language bindings and full/partial implementations: Java and C#, WebdriverIO, Protractor, Selendroid, Facebook PHP, etc.), also a specification. It is the API that all new Selenium work should be written against, and the only API that is fully supported and maintained.

You can perform tests against a variety of locally-hosted browsers using one of the various WebDriver implementations, without the need for any server running. In many cases that's completely sufficient.

However, if you need to distribute your tests over multiple machines / VMs, or connect to a remote Grid to access different operating systems and devices, then you need to connect to a standalone server (whether hosted by yourself, or by others, e.g. SauceLabs).

Forget about "RC", that's old technology and old terminology.