Skip to content

E2E Tests

E2E Tests #81

Workflow file for this run

name: E2E Tests
on:
pull_request:
# The branches below must be a subset of the branches above
branches: [ main ]
schedule:
- cron: '00 1 * * *'
workflow_dispatch:
jobs:
GUI_Web:
name: Run GUI Web Tests
runs-on: ubuntu-22.04
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '16'
- name: Install Docker
run: |
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
sudo apt-get update
sudo apt-get install -y docker-ce
- name: Install Docker Compose
run: |
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
- name: Set up Native Selenium Grid
run: docker-compose -f src/main/resources/docker-compose/selenium4.yml up --scale chrome=4 --scale edge=0 --scale firefox=0 -d
- name: Set up Java JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'zulu'
- name: Check running containers
run: docker ps
- name: Run tests on Linux
continue-on-error: true
run: |
mvn test -DexecutionAddress="localhost:4444" -DtargetOperatingSystem="LINUX" -DmaximumPerformanceMode="2" -DtargetBrowserName="GoogleChrome" -DcreateAnimatedGif="true" -DgenerateAllureReportArchive="true"
- name: Upload Allure Report as Pipeline Artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: Linux Desktop Browsers Tests Allure Report
path: "generatedReport_*.zip"
- name: Upload Allure Report HTML as Pipeline Artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: Linux Desktop Browsers Tests Allure Report HTML
path: "allure-report"
- name: Upload Extent Report as Pipeline Artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: Linux Desktop Browsers Tests Extent Report
path: "extent-reports"