shouldly/shouldly
Should testing for .NET—the way assertions should be! observed · 2026-08-28
Health v2 · maintenance only
67/100
- Activity 99
- Release rhythm 8
- Longevity 100
Flags: no_license
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 5854
- days_rel: 587
- days_push: 7
- n_releases_24m: 1
Adoption not part of the score
3408 stars · 425 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
Shouldly is a .NET assertion library for unit tests that focuses on clear, expressive failure messages by embedding the asserted source expression into the error output. It works alongside test frameworks like NUnit and xUnit via simple Should* extension methods.
Use cases
- write readable unit test assertions in C#
- get better failure messages than Assert.That
- migrate tests from FluentAssertions to Shouldly
- assert exceptions are thrown in tests
- compare strings and collections with helpful diffs
- snapshot/approved file testing with ShouldMatchApproved
When to choose
- you write .NET unit tests and want terse, expressive assertions
- you care about diagnostic quality of test failure messages
- you're migrating away from FluentAssertions
When to avoid
- you're not on the .NET platform
- you need fluent assertion chaining like .Should().Be()
- your build server can't provide full pdb files for source-based messages
Facets
library · maturity active
testing testing developer-tools dotnet cross-platform assertions unit-testing fluent-assertions nunit xunit error-messages
10 sources
- readme: https://github.com/shouldly/shouldly · fetched 2026-08-28 · d5f6cfeb4929
- homepage: https://docs.shouldly.org · fetched 2026-08-29 · c21720b163a3
- site_page: https://docs.shouldly.org/documentation/getting-started · fetched 2026-08-29 · a18d82412b28
- site_page: https://docs.shouldly.org/documentation/migrating-from-fluentassertions · fetched 2026-08-29 · 7936a10f4c5c
- site_page: https://docs.shouldly.org/documentation/configuration · fetched 2026-08-29 · 471824cef8f2
- site_page: https://docs.shouldly.org/documentation/equality · fetched 2026-08-29 · bfa17eeb77ef
- site_page: https://docs.shouldly.org/documentation/string · fetched 2026-08-29 · acdcbdcb84b7
- site_page: https://docs.shouldly.org/documentation/enumerable · fetched 2026-08-29 · adc2c5afa0df
- site_page: https://docs.shouldly.org/documentation/dictionary · fetched 2026-08-29 · 2ed4d3546646
- site_page: https://docs.shouldly.org/documentation/exceptions · fetched 2026-08-29 · 7772602f093d
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| shouldly/shouldly | main | 67 |
For agents
markdown · JSON · MCP: product_card(name="shouldly/shouldly")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem