A Web Test Framework for developing regression suites. The test cases can be run locally and in remote server.
- Download the latest docker-compose.yml
from here, a quicker way to download
this is to use below command
curl https://raw.githubusercontent.com/reportportal/reportportal/master/docker-compose.yml -o docker-compose.yml
- Once downloaded, execute the below command to pull the required images and start containers
docker-compose -p reportportal up -d --force-recreate
- Verify login http://localhost:8080/ui/#login with
default\1q2w3e
orsuperadmin\erebus
- Create a blank project and copy and paste the below config in
reportportal.properties
undersrc/test/resources
. See the table below. - Read these great posts written below by Automation Hacks to configure the Report portal. By far, these are the only posts with accurate steps.
Sl.No | Report portal Property Name | Report portal Property Value |
---|---|---|
1 | rp.endpoint | http://localhost:8080 |
2 | rp.api.key | <API_KEY> |
3 | rp.launch | Java launch |
4 | rp.project | web_tests |
- Create a discord account and follow the steps given here to configure a message channel and send the test reports after the test execution.
- Pass your channel's webhook token in the
SauceLabsPortalConstants
class. - Here we will send the Report Portal Launch URL along with test case metrics. So make sure that your report portal is up and running.
- You're ready to execute your tests now. Follow the below section.
- git clone https://github.com/iamcharankumar/web_test_framework.git
- cd web_test_framework
- git pull
- mvn clean test -Dgroups=SAUCE_LABS_SMOKE,SAUCE_LABS_REGRESSION -Dtestng.parallel=methods -DthreadPoolSize=3 -Ddataproviderthreadcount=3
NOTE
- -Drunmode=remote or -Drunmode=local (default value is
local
) - -Dbrowser=chrome or -Drunmode=firefox (default value is
chrome
) - Run the above maven command (no testng.xml required) with the respective groups and thread counts. The screenshot listeners are configured in "pom.xml" under "< property >" tag.
- Run mode value can be 'local' or 'remote'
- You can configure it in the "config.properties" file.
- To run in remote server, follow the below docker setup instructions.
Make sure to have the docker desktop and docker compose installed on your machine.
NOTE: Since I'm running the docker-compose-v3.yml
on Apple Chip, I'm using docker-seleniarm
images.
More on the Docker images for Selenium (ARM/NON-ARM)
read this GitHub's README.
docker ps -a
docker rm -vf $(docker ps -aq)
docker-compose -f docker-compose-v3.yml up --scale chrome=10 -d --force-recreate
curl -X DELETE http://localhost:4444/wd/hub/session/{session_id}