Skip to content

yml chrome install job #47

yml chrome install job

yml chrome install job #47

Workflow file for this run

name: E2E Tests
on:
push:
branches:
- units_piatachenko
pull_request:
branches:
- sumdu.edu.ua
- units_piatachenko
jobs:
e2e-tests:
runs-on: ubuntu-latest # Use Linux environment
steps:
# Step 1: Checkout the code
- name: Checkout code
uses: actions/checkout@v3
# Step 2: Set up Java 19
- name: Set up Java 19
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '19'
# Step 3: Install Chrome and necessary libraries
- name: Install Chrome
run: |
sudo apt-get update
sudo apt-get install -y google-chrome-stable
sudo apt-get install -y xvfb # Install X virtual framebuffer
# Step 4: Install dependencies without running tests
- name: Install dependencies without tests
run: mvn install -DskipTests
# Step 5: Package the JAR
- name: Package the JAR
run: mvn clean package -DskipTests
# Step 6: Verify JAR file exists
- name: Verify JAR file
run: |
ls -al target/
if [ ! -f target/universe.jar ]; then # Ensure we check for universe.jar
echo "JAR file not found!"
exit 1
fi
# Step 7: Start Javalin Application from the JAR
- name: Start Javalin Application
run: |
java -jar target/universe.jar /home/runner/work/universe/universe/application.properties &
# Step 8: Wait for the application to start
- name: Wait for the application to start
run: sleep 30
# Step 9: Run Cucumber + Selenium tests
- name: Run Cucumber + Selenium tests
run: mvn test
# Step 10: Archive test results
- name: Archive test results
uses: actions/upload-artifact@v3
with:
name: test-results
path: |
target/surefire-reports
results/