Optimize PR test workflow: Parallelize smoke and sequential tests#31
Conversation
|
/claude-review |
|
Claude finished @oskarszoon's task —— View job Code Review Complete ✅This PR successfully optimizes the PR smoke test workflow with a clean parallelization strategy. The changes are well-structured and should achieve the claimed 70% reduction in test execution time. StrengthsWorkflow Design (
Shell Script Enhancement (
Makefile Targets (
Minor ObservationsResource Utilization: Since all 4 jobs run on
If runner capacity is limited, consider adding a Future Improvement: The script filters tests by substring matching on function names (e.g., Recommendation✅ Approved - This is a solid optimization that delivers significant value with minimal risk. The implementation is clean, follows best practices, and the parallelization approach is sound given that each test suite uses isolated containers. |
|



Summary
This PR optimizes the PR smoke test workflow by splitting smoke tests and sequential tests into parallel jobs, reducing total test time from ~18.5 minutes to ~5-6 minutes (70% faster).
Changes
Split workflow into 4 parallel jobs:
smoketest: Basic functionality checks (~2.5 min)sequential-sqlite: Sequential tests with SQLite backend (~5 min)sequential-postgres: Sequential tests with Postgres backend (~5 min)sequential-aerospike: Sequential tests with Aerospike backend (~5 min)Enhanced
test/scripts/run_tests_sequentially.sh:--dbparameter to filter tests by database backendNew Makefile targets:
sequentialtest-sqlite: Run only SQLite sequential testssequentialtest-postgres: Run only Postgres sequential testssequentialtest-aerospike: Run only Aerospike sequential testsPerformance Impact
Before:
After:
Additional Benefits
Test Plan
Related Issue
Addresses slow PR test workflow execution times.