Evaluate `paralell_tests`
As our test suite is getting bigger and bigger we have to realize that the test pipeline execution will take longer.
Therefore adding https://github.com/grosser/parallel_tests makes more sense from day to day.
TODO:
- Try to make the gem work
- Try to use all your cores available to execute tests
- Optimise database setup wherever needed
- Have fun
Conclusion 14.07.2025
I've spend some time now working this out. The branch is named 'feature/957-evaluate-paralell-tests' and all of my work can be found there.
What works
Currently using these parallel tests works locally. Just follow these steps to execute them:
-
docker compose up -
rake parallel:createto create copies of the existing Database (creates as many as CPU cores are available) -
rake parallel:specto run the tests
After doing all of this it splits the tests across all of these cores and executes them asynchronous. Also do not worry, some of the tests fail locally, yet will run when is_ci is set to true which ensures that the tests run headless. That is also why we only want the specs to run parallel on the pipeline.
What does not yet work
Sadly all of this does not work on the pipeline yet. On the pipeline im trying to use the rake parallel:setup command since this should perfectly prepare it for running it. The specs do run currently but more than half of them fail