1010 workflow_dispatch :
1111
1212jobs :
13-
14- build-test :
13+ build-tests :
1514 name : Build & Unit Tests
1615 runs-on : ubuntu-latest
1716 steps :
4645 -Dsonar.coverage.jacoco.xmlReportPaths=target/site/jacoco/jacoco.xml \
4746 -Dsonar.exclusions=**/*Application.java
4847
49- integration-test :
50- name : Integration Tests
48+ mutation-tests :
49+ name : Mutation Tests
5150 runs-on : ubuntu-latest
51+ needs : build-tests
5252 steps :
5353 - name : Checkout Code
5454 uses : actions/checkout@v3
@@ -67,13 +67,13 @@ jobs:
6767 restore-keys : |
6868 ${{ runner.os }}-m2-
6969
70- - name : Build and run integration tests
70+ - name : Build and run mutation tests
7171 run : |
7272 export MAVEN_OPTS="-Djansi.force=true"
73- mvn -B clean verify -DskipUTs=true
73+ mvn -B clean test-compile org.pitest:pitest-maven:mutationCoverage -DwithHistory
7474
75- mutation-test :
76- name : Mutation Tests
75+ integration-tests :
76+ name : Integration Tests
7777 runs-on : ubuntu-latest
7878 steps :
7979 - name : Checkout Code
9393 restore-keys : |
9494 ${{ runner.os }}-m2-
9595
96- - name : Build and run mutation tests
96+ - name : Build and run integration tests
9797 run : |
9898 export MAVEN_OPTS="-Djansi.force=true"
99- mvn -B clean test-compile org.pitest:pitest-maven:mutationCoverage -DwithHistory
99+ mvn -B clean verify -DskipUTs=true
100+
101+ e2e-tests :
102+ name : End-to-End Tests
103+ runs-on : ubuntu-latest
104+ needs : integration-tests
105+ steps :
106+ - name : Checkout Code
107+ uses : actions/checkout@v3
108+
109+ - name : Set Up Docker Compose
110+ run : docker-compose up -d
111+
112+ - name : Wait for Services to be Ready
113+ run : sleep 30
114+
115+ - name : Install Newman
116+ run : npm install -g newman
117+
118+ - name : Run E2E Tests with Newman
119+ run : newman run ./e2e/collection.json
120+
121+ - name : Tear Down Docker Compose
122+ run : docker-compose down
0 commit comments