Accelergreat.Xunit3
6.0.0
Prefix Reserved
dotnet add package Accelergreat.Xunit3 --version 6.0.0
NuGet\Install-Package Accelergreat.Xunit3 -Version 6.0.0
<PackageReference Include="Accelergreat.Xunit3" Version="6.0.0" />
<PackageVersion Include="Accelergreat.Xunit3" Version="6.0.0" />
<PackageReference Include="Accelergreat.Xunit3" />
paket add Accelergreat.Xunit3 --version 6.0.0
#r "nuget: Accelergreat.Xunit3, 6.0.0"
#:package Accelergreat.Xunit3@6.0.0
#addin nuget:?package=Accelergreat.Xunit3&version=6.0.0
#tool nuget:?package=Accelergreat.Xunit3&version=6.0.0
Accelergreat.Xunit3
xUnit 3 integration package for Accelergreat.
This package keeps the same day-to-day test shape used by Accelergreat.Xunit, while adapting internals to xUnit 3 extensibility APIs.
Install
dotnet add package Accelergreat.Xunit3
Minimal project file
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Accelergreat.Xunit3" Version="6.0.0" />
<PackageReference Include="xunit.v3.mtp-off" Version="4.*" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.*" />
</ItemGroup>
</Project>
xUnit v3 4.0 defaults to Microsoft Testing Platform. Accelergreat.Xunit3 uses a custom VSTest test framework, so test projects should reference xunit.v3.mtp-off (not xunit.v3) to keep dotnet test on VSTest.
What you get
AccelergreatXunitTestbase class- constructor DI support for
IAccelergreatEnvironmentPool - startup discovery through
IAccelergreatStartup - environment pooling and reset behavior aligned with xUnit2 package goals
Basic setup
public class Startup : IAccelergreatStartup
{
public void Configure(IAccelergreatBuilder builder)
{
builder.AddAccelergreatComponent<AppDatabaseComponent>();
builder.AddAccelergreatComponent<AppApiComponent>();
}
}
public class ApiTests : AccelergreatXunitTest
{
public ApiTests(IAccelergreatEnvironmentPool environmentPool) : base(environmentPool)
{
}
[Fact]
public async Task Should_return_ok()
{
var client = GetComponent<AppApiComponent>().CreateClient();
var response = await client.GetAsync("/health");
response.EnsureSuccessStatusCode();
}
}
xUnit2 to xUnit3 migration checklist
- Replace
Accelergreat.XunitwithAccelergreat.Xunit3. - Keep
IAccelergreatStartupand component registration as-is. - Keep constructor injection via
IAccelergreatEnvironmentPoolfor Accelergreat tests. - Verify xUnit3-compatible runner/extensibility package references in the test project.
- Run full suite with mirrored projects/sources to validate parity.
Validation command
dotnet test Accelergreat.sln -m:1
Common pitfalls
- Compiling xUnit2 and xUnit3 lifecycle signatures in the same target.
- Missing xUnit3 runner dependencies in test projects.
- Assuming fixture wiring without validating the custom framework activation path.
FAQ
- Do I need to change all test constructors to fixtures?
- No. Keep
IAccelergreatEnvironmentPoolwhere your tests inheritAccelergreatXunitTest.
- No. Keep
- Can I migrate gradually?
- Yes. Keep xUnit2 projects and introduce mirrored xUnit3 projects.
- What is the first migration validation step?
- Run serial full-suite tests and compare outcomes between xUnit2 and xUnit3 projects.
When to use Accelergreat.Xunit instead
Use Accelergreat.Xunit if your test project is still on xUnit 2 and you are not yet migrating.
Full migration guide
See ../../README.md.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Accelergreat (>= 6.0.0)
- Microsoft.Extensions.DependencyInjection (>= 10.0.11)
- Microsoft.Extensions.Logging (>= 10.0.11)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.11)
- xunit.v3.extensibility.core (>= 4.0.0)
- xunit.v3.runner.utility (>= 4.0.0)
-
net8.0
- Accelergreat (>= 6.0.0)
- Microsoft.Extensions.DependencyInjection (>= 8.0.1)
- Microsoft.Extensions.Logging (>= 8.0.1)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
- xunit.v3.extensibility.core (>= 4.0.0)
- xunit.v3.runner.utility (>= 4.0.0)
-
net9.0
- Accelergreat (>= 6.0.0)
- Microsoft.Extensions.DependencyInjection (>= 9.0.19)
- Microsoft.Extensions.Logging (>= 9.0.19)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 9.0.19)
- xunit.v3.extensibility.core (>= 4.0.0)
- xunit.v3.runner.utility (>= 4.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 6.0.0 | 36 | 8/28/2026 |
| 5.0.2 | 121 | 6/3/2026 |
| 5.0.1 | 132 | 4/2/2026 |
| 5.0.0 | 111 | 4/2/2026 |
| 5.0.0-beta.eadb69d | 90 | 2/25/2026 |