{"adoption": {"forks": 356, "observed_at": "2026-08-28T04:08:09.027084+00:00", "stars": 3534}, "canonical_url": "https://ross.abutalabs.com/products/autofixture", "card": {"archived": false, "artifact_type": "library", "description": "AutoFixture is an open source library for .NET designed to minimize the 'Arrange' phase of your unit tests in order to maximize maintainability. Its primary goal is to allow developers to focus on what is being tested rather than how to setup the test scenario, by making it easier to create object graphs containing test data.", "domain": ["testing", "developer-tools"], "enriched": true, "function": ["testing", "mocking", "data-generation"], "health_score": 97, "homepage": null, "language": "C#", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["AutoFixture/AutoFixture"], "name": "AutoFixture/AutoFixture", "platform": ["dotnet", "cross-platform"], "pushed_at": "2026-07-31T16:10:42+00:00", "repo": "AutoFixture/AutoFixture", "stars": 3534, "tags": ["test-data-builder", "unit-testing", "tdd", "auto-mocking", "anonymous-variables", "csharp", "fsharp", "xunit", "nunit", "moq", "nsubstitute", "fakeiteasy", "fscheck"], "topics": ["assertion-library", "assertions", "auto-mocking", "autofixture", "dotnet", "fakeiteasy", "fscheck", "moq", "nsubstitute", "nunit", "test-data", "test-data-generator", "unit-testing", "xunit", "csharp", "foq", "fsharp", "tdd", "testing"], "urls": [], "use_cases": ["generate anonymous test data for unit tests in C#", "reduce boilerplate arrange phase in xUnit or NUnit tests", "create object graphs automatically for TDD", "integrate auto-mocking with Moq, NSubstitute, or FakeItEasy", "make unit tests refactoring-safe by avoiding hand-coded fixture values", "generate test fixtures for F# projects with FsCheck or Foq"], "what_it_is": "AutoFixture is an open-source .NET library that automates the creation of test data and object graphs, minimizing the 'Arrange' phase of unit tests. It implements the Test Data Builder pattern so developers can focus on what is being tested rather than fixture setup.", "when_to_avoid": ["your tests require precise, deterministic test data rather than anonymous values", "you are not working in the .NET ecosystem", "your project needs integration or end-to-end test tooling rather than unit test fixtures"], "when_to_choose": ["you write .NET unit tests and want to eliminate repetitive test setup code", "you practice TDD and need fast, maintainable fixture creation", "you want a generic Test Data Builder implementation with mocking library integration"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/autofixture", "repo": "AutoFixture/AutoFixture", "role": "main", "score": 84}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:09.027084+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:35:03.592533+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6ac9707ff3b67b6bccae330948fcfa6da259679aea85792ee3e5eba010ae17e7", "fetched_at": "2026-08-28T04:08:09.027084+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AutoFixture/AutoFixture"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 95, "longevity": 100, "rhythm": 60}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["prerelease_only"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5210, "days_push": 33, "days_rel": 33, "gap_med": 555, "n_releases_24m": 2}, "score": 84, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}