{"id":27948591,"url":"https://github.com/cvera08/automationuiseleniumgriddocker","last_synced_at":"2026-04-30T13:33:56.261Z","repository":{"id":152391534,"uuid":"298418800","full_name":"cvera08/AutomationUISeleniumGridDocker","owner":"cvera08","description":"Selenium Grid + Docker","archived":false,"fork":false,"pushed_at":"2023-05-25T13:54:39.000Z","size":15,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-07T14:59:34.648Z","etag":null,"topics":["docker","selenium-grid"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cvera08.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-09-24T23:32:10.000Z","updated_at":"2022-05-11T14:41:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"61630530-8980-4bb8-bc93-b5eaee288916","html_url":"https://github.com/cvera08/AutomationUISeleniumGridDocker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cvera08/AutomationUISeleniumGridDocker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvera08%2FAutomationUISeleniumGridDocker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvera08%2FAutomationUISeleniumGridDocker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvera08%2FAutomationUISeleniumGridDocker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvera08%2FAutomationUISeleniumGridDocker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cvera08","download_url":"https://codeload.github.com/cvera08/AutomationUISeleniumGridDocker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cvera08%2FAutomationUISeleniumGridDocker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32466333,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","selenium-grid"],"created_at":"2025-05-07T14:59:33.212Z","updated_at":"2026-04-30T13:33:56.256Z","avatar_url":"https://github.com/cvera08.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AutomationUISeleniumGridDocker\nThis repository is intended to automate UI tests with multi-browser support using Selenium Grid and Docker\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n\n___\n\n## Requisites:\n\u003cbr/\u003e\n\n##### 1- Install Git locally\nYou can follow one of these links:  \n\nWindows, Linux, Mac:  \nhttps://git-scm.com/book/en/v2/Getting-Started-Installing-Git\n\nHomebrew:  \nhttps://www.atlassian.com/git/tutorials/install-git\n\n\u003cbr/\u003e\n\n##### 2- Install Docker locally (Docker desktop)\nhttps://docs.docker.com/desktop/\n\n\u003cbr/\u003e\n\nOr on a supported Mac, if you have brew already installed, run:\n```sh\nbrew install --cask docker\n```\nThen launch the Docker app. Click next. It will ask for privileged access. Confirm. A whale icon should appear in the top bar. Click it and wait for \"Docker is running\" to appear. You should be able to run docker commands now.\n\nYou can verify your installation with the following command:\n```sh\ndocker --version\n```\nYou should get something like this:\n\u003eDocker version 20.10.14, build a224086\n\n\u003cbr/\u003e\n\n##### 3- Clone this repository:\nOpen the terminal/console and run:\n```sh\ngit clone https://github.com/cvera08/JMeterDocker.git\ncd AutomationUISeleniumGridDocker\n```\n\n---\n\n## Quick start\n\u003cbr/\u003e\n1. Start a Docker container with Firefox\n\n```bash\ndocker run -d -p 4444:4444 -p 7900:7900 --shm-size=\"2g\" selenium/standalone-firefox:4.1.4-20220427\n```\n\n2. Point your WebDriver tests to http://localhost:4444\n\n3. That's it!\n\n:point_up: When executing `docker run` for an image that contains a browser please use\nthe flag `--shm-size=2g` to use the host's shared memory.  \n\n//If your test execution fails or is taking too much time: try to stop the created container from Docker Desktop (UI) and run the above \"docker run ... \" command again\n\n//You can check that is working in three ways: opening the container details/logs, checking from http://localhost:4444/ui that firefox is busy, or seeing your automation results\n\n//Remember to stop selenium/standalone-firefox:4.1.4-20220427 Container if you want to continue further!!\n\n___\n\n# Full Project :point_down:\n\u003cbr/\u003e\n\n___\n\n## Download Images and Run them as a Container:\n\u003cbr/\u003e\n//Remember to stop selenium/standalone-firefox:4.1.4-20220427 container if you followed the previous instructions, you can do it from Docker Desktop UI or by command line: 'docker ps' will provide you the docker name then execute 'docker stop \u003ccontainerName\u003e'\n\n\u003cbr/\u003e\n\nRun this:\n```sh\ndocker-compose -f docker-compose-v2.yml up\n```\nIt will take a while until it finishes, meanwhile in your Docker desktop you may see progress like this:\n\n![alt text](https://i.ibb.co/cxCtt7P/Images-Docker-Desktop.png)\n\n![alt text](https://i.ibb.co/2nsHtVD/Images-Docker-Desktop.png)\n\nIf you click on the Containers option you have a new container up and running:  \n\n![alt text](https://i.ibb.co/09g1TPT/Containers-Docker-Desktop.png)\n\nOnce it is done you can open your favorite browser and go to:\n\n\u003e http://localhost:4444/grid/console\n\n(It can be redirected to http://localhost:4444/ui)\n\nyou will see something like this:\n\n![alt text](https://i.ibb.co/L8GTfyS/Selenium-Grid.png)\n\nyou are ready to go! (run your tests is the last step)\n\n___\n\n## How to run the tests:\n\u003cbr/\u003e\nIf you have some IDE, like IntelliJ or Eclipse just:\n- import the pom.xml file as a maven project, \n- download the mvn dependencies\n- Right-click ReadyToGo.java (src/test/java/ReadyToGo.java), \"Run ReadyToGo\" \u003e\u003e just a single test using Chrome browser\n- or even more tests, Right-click TestNG.xml \u003e\u003e multiple tests using Firefox and Chrome browsers\n\nIf you want to run the tests by command line:\n```sh\nmvn clean test -Dsurefire.suiteXmlFiles=Testng.xml\n```\n\nif you face some failure, try this one:\n\u003e mvn clean test -DsuiteXmlFile=Testng.xml \n\nif it is still not working, try this:\n\u003emvn clean package -DskipTests=true -Dsuite=‘Testng.xml’  \n\nand run the test/s:\n\u003e mvn clean package -Dsuite=‘Testng.xml’ -DPort=9001  \n\n\u003e mvn clean package -Dsuite=‘Testng.xml’ -Dbrowser='chrome'  \n\n//Remember that -DPort=9001 is any parameter if needed, like -Dbrowser=‘chrome’\n\n___\n\n## Visualize the tests in Selenium Grid (web):\n\u003cbr/\u003e\nIn your browser, http://localhost:4444/ui#, you can see as busy the browser you are running at this moment\nfor example:  \n\n![alt text](https://i.ibb.co/dLhN4CJ/Selenium-Grid.png)\n\n___\n\n## Visualize automation tests in real time:\n\u003cbr/\u003e\n\nUsers can connect to the server in two ways:\n\n### Using a VNC client\n\nThe VNC server is listening to the specified ports in 'docker-compose-v2.yml' file, you can use a VNC client and connect to it/them. \n\nFor example: To see the chrome tests you need to open your VNC and hit:\n\u003e 0.0.0.0:6900\n\nIf you get a prompt asking for a password, it is: `secret`.  \n(Edge: 6901, Firefox: 6902)\n\nIf it doesn't work, please re-check the ports in your Docker desktop:\n![alt text](https://i.ibb.co/gmkff7h/Containers-Docker-Desktop.png)\n\n\nHere is an example with the standalone images, the same concept applies to the node images.\n``` bash\n$ docker run -d -p 4444:4444 -p 5900:5900 --shm-size=\"2g\" selenium/standalone-chrome:4.1.4-20220427\n$ docker run -d -p 4445:4444 -p 5901:5900 --shm-size=\"2g\" selenium/standalone-edge:4.1.4-20220427\n$ docker run -d -p 4446:4444 -p 5902:5900 --shm-size=\"2g\" selenium/standalone-firefox:4.1.4-20220427\n```\n\nThen, you would use in your VNC client:\n- Port 5900 to connect to the Chrome container\n- Port 5901 to connect to the Edge container\n- Port 5902 to connect to the Firefox container\n\nIf you get a prompt asking for a password, it is: `secret`. \n\n### Using your browser (no VNC client is needed)\n\nYou can link this repository to [x11vnc](https://github.com/LibVNC/x11vnc) project as a VNC server to allow users to inspect what is happening\ninside the container.\n\nIt uses [noVNC](https://github.com/novnc/noVNC) to allow users inspect visually container activity with\ntheir browser. This might come handy if you cannot install a VNC client on your machine. Port 7900 is used to start\nnoVNC, so you will need to connect to that port with your browser.\n\nHere is an example with the standalone images, the same concept applies to the node images.\n``` bash\n$ docker run -d -p 4444:4444 -p 7900:7900 --shm-size=\"2g\" selenium/standalone-chrome:4.1.4-20220427\n$ docker run -d -p 4445:4444 -p 7901:7900 --shm-size=\"2g\" selenium/standalone-edge:4.1.4-20220427\n$ docker run -d -p 4446:4444 -p 7902:7900 --shm-size=\"2g\" selenium/standalone-firefox:4.1.4-20220427\n```\n\nThen, you would use in your browser:\n- http://localhost:7900/ to connect to the Chrome container\n- http://localhost:7901/ to connect to the Edge container\n- http://localhost:7902/ to connect to the Firefox container\n\nIf you get a prompt asking for a password, it is: `secret`.\n\n___\n\n[comment]: \u003c\u003e (Original idea and Sources: https://github.com/SeleniumHQ/docker-selenium)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcvera08%2Fautomationuiseleniumgriddocker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcvera08%2Fautomationuiseleniumgriddocker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcvera08%2Fautomationuiseleniumgriddocker/lists"}