In this session, we will look into how we can execute our Protractor Test
Case in parallel across different browsers using the selenium grid.
Before moving further let's understand the advantage of the Selenium grid.
รผ It allows us running
multiple tests across different browsers, Operating systems, and machines.
รผ It helps us in
parallel execution of our test.
รผ Since the test case is running in parallel across different browsers and machine it will help us in speeding up our test execution.
รผ Since the test case is running in parallel across different browsers and machine it will help us in speeding up our test execution.
To Setup Grid in our machine we need to follow below steps:
1) Download Selenium
Server standalone Jar from this link. In this blog, I am using 3.12.0 version.
2) Place this Jar file
in some folder on your local machine.
3) Now we need to navigate
to the path where this selenium server standalone file is located and start our Hub
machine by using the below command. (Hub is the master machine will instruct our node
machine to execute our test)
java -jar
selenium-server-standalone-3.12.0.jar -role hub
4) Then we need to
place the exact same version of this JAR on our node or remote machine where we
want to execute our test and execute the below command.
java -Dwebdriver.chrome.driver="Path
of the driver on which we want to execute test" -jar selenium-server-standalone-3.12.0.jar
-role node -hub address of hub machine
5) In the Similar way
we can set up as many as node we require our node machine.
In this blog, I would be only creating and using only one chrome node.
By default, Grid runs on http://localhost:4444
so to validate setup we can click it and validate its console.
Now both our Grid Hub and Node are ready for execution.
To execute our protractor test on the grid now we need to make minor changes
in our conf.js file.
In seleniumAddress we need to provide the path of our node machine and
provide multiCapabilities of all the browser on node machine where we want to
execute our test. Below is my conf.js file
Now if execute our protractor test we would be able to validate that the test is getting executed on the node machine on the specified browser.
How to fix this issue org.openqa.selenium.remote.DesiredCapabilities firefox
ReplyINFO: Using `new FirefoxOptions()` is preferred to `DesiredCapabilities.firefox()`
FAILED: test
org.openqa.selenium.SessionNotCreatedException: Unable to create new service: GeckoDriverService
Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
System info: host: 'device address', ip: 'ip address', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_181'
Driver info: driver.version: unknown
The issue was selenium grid was working perfectly in chrome driver but in firefox and ie its giving unable to create session in both driver please give me the solution for the issue