Update doc/qa/test-guidelines-collaborators.md

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
This commit is contained in:
lukhipolito-nexxbiz 2025-09-29 20:08:19 +02:00 committed by GitHub
parent 816cc5d489
commit 0041d13f3c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -20,7 +20,7 @@ This document describes recommended testing strategies for the Elsa engine. It i
## Highlevel testing pyramid for Elsa ## Highlevel testing pyramid for Elsa
- **Unit tests**: Activity logic, expression evaluators, small helpers. Inprocess, mocking storage and scheduler. Fast and numerous. - **Unit tests**: Activity logic, expression evaluators, services, providers, small helpers. Inprocess, mocking storage and scheduler. Fast and numerous.
- Use [xUnit / NUnit / MSTest] with [Moq / NSubstitute] for mocking. Test activities and small components in isolation. Use inmemory stores. - Use [xUnit / NUnit / MSTest] with [Moq / NSubstitute] for mocking. Test activities and small components in isolation. Use inmemory stores.
- **Component/integration tests**: Core engine components (WorkflowInvoker, Bookmark handling, persistence adapters) with inmemory or ephemeral DB. Use fake clock and fake scheduler. Run in CI and locally. - **Component/integration tests**: Core engine components (WorkflowInvoker, Bookmark handling, persistence adapters) with inmemory or ephemeral DB. Use fake clock and fake scheduler. Run in CI and locally.
- Use `TestHostFactory` to create test hosts with DI overrides. Use code-first or serialized workflow definitions depending on the amount and scope. Also, possible to use external tooling like JTest. - Use `TestHostFactory` to create test hosts with DI overrides. Use code-first or serialized workflow definitions depending on the amount and scope. Also, possible to use external tooling like JTest.