A well-known project done right. Strong docs and solid engineering throughout.
A modern, fast and flexible .NET testing framework
Documentation
93
CONTRIBUTING guide found.
README documents how to install the project.
README is present.
Licensed under MIT.
Engineering
77
CI is configured (.github/workflows/deploy-pages-test.yml).
Lockfile present (docs/yarn.lock). Installs are reproducible.
Test files detected (TUnit.Analyzers.Tests/AbstractTestClassWithDataSourcesAnalyzerTests.cs).
.NET formatting configured (.editorconfig).
Issue or PR templates present.
Project health
94
.gitignore present.
Dependency manifest found (TUnit.Analyzers.CodeFixers/TUnit.Analyzers.CodeFixers.csproj).
Repository has a description.
Actively maintained (pushed within the last month).
Repository health signals
Activity, community, and responsiveness at scan time
Activity
- —Commits (30d / 90d)
- 127Forks
- 195Releaseslatest 7mo ago
Community
- —Community health
- —authors own >50% of commits
- 3,885Watchers
Responsiveness
- —Median issue response
- <1hMedian PR merge time
- 23Open issues
Repository files132 root entries
- .claude
- .config
- .devcontainer
- .githubGood: CONTRIBUTING guide found.Issue: CONTRIBUTING guide contents could not be read (−28 pts vs a readable file).Fix: Move the file to the repo root or docs/CONTRIBUTING.md so its setup, style, test, and PR sections can be graded.Good: CI is configured (.github/workflows/deploy-pages-test.yml).Good: Issue or PR templates present.
- .specify
- .vscode
- assets
- docsGood: Lockfile present (docs/yarn.lock). Installs are reproducible.
- examples
- scripts
- SharedTestHelpers
- Snapshots
- tools
- TUnit
- TUnit.Analyzers
- TUnit.Analyzers.CodeFixersGood: Dependency manifest found (TUnit.Analyzers.CodeFixers/TUnit.Analyzers.CodeFixers.csproj).
- TUnit.Analyzers.Roslyn414
- TUnit.Analyzers.Roslyn44
- TUnit.Analyzers.Roslyn47
- TUnit.Analyzers.TestsGood: Test files detected (TUnit.Analyzers.Tests/AbstractTestClassWithDataSourcesAnalyzerTests.cs).
- TUnit.Aspire
- TUnit.Aspire.Core
- TUnit.Aspire.Tests
- TUnit.Aspire.Tests.ApiService
- TUnit.Aspire.Tests.AppHost
- TUnit.AspNetCore
- TUnit.AspNetCore.Analyzers
- TUnit.AspNetCore.Analyzers.CodeFixers
- TUnit.AspNetCore.Analyzers.Roslyn414
- TUnit.AspNetCore.Analyzers.Roslyn44
- TUnit.AspNetCore.Analyzers.Roslyn47
- TUnit.AspNetCore.Analyzers.Tests
- TUnit.AspNetCore.Core
- TUnit.AspNetCore.Tests
- TUnit.AspNetCore.Tests.MinimalApi
- TUnit.AspNetCore.Tests.WebApp
- TUnit.Assertions
- TUnit.Assertions.Analyzers
- TUnit.Assertions.Analyzers.CodeFixers
- TUnit.Assertions.Analyzers.CodeFixers.Tests
- TUnit.Assertions.Analyzers.Tests
- TUnit.Assertions.FSharp
- TUnit.Assertions.Should
- TUnit.Assertions.Should.SourceGenerator
- TUnit.Assertions.Should.SourceGenerator.Tests
- TUnit.Assertions.Should.Tests
- TUnit.Assertions.SourceGenerator
- TUnit.Assertions.SourceGenerator.Tests
- TUnit.Assertions.Tests
- TUnit.Core
- TUnit.Core.SourceGenerator
- TUnit.Core.SourceGenerator.Roslyn414
- TUnit.Core.SourceGenerator.Roslyn44
- TUnit.Core.SourceGenerator.Roslyn47
- TUnit.Core.SourceGenerator.Tests
- TUnit.Core.Tests
- TUnit.Engine
- TUnit.Engine.Tests
- TUnit.Example
- TUnit.Example.Asp.Net
- TUnit.Example.Asp.Net.TestProject
- TUnit.Example.FsCheck.TestProject
- TUnit.FsCheck
- TUnit.IntegrationTests
- TUnit.Logging.Microsoft
- TUnit.Mocks
- TUnit.Mocks.Analyzers
- TUnit.Mocks.Analyzers.Tests
- TUnit.Mocks.Assertions
- TUnit.Mocks.Benchmarks
- TUnit.Mocks.Http
- TUnit.Mocks.Http.Tests
- TUnit.Mocks.Logging
- TUnit.Mocks.Logging.Tests
- TUnit.Mocks.SourceGenerator
- TUnit.Mocks.SourceGenerator.Roslyn414
- TUnit.Mocks.SourceGenerator.Roslyn44
- TUnit.Mocks.SourceGenerator.Roslyn47
- TUnit.Mocks.SourceGenerator.Tests
- TUnit.Mocks.Tests
- TUnit.OpenTelemetry
- TUnit.OpenTelemetry.Tests
- TUnit.Performance.Tests
- TUnit.PerformanceBenchmarks
- TUnit.Pipeline
- TUnit.Playwright
- TUnit.Profile
- TUnit.PublicAPI
- TUnit.RpcTests
- TUnit.SourceGenerator.Benchmarks
- TUnit.SourceGenerator.IncrementalTests
- TUnit.TemplatesIssue: Build artifacts or local files may be committed (TUnit.Templates/.idea/.idea.TUnit.dir) (−40 pts).Fix: Remove them and add to .gitignore.
- TUnit.Templates.Tests
- TUnit.TestProject
- TUnit.TestProject.FSharp
- TUnit.TestProject.Library
- TUnit.TestProject.VB.NET
- TUnit.UnitTests
- .editorconfigGood: .NET formatting configured (.editorconfig).
- .gitattributes
- .gitignoreGood: .gitignore present.
- AGENTS.md
- CLAUDE.md
- Directory.Build.props
- Directory.Build.targets
- Directory.Packages.props
- GitVersion.yml
- global.json
- Library.props
- Library.targets
- LICENSEGood: Licensed under MIT.
- Polyfill.targets
- README.mdGood: README is present.Good: README is well structured with multiple sections.Good: README includes screenshots or visuals. Great for first impressions.Good: README has code examples.Good: README links to a live demo or deployed app.Good: README includes status badges.Good: README documents how to install the project.Good: README documents how to run the project.
- renovate.json
- Roslyn.props
- run-all-engine-tests.ps1
- run-aot-tests.ps1
- run-reflection-tests.ps1
- run-singlefile-tests.ps1
- run-source-generation-tests-verbose.ps1
- run-source-generation-tests.ps1
- SourceGenerationDebug.props
- StringMatchesAssertion.patch
- strongname.snk
- TestLibrary.props
- TestLibrary.targets
- TestProject.props
- TestProject.targets
- TUnit.CI.slnx
- TUnit.Dev.slnx
- TUnit.props
- TUnit.slnx