Enable parallelism in test projects - #5697
Conversation
7bac798 to
f747755
Compare
…sm on transport tests
28b6e7d to
20f562d
Compare
|
Should we just use the default for |
…orrectly, use default parallelism
I removed the explicit setting and it ran much slower, the build agents don't have 4 cores and benefit from having higher parallelism. |
|
Curious did you already compare before and after? How much gain do we get? |
Here's the groupings that have changed, omitting some because they were already parallel from a previous pr, it's based on a single run so take it with a grain of salt.
|
This pull request introduces several improvements to the test infrastructure to introduce parallelisation within the test projects to improve CI build times.
Test Infrastructure and Parallelization Enhancements:
FixtureLifeCycle,Parallelizable, andLevelOfParallelism) to bothsrc/Particular.LicensingComponent.UnitTests/NUnitSettings.csandsrc/ServiceControl.AcceptanceTests.RavenDB/NUnitSettings.csto enable test parallelization and control concurrency level.SetupFixtureinsrc/ServiceControl.AcceptanceTests.RavenDB/SetupFixture.csto ensure required event log sources are created before tests run, preventing race conditions during test startup.SemaphoreSlim-based lock andUseDatabaseLifecycleLockmethod inAcceptanceTestStorageConfigurationto serialize database lifecycle operations, preventing parallel access issues with the shared RavenDB server.Test Safety and Reliability:
[NonParallelizable]to avoid race conditions and ensure reliable test execution.Groups with full parallelism
Groups not updated