Ross ROSS = Recommend OSS · open-source software intelligence for agents

thoughtbot/shoulda

Makes tests easy on the fingers and the eyes observed · 2026-08-28

github.com/thoughtbot/shoulda · homepage · Ruby · MIT (permissive) observed · 2026-08-28

Health v2 · maintenance only

43/100

  • Activity 23
  • Release rhythm 35
  • Longevity 100

Flags: no_releases

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: 6715
  • days_rel: n/a
  • days_push: 467
  • n_releases_24m: 0

Full methodology

Adoption not part of the score

2204 stars · 182 forks observed · 2026-08-28

What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded

Shoulda is an umbrella Ruby gem that makes Rails tests easier to write and read by bundling Shoulda Context and Shoulda Matchers. It provides expressive one-liner matchers for validations, associations, and controller behavior under Minitest, Test::Unit, and RSpec.

Use cases

  • write concise Rails model validation tests
  • test ActiveRecord associations with one-liners
  • group tests into readable contexts
  • test controller behavior in Rails apps
  • make Minitest tests more expressive
  • add one-liner matchers to RSpec suites

When to choose

  • you write Rails tests with Minitest, Test::Unit, or RSpec and want readable one-liner matchers
  • you want to reduce boilerplate in model and controller specs

When to avoid

  • you are not testing a Rails application
  • you use a test framework outside Minitest, Test::Unit, or RSpec
  • you need testing tools for non-Ruby projects

Facets

library · maturity stable

testing testing web-development developer-tools ruby rails minitest rspec test-unit matchers umbrella-gem

2 sources

Member repositories

RepositoryRoleHealth v2
thoughtbot/shouldamain43

For agents

markdown · JSON · MCP: product_card(name="thoughtbot/shoulda")

Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem