/SeleniumDockerAws

Selenium WebDriver with Docker, Jenkins & AWS

Primary LanguageJava

WebDriverDockerAws

Selenium WebDriver with Docker, Jenkins & AWS

Useful Docker Commands

docker pull image: pulls an image from DockerHub
docker image: show all images in our machine
docker ps: show all running containers
docker ps -a: show all containers including stopped containers
docker run image: creates a container from an image
docker stop container id/container name: stop running container
docker system prune -f: remove all stopped containers
docker system prune -a: remove all stopped containers + unused

Create Selenium Grid Environment

First
docker pull selenium/hub:3.14
docker pull selenium/node-firefox:3.14
docker pull selenium/node-chrome:3.14

Second
Create docker compose file
docker-compose up or docker-compose up-d docker-compose up --scale chrome=3 --scale firefox=3 (scaling)

Zalenium
docker pull elgalu/selenium
docker pull dosel/zalenium
docker run --rm -ti --name zalenium -p 4444:4444 ^
-v /var/run/docker.sock:/var/run/docker.sock ^
-v /c/Users/your_user_name/temp/videos:/home/seluser/videos ^
--privileged dosel/zalenium start
docker stop zalenium

Create Jar
mvn clean package -DskipTests

Run Test
java -cp selenium-docker.jar;selenium-docker-tests.jar;libs/* org.testng.TestNG ../search-module.xml
java -cp selenium-docker.jar;selenium-docker-tests.jar;libs/* -DBROWSER=firefox org.testng.TestNG ../search-module.xml

Create Docker File

Create the file
Build the image : docker build -t=userdocker/selenium-docker .

Acess Container
docker run -it --entrypoint=/bin/sh 217306aaaa/selenium-docker

Run Test java -cp selenium-docker.jar:selenium-docker-tests.jar:libs/* -DHUB_HOST=192.168.0.139 org.test.TestNG search-module.xml

Run Test By Creating a Container
docker run -e HUB_HOST=192.168.0.139 -e MODULE=search-module.xml 217306aaaa/selenium-docker

Checking the Hub
curl -s http://localhost:4444/wd/hub/status

Install curl and JQ
apk add curl jq

Build Image
docker build -t="userDocker/selenium-docker" .

##Jenkins

Jenkins Using Docker docker run -p 80:8080 -p 50000:50000 -v "/($pwd)/jenkins:/var/jenkins_home" jenkins/jenkins:lts
or docker run -p 8080:8080 -p 50001:50001 jenkins