"Selenium server standalone" jar vs "selenium java" jar

7.7k views Asked by At

I am bit confused here.. "selenium-server-standalone" jar contains all the library files to run script then why do we need to use "selenium-java" jars?

I read somewhere that its used for Language Binding.. if it is true, then please help me to understand the meaning of Language binding as well.

Thanks.

3

There are 3 answers

0
elciospy On

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

http://www.seleniumhq.org/docs/03_webdriver.jsp#how-does-webdriver-drive-the-browser-compared-to-selenium-rc

0
Fazz On

It is mainly use in the Selenium Grid. As we use different OS and browsers with different machines, we need to run it same time for various reason. In selenium Grid, we use the machine Hub and Node(You can go through selenium grid docs for more), so for running the selenium in different machines with the main machine, we need server standalone.

0
k.s. Karthik On

In the previous version of Selenium, which is Selenium RC (Remote Control), it is mandatory that you need to run selenium-server-standalone.jar jar file, which acts like a server. Selenium RC will then use this server to establish a communication channel between browser and the code. Also, this jar file contains all the library functions to be used in our code.

But in later version of Selenium, which is Selenium WebDriver, there is no need to run this jar file, as the WebDriver api will directly communicate with the browser's native language. So, this jar file is replaced with selenium-java.jar jar files

Hope this helps.