From 22a978098e4a84292dcbae40b05c5dc78c2bac8b Mon Sep 17 00:00:00 2001 From: alexm Date: Thu, 6 Mar 2025 10:05:35 +0100 Subject: [PATCH] refactor(cypress): refs #8698 restructure parallel test execution and cleanup scripts --- Jenkinsfile | 3 +-- test/cypress/cypressParallel.sh | 15 --------------- test/cypress/docker/cypressParallel.sh | 20 ++++++++++++++++++++ test/cypress/docker/find/find.js | 2 +- test/cypress/{ => docker}/run.sh | 4 +++- test/cypress/{ => docker}/summary.sh | 0 6 files changed, 25 insertions(+), 19 deletions(-) delete mode 100644 test/cypress/cypressParallel.sh create mode 100644 test/cypress/docker/cypressParallel.sh rename test/cypress/{ => docker}/run.sh (82%) rename test/cypress/{ => docker}/summary.sh (100%) diff --git a/Jenkinsfile b/Jenkinsfile index 47c39a2e5..7c56cb8ca 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -128,8 +128,7 @@ pipeline { sh "docker-compose ${env.COMPOSE_PARAMS} up -d" image.inside("--network ${env.COMPOSE_PROJECT}_default -e CI -e TZ") { - // sh "cypress run --browser chromium --spec '${modules}' || true" - sh 'sh test/cypress/cypressParallel.sh 2' + sh "sh test/cypress/docker/cypressParallel.sh 2 '${modules}'" } } } diff --git a/test/cypress/cypressParallel.sh b/test/cypress/cypressParallel.sh deleted file mode 100644 index 8ef26bcde..000000000 --- a/test/cypress/cypressParallel.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash - -find 'test/cypress/integration' \ - -mindepth 1 \ - -maxdepth 1 \ - -type d | \ -xargs -P "$1" -I {} sh -c ' - echo "🔷 {}" && - xvfb-run -a cypress run \ - --headless \ - --spec "{}" \ - --quiet \ - > /dev/null -' -wait diff --git a/test/cypress/docker/cypressParallel.sh b/test/cypress/docker/cypressParallel.sh new file mode 100644 index 000000000..c316c758b --- /dev/null +++ b/test/cypress/docker/cypressParallel.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +if [ -z "$2" ]; then + TEST_DIRS=$(find 'test/cypress/integration' -mindepth 1 -maxdepth 1 -type d) +else + TEST_DIRS=$2 +fi + +# Ejecutar Cypress en paralelo +# echo $TEST_DIRS x$1 + +echo "$TEST_DIRS" | xargs -P "$1" -I {} sh -c ' + echo "🔷 {}" && + xvfb-run -a cypress run \ + --headless \ + --spec "{}" \ + --quiet \ + > /dev/null +' +wait diff --git a/test/cypress/docker/find/find.js b/test/cypress/docker/find/find.js index b5dbf4f7b..315c77a5a 100644 --- a/test/cypress/docker/find/find.js +++ b/test/cypress/docker/find/find.js @@ -22,7 +22,7 @@ async function getChangedModules() { ...new Set(getModules(await findImports(change))), ]); } - return [...changedModules].join(','); + return [...changedModules].join(' '); } getChangedModules() diff --git a/test/cypress/run.sh b/test/cypress/docker/run.sh similarity index 82% rename from test/cypress/run.sh rename to test/cypress/docker/run.sh index 1f506aa57..727b3126e 100755 --- a/test/cypress/run.sh +++ b/test/cypress/docker/run.sh @@ -20,6 +20,8 @@ export CI=true export TZ=Europe/Madrid docker-compose -p e2e --project-directory . -f test/cypress/docker-compose.yml up -d +files=$(node test/cypress/docker/find/find.js) +echo $files docker run -it --rm \ -v "$(pwd)":/app \ @@ -27,6 +29,6 @@ docker run -it --rm \ -e CI \ -e TZ \ lilium-dev \ - bash -c 'sh test/cypress/cypressParallel.sh 2' + bash -c "sh test/cypress/docker/cypressParallel.sh 2 $files" cleanup diff --git a/test/cypress/summary.sh b/test/cypress/docker/summary.sh similarity index 100% rename from test/cypress/summary.sh rename to test/cypress/docker/summary.sh