Selenium Docker
Selenium can be run within Docker containers, which provides several advantages, such as isolation, easy scalability, and reproducibility of test environments. Running Selenium tests in Docker involves using Selenium Grid to manage multiple browser nodes within Docker containers. Here are the steps to set up Selenium with Docker:
1. Install Docker:
- Make sure you have Docker installed on your system. You can download and install Docker from the official Docker website (https://www.docker.com/get-started).
2. Create a Docker Compose File:
- Create a Docker Compose file (e.g.,
docker-compose.yml
) to define your Selenium Grid configuration. Below is a simple example:
version: "3"
services:
hub:
image: selenium/hub:latest
container_name: selenium-hub
ports:
- "4444:4444"
chrome:
image: selenium/node-chrome:latest
depends_on:
- hub
environment:
- HUB_HOST=hub
firefox:
image: selenium/node-firefox:latest
depends_on:
- hub
environment:
- HUB_HOST=hub
This Docker Compose file sets up a Selenium Hub and two browser nodes (one for Chrome and one for Firefox).
3. Start Selenium Grid:
- Open a terminal and navigate to the directory containing your Docker Compose file.
- Run the following command to start Selenium Grid:
docker-compose up -d
This command will start the Selenium Hub and the browser nodes in detached mode.
4. Run Your Selenium Tests:
- Write your Selenium tests in your preferred programming language (e.g., Java, Python, C#).
- In your test scripts, specify the URL of the Selenium Hub (http://localhost:4444/wd/hub) as the WebDriver endpoint.
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import java.net.URL;
public class SeleniumDockerExample {
public static void main(String[] args) throws Exception {
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capabilities);
// Your Selenium test code here
driver.quit();
}
}
5. Stop Selenium Grid:
- When you’re finished with your tests, stop Selenium Grid by running the following command in the same directory as your Docker Compose file:
docker-compose down
This will stop and remove the Docker containers.
Running Selenium tests in Docker containers using Selenium Grid makes it easy to scale your tests, run them in parallel, and ensures consistent test environments. It’s particularly useful for continuous integration and continuous delivery (CI/CD) pipelines where you need to automate browser testing in a controlled and isolated manner.
Demo Day 1 Video:
Conclusion:
Unogeeks is the No.1 IT Training Institute for Selenium Training. Anyone Disagree? Please drop in a comment
You can check out our other latest blogs on Selenium here – Selenium Blogs
You can check out our Best In Class Selenium Training Details here – Selenium Training
Follow & Connect with us:
———————————-
For Training inquiries:
Call/Whatsapp: +91 73960 33555
Mail us at: info@unogeeks.com
Our Website ➜ https://unogeeks.com
Follow us:
Instagram: https://www.instagram.com/unogeeks
Facebook:https://www.facebook.com/UnogeeksSoftwareTrainingInstitute
Twitter: https://twitter.com/unogeeks