Learning Paths¶
Every page linked below already exists somewhere else in this site — this page is pure navigation, a curated order through material that's organized elsewhere by topic rather than by starting point. Pick the path that matches why you're here.
I'm new to Compono¶
- What is Compono?
- Installation
- Your First Composed Theory
- The Composition Model
- Registrations and Rules
- How-to Guides — pick the task closest to what you're building.
I'm migrating from AutoFixture¶
- Migrating from AutoFixture
- The Composition Model
- Shared Values — the
[Shared]alternative toFreeze<T>(). - Profiles — the alternative to
AutoDataAttributecustomizations. - Determinism and Seeding — how reproducing a failure differs from AutoFixture's approach.
I use xUnit¶
- Your First Composed Theory
Compono.XunitV3Package Guide- Write a Composed Theory
- Share a Value Across a Test
- Use Profiles
I use NSubstitute¶
- Providers
Compono.NSubstitutePackage Guide- Share a Value Across a Test — sharing a composed substitute across several parameters.
I want realistic data¶
Compono.BogusPackage Guide- Customize a Member — combining a
Compono.Bogusconvention with an explicit member rule. - Cookbook — narrow recipes like "generate a realistic email."
I want to extend Compono¶
- Providers
- Public API — the
ICompositionValueProviderextensibility contract. - Architecture — the resolution pipeline a custom provider participates in.
Next¶
Not sure which path fits? Next Steps branches out by what you want to do next, rather than by who you already are.