make e2e parallel
This commit is contained in:
parent
b6e76209af
commit
0fcd2c6daa
@ -80,7 +80,7 @@ function getLatestBoxVersion(callback) {
|
|||||||
function runTests(latestVersionInfo, callback) {
|
function runTests(latestVersionInfo, callback) {
|
||||||
debug('Running tests for %j', latestVersionInfo);
|
debug('Running tests for %j', latestVersionInfo);
|
||||||
|
|
||||||
gNpmTest = shell.system('e2etestrunner', 'npm test', function (error, stdout, stderr) {
|
gNpmTest = shell.system('e2etestrunner', 'npm run-script parallel_test', function (error, stdout, stderr) {
|
||||||
gNpmTest = null;
|
gNpmTest = null;
|
||||||
debug('Final test result', error);
|
debug('Final test result', error);
|
||||||
|
|
||||||
|
0
logs/.gitignore
vendored
Normal file
0
logs/.gitignore
vendored
Normal file
@ -4,7 +4,8 @@
|
|||||||
"description": "End to end testing",
|
"description": "End to end testing",
|
||||||
"main": "test.js",
|
"main": "test.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "DEBUG=superagent-sync,e2e:* DEBUG_COLORS=true ./node_modules/.bin/mocha --bail test/*"
|
"test": "DEBUG=superagent-sync,e2e:* DEBUG_COLORS=true ./node_modules/.bin/mocha --bail test/*",
|
||||||
|
"parallel_test": "./parallel_test.sh"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
43
parallel_test.sh
Executable file
43
parallel_test.sh
Executable file
@ -0,0 +1,43 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -eu
|
||||||
|
|
||||||
|
export DEBUG=superagent-sync,e2e:*
|
||||||
|
export DEBUG_COLORS=true
|
||||||
|
|
||||||
|
readonly tests=(app-flow-test cloudron-update-test cloudron-user-test new-user-test)
|
||||||
|
|
||||||
|
# cleanup
|
||||||
|
rm -f logs/*
|
||||||
|
echo "Cleaning up"
|
||||||
|
./node_modules/.bin/mocha test/000-cleanup.js > "logs/000-cleanup.log" 2>&1
|
||||||
|
|
||||||
|
# run tests
|
||||||
|
for t in "${tests[@]}"; do
|
||||||
|
echo "Starting test ${t}"
|
||||||
|
./node_modules/.bin/mocha "test/${t}.js" > "logs/${t}.log" 2>&1 &
|
||||||
|
done
|
||||||
|
|
||||||
|
# wait for tests to finish
|
||||||
|
fail=0
|
||||||
|
echo "Waiting for jobs to finish"
|
||||||
|
for job in `jobs -p`; do
|
||||||
|
wait $job || let "fail+=1"
|
||||||
|
done
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
for t in "${tests[@]}"; do
|
||||||
|
echo "=========== ${t} =============="
|
||||||
|
cat "test/${t}.log"
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ "$fail" == "0" ]; then
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
echo "Fail count: ${fail}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
Loading…
Reference in New Issue
Block a user