What are the differences between 'Selenium-server-standalone.jar' and 'Selenium Client & WebDriver'? What are the differences between 'Selenium-server-standalone.jar' and 'Selenium Client & WebDriver'? selenium selenium

What are the differences between 'Selenium-server-standalone.jar' and 'Selenium Client & WebDriver'?


I see a bit of confusion here... Regarding "Selenium WebDriver" & "Selenium Server"

Selenium WebDriver 2.0 - helps to write scripts for automating browsers..this package provides us with classes & methods to achieve automation. After writing scripts we can run them on LOCAL MACHINE and see automation ourselves. WebDriver projects were merged with selenium RC to overcome the drawbacks of selenium RC making it selenium WebDriver 2.0

Selenium Server: Now once i have my scripts (as mentioned above),To run scripts on REMOTE MACHINES (Test Beds) and NOT ON LOCAL MACHINE we do it using selenium server. So in short Selenium Webdriver works together with Selenium Server..they co-exist to help and not to replace each other.

I hope this helps


From Selenium WebDriver official Documentation:

WebDriver and the Selenium-Server You may, or may not, need the Selenium Server, depending on how you intend to use Selenium-WebDriver. If your browser and tests will all run on the same machine, and your tests only use the WebDriver API, then you do not need to run the Selenium-Server; WebDriver will run the browser directly.

There are some reasons though to use the Selenium-Server with Selenium-WebDriver.

  • You are using Selenium-Grid to distribute your tests over multiple machines or virtual machines (VMs).
  • You want to connect to a remote machine that has a particular browser version that is not on your current machine.
  • You are not using the Java bindings (i.e. Python, C#, or Ruby) and would like to use HtmlUnit Driver

References:

  1. http://www.seleniumhq.org/docs/03_webdriver.jsp#webdriver-and-the-selenium-server


Selenium-server-standalone.jar is used for executing tests through Selenium Grid for distributing the test in multiple nodes and browsers.

Selenium Web Driver is used for executing in one machine in one browser at a time.