Skip to content

Commit cd0ab5a

Browse files
author
Janne Rönkkö
committed
Add support for parallel E2E tests
1 parent ce0ea87 commit cd0ab5a

2 files changed

Lines changed: 15 additions & 2 deletions

File tree

github-actions/run-ci/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,6 @@ runs:
144144
- name: Run e2e tests
145145
env:
146146
CYPRESS_TESTS_KEPT_IN_MEMORY: "${{ inputs.cypress_tests_kept_in_memory }}"
147-
uses: HSLdevcom/jore4-tools/github-actions/run-cypress-tests@run-cypress-tests-v3
147+
uses: HSLdevcom/jore4-tools/github-actions/run-cypress-tests@split-e2e
148148
with:
149149
test-tags: "${{ inputs.test-tags }}"

github-actions/run-cypress-tests/action.yml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,24 +24,37 @@ runs:
2424
docker exec \
2525
-e TEST_TAGS="${{ inputs.test-tags }}" \
2626
-e TEST_VIDEO="${{ inputs.video }}" \
27+
-e SPLIT="${{ strategy.job-total }}" \
28+
-e SPLIT_INDEX="${{ strategy.job-index }}" \
29+
-e SPLIT_OUTPUT_FILE=/e2e/cypress/timings.out.json \
2730
cypress /e2e/cypress/run_cypress_in_4K_xvfb.sh
31+
32+
docker exec ls -lh /e2e
33+
docker exec ls -lh /cypress
2834
shell: bash
2935

3036
- name: Retrieve test reports from container
3137
# should be run even if the tests fail
3238
if: always()
3339
run: |
3440
docker cp cypress:/e2e/cypress/reports ${{ github.workspace }}/test-reports || echo "No reports"
41+
docker cp cypress:/e2e/cypress/timings.out.json ${{ github.workspace }}/timings.out.json || echo "No timings file"
3542
shell: bash
3643

3744
- name: Upload test reports as an artifact
3845
# should be run even if the tests fail
3946
if: always()
4047
uses: actions/upload-artifact@v4
4148
with:
42-
name: cypress-docker-reports
49+
name: "cypress-docker-report-${{ strategy.job-index }}-of-${{ strategy.job-total }}"
4350
path: ${{ github.workspace }}/test-reports
4451

52+
- name: Upload cypress-split timings file
53+
uses: actions/upload-artifact@v4
54+
with:
55+
name: "cypress-timings-${{ strategy.job-index }}-of-${{ strategy.job-total }}"
56+
path: ${{ github.workspace }}/timings.out.json
57+
4558
- name: Fail the job
4659
# should fail the job if the tests fail
4760
if: ${{ failure() }}

0 commit comments

Comments
 (0)