End-to-end: run two test files at a time in each shard
Each end-to-end file starts its own `wrangler dev` (own port, database and directory), and one file's server mostly keeps one of the runner's four cores busy. Locally, two at a time took the passkeys/registry/email files from 234 s to 134 s (all 48 tests passing in each of three runs) and the agents files from 261 s to 136 s; security gains little (one big file). Shards with one file are unchanged. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Br8vDafY9vkPRfDRkkcVBt
- CI / Typecheck and bundleFailed
- CI / Unit tests (1/2)Failed
- CI / Unit tests (2/2)Failed
- End-to-end / End-to-end (agent reviews, tasks, Today)Failed
- End-to-end / End-to-end (git, PRs, Actions)Failed
- End-to-end / End-to-end (large pushes)Failed
- End-to-end / End-to-end (passkeys, registry, email)Failed
- End-to-end / End-to-end (real histories)Failed
- End-to-end / End-to-end (runner Docker)Failed
- End-to-end / End-to-end (security)Failed
1 file changed+3−1
modified.github/workflows/e2e.yml+3−1View file
| @@ -81,7 +81,9 @@ | ||
| 81 | 81 | *) files=$(ls test/e2e/*.test.mjs | grep -vE "$core|$agents|$security") ;; |
| 82 | 82 | esac |
| 83 | 83 | echo "$files" |
| 84 | - node --test --test-concurrency=1 "${opts[@]}" $files | |
| 84 | + # Two files at a time: each starts its own local server on its own port, database and | |
| 85 | + # directory, so they don't share state, and a file's server mostly keeps one core busy. | |
| 86 | + node --test --test-concurrency=2 "${opts[@]}" $files | |
| 85 | 87 | |
| 86 | 88 | # Docker as the hosted runner image runs it, with this change's docker wrapper, daemon config |
| 87 | 89 | # and agent (its registry relay): this job runs on a hosted runner, so the real dockerd is there. |