Microsoft.AspNetCore.TestHost 10.0.0-preview.2.25164.1

Prefix Reserved
This is a prerelease version of Microsoft.AspNetCore.TestHost.
dotnet add package Microsoft.AspNetCore.TestHost --version 10.0.0-preview.2.25164.1
                    
NuGet\Install-Package Microsoft.AspNetCore.TestHost -Version 10.0.0-preview.2.25164.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="10.0.0-preview.2.25164.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="10.0.0-preview.2.25164.1" />
                    
Directory.Packages.props
<PackageReference Include="Microsoft.AspNetCore.TestHost" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Microsoft.AspNetCore.TestHost --version 10.0.0-preview.2.25164.1
                    
#r "nuget: Microsoft.AspNetCore.TestHost, 10.0.0-preview.2.25164.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=Microsoft.AspNetCore.TestHost&version=10.0.0-preview.2.25164.1&prerelease
                    
Install Microsoft.AspNetCore.TestHost as a Cake Addin
#tool nuget:?package=Microsoft.AspNetCore.TestHost&version=10.0.0-preview.2.25164.1&prerelease
                    
Install Microsoft.AspNetCore.TestHost as a Cake Tool

About

Microsoft.AspNetCore.TestHost provides an ASP.NET Core web server for testing middleware in isolation.

Key Features

  • Instantiate an app pipeline containing only the components that you need to test
  • Send custom requests to verify middleware behavior

How to Use

To use Microsoft.AspNetCore.TestHost, follow these steps:

Installation

dotnet add package Microsoft.AspNetCore.TestHost

Usage

To set up the TestServer, configure it in your test project. Here's an example:

[Fact]
public async Task MiddlewareTest_ReturnsNotFoundForRequest()
{
    // Build and start a host that uses TestServer
    using var host = await new HostBuilder()
        .ConfigureWebHost(builder =>
        {
            builder.UseTestServer()
                .ConfigureServices(services =>
                {
                    // Add any required services that the middleware uses
                    services.AddMyServices();
                })
                .Configure(app =>
                {
                    // Configure the processing pipeline to use the middleware
                    // for the test
                    app.UseMiddleware<MyMiddleware>();
                });
        })
        .StartAsync();

    var response = await host.GetTestClient().GetAsync("/");

    Assert.Equal(HttpStatusCode.NotFound, response.StatusCode);
}

Main Types

The main types provided by this package are:

  • TestServer: An IServer implementation for executing tests
  • TestServerOptions: Provides options for configuring a TestServer

Additional Documentation

For additional documentation and examples, refer to the official documentation for testing middleware in ASP.NET Core.

Feedback & Contributing

Microsoft.AspNetCore.TestHost is released as open-source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages (180)

Showing the top 5 NuGet packages that depend on Microsoft.AspNetCore.TestHost:

Package Downloads
Microsoft.AspNetCore.Mvc.Testing

Support for writing functional tests for MVC applications. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/763b4ef31ca4df6dae07c7ee8f39ea259b6980fa

Rystem.Test.XUnit

Rystem is a open-source framework to improve the System namespace in .Net

NSwag.Commands

NSwag: The OpenAPI/Swagger API toolchain for .NET and TypeScript

Acheve.TestHost

Achve.TestHost is a nuget package to improve TestServer experiences. For more information see http://github.com/Xabaril/Acheve.TestHost

Volo.Abp.AspNetCore.TestBase

Package Description

GitHub repositories (217)

Showing the top 5 popular GitHub repositories that depend on Microsoft.AspNetCore.TestHost:

Repository Stars
abpframework/abp
Open-source web application framework for ASP.NET Core! Offers an opinionated architecture to build enterprise software solutions with best practices on top of the .NET. Provides the fundamental infrastructure, cross-cutting-concern implementations, startup templates, application modules, UI themes, tooling and documentation.
dotnet/AspNetCore.Docs
Documentation for ASP.NET Core
aspnetboilerplate/aspnetboilerplate
ASP.NET Boilerplate - Web Application Framework
dotnet/yarp
A toolkit for developing high-performance HTTP reverse proxy applications.
ThreeMammals/Ocelot
.NET API Gateway
Version Downloads Last updated
10.0.0-preview.2.25164.1 1,223 3/18/2025
10.0.0-preview.1.25120.3 1,829 2/25/2025
9.0.3 560,028 3/11/2025
9.0.2 1,023,814 2/11/2025
9.0.1 962,916 1/14/2025
9.0.0 2,305,326 11/12/2024
9.0.0-rc.2.24474.3 48,517 10/8/2024
9.0.0-rc.1.24452.1 34,835 9/10/2024
9.0.0-preview.7.24406.2 7,493 8/13/2024
9.0.0-preview.6.24328.4 11,709 7/9/2024
9.0.0-preview.5.24306.11 3,761 6/11/2024
9.0.0-preview.4.24267.6 2,246 5/21/2024
9.0.0-preview.3.24172.13 69,413 4/11/2024
9.0.0-preview.2.24128.4 2,921 3/12/2024
9.0.0-preview.1.24081.5 24,719 2/13/2024
8.0.14 411,713 3/11/2025
8.0.13 888,585 2/11/2025
8.0.12 1,117,493 1/14/2025
8.0.11 3,686,355 11/12/2024
8.0.10 5,500,995 10/8/2024
8.0.8 6,590,155 8/13/2024
8.0.7 4,824,461 7/9/2024
8.0.6 5,035,648 5/28/2024
8.0.5 1,804,699 5/14/2024
8.0.4 4,524,318 4/9/2024
8.0.3 3,237,972 3/12/2024
8.0.2 3,307,097 2/13/2024
8.0.1 3,746,970 1/9/2024
8.0.0 5,494,166 11/14/2023
8.0.0-rc.2.23480.2 63,870 10/10/2023
8.0.0-rc.1.23421.29 59,660 9/12/2023
8.0.0-preview.7.23375.9 12,525 8/8/2023
8.0.0-preview.6.23329.11 43,030 7/11/2023
8.0.0-preview.5.23302.2 12,625 6/13/2023
8.0.0-preview.4.23260.4 229,897 5/16/2023
8.0.0-preview.3.23177.8 3,050 4/11/2023
8.0.0-preview.2.23153.2 1,807 3/14/2023
8.0.0-preview.1.23112.2 41,455 2/21/2023
7.0.20 420,968 5/28/2024
7.0.19 66,116 5/14/2024
7.0.18 184,555 4/9/2024
7.0.17 380,185 3/12/2024
7.0.16 387,347 2/13/2024
7.0.15 611,495 1/9/2024
7.0.14 1,027,268 11/14/2023
7.0.13 1,724,990 10/24/2023
7.0.12 1,058,671 10/10/2023
7.0.11 2,703,976 9/12/2023
7.0.10 1,745,963 8/8/2023
7.0.9 1,335,395 7/11/2023
7.0.8 1,084,428 6/22/2023
7.0.7 511,448 6/13/2023
7.0.5 3,681,395 4/11/2023
7.0.4 2,007,294 3/14/2023
7.0.3 1,725,296 2/14/2023
7.0.2 1,825,746 1/10/2023
7.0.1 1,056,423 12/13/2022
7.0.0 3,378,764 11/7/2022
7.0.0-rc.2.22476.2 67,814 10/11/2022
7.0.0-rc.1.22427.2 22,579 9/14/2022
7.0.0-preview.7.22376.6 10,689 8/9/2022
7.0.0-preview.6.22330.3 3,820 7/12/2022
7.0.0-preview.5.22303.8 9,522 6/14/2022
7.0.0-preview.4.22251.1 2,242 5/10/2022
7.0.0-preview.3.22178.4 1,257 4/13/2022
7.0.0-preview.2.22153.2 1,038 3/14/2022
7.0.0-preview.1.22109.13 5,015 2/17/2022
6.0.36 535,652 11/12/2024
6.0.35 206,294 10/8/2024
6.0.33 790,154 8/13/2024
6.0.32 307,783 7/9/2024
6.0.31 496,097 5/28/2024
6.0.30 166,363 5/14/2024
6.0.29 741,721 4/9/2024
6.0.28 448,217 3/12/2024
6.0.27 812,359 2/13/2024
6.0.26 1,054,963 1/9/2024
6.0.25 1,733,518 11/14/2023
6.0.24 922,329 10/24/2023
6.0.23 610,571 10/10/2023
6.0.22 1,044,238 9/12/2023
6.0.21 1,598,973 8/8/2023
6.0.20 1,423,880 7/11/2023
6.0.19 883,341 6/22/2023
6.0.18 588,300 6/13/2023
6.0.16 3,170,587 4/11/2023
6.0.15 1,909,910 3/14/2023
6.0.14 2,215,203 2/14/2023
6.0.13 2,864,082 1/10/2023
6.0.12 2,821,448 12/13/2022
6.0.11 3,600,257 11/7/2022
6.0.10 5,198,510 10/11/2022
6.0.9 3,972,178 9/13/2022
6.0.8 4,762,003 8/9/2022
6.0.7 4,232,538 7/12/2022
6.0.6 3,229,275 6/14/2022
6.0.5 4,124,527 5/10/2022
6.0.4 3,777,809 4/11/2022
6.0.3 4,437,560 3/8/2022
6.0.2 3,721,401 2/8/2022
6.0.1 5,596,019 12/14/2021
6.0.0 6,553,481 11/8/2021
6.0.0-rc.2.21480.10 205,299 10/12/2021
6.0.0-rc.1.21452.15 175,173 9/14/2021
6.0.0-preview.7.21378.6 9,111 8/10/2021
6.0.0-preview.6.21355.2 5,046 7/14/2021
6.0.0-preview.5.21301.17 3,519 6/15/2021
6.0.0-preview.4.21253.5 2,766 5/24/2021
6.0.0-preview.3.21201.13 2,982 4/8/2021
6.0.0-preview.2.21154.6 1,007 3/11/2021 6.0.0-preview.2.21154.6 is deprecated because it is no longer maintained.
6.0.0-preview.1.21103.6 1,370 2/12/2021 6.0.0-preview.1.21103.6 is deprecated because it is no longer maintained.
5.0.17 887,383 5/10/2022 5.0.17 is deprecated because it is no longer maintained.
5.0.16 152,710 4/11/2022 5.0.16 is deprecated because it is no longer maintained.
5.0.15 265,396 3/8/2022 5.0.15 is deprecated because it is no longer maintained.
5.0.14 246,918 2/8/2022 5.0.14 is deprecated because it is no longer maintained.
5.0.13 668,827 12/14/2021 5.0.13 is deprecated because it is no longer maintained.
5.0.12 790,146 11/7/2021 5.0.12 is deprecated because it is no longer maintained.
5.0.11 1,432,690 10/12/2021 5.0.11 is deprecated because it is no longer maintained.
5.0.10 1,457,549 9/14/2021 5.0.10 is deprecated because it is no longer maintained.
5.0.9 1,546,330 8/10/2021 5.0.9 is deprecated because it is no longer maintained.
5.0.8 1,202,787 7/13/2021 5.0.8 is deprecated because it is no longer maintained.
5.0.7 1,637,037 6/8/2021 5.0.7 is deprecated because it is no longer maintained.
5.0.6 1,308,293 5/11/2021 5.0.6 is deprecated because it is no longer maintained.
5.0.5 1,858,100 4/6/2021 5.0.5 is deprecated because it is no longer maintained.
5.0.4 1,073,976 3/9/2021 5.0.4 is deprecated because it is no longer maintained.
5.0.3 1,289,858 2/9/2021 5.0.3 is deprecated because it is no longer maintained.
5.0.2 1,296,908 1/12/2021 5.0.2 is deprecated because it is no longer maintained.
5.0.1 880,367 12/8/2020 5.0.1 is deprecated because it is no longer maintained.
5.0.0 2,134,712 11/9/2020 5.0.0 is deprecated because it is no longer maintained.
5.0.0-rc.2.20475.17 17,819 10/13/2020 5.0.0-rc.2.20475.17 is deprecated because it is no longer maintained.
5.0.0-rc.1.20451.17 183,571 9/14/2020 5.0.0-rc.1.20451.17 is deprecated because it is no longer maintained.
5.0.0-preview.8.20414.8 9,381 8/25/2020 5.0.0-preview.8.20414.8 is deprecated because it is no longer maintained.
5.0.0-preview.7.20365.19 4,314 7/21/2020 5.0.0-preview.7.20365.19 is deprecated because it is no longer maintained.
5.0.0-preview.6.20312.15 2,113 6/25/2020 5.0.0-preview.6.20312.15 is deprecated because it is no longer maintained.
5.0.0-preview.5.20279.2 959 6/10/2020 5.0.0-preview.5.20279.2 is deprecated because it is no longer maintained.
5.0.0-preview.4.20257.10 1,588 5/18/2020 5.0.0-preview.4.20257.10 is deprecated because it is no longer maintained.
5.0.0-preview.3.20215.14 1,973 4/23/2020 5.0.0-preview.3.20215.14 is deprecated because it is no longer maintained.
5.0.0-preview.2.20167.3 878 4/2/2020 5.0.0-preview.2.20167.3 is deprecated because it is no longer maintained.
5.0.0-preview.1.20124.5 1,076 3/16/2020 5.0.0-preview.1.20124.5 is deprecated because it is no longer maintained.
3.1.32 635,558 12/13/2022
3.1.31 142,207 11/8/2022
3.1.30 682,691 10/11/2022
3.1.29 99,080 9/13/2022
3.1.28 148,801 8/9/2022
3.1.27 165,025 7/12/2022
3.1.26 151,378 6/14/2022
3.1.25 218,594 5/10/2022
3.1.24 181,985 4/11/2022
3.1.23 345,133 3/8/2022
3.1.22 914,557 12/14/2021
3.1.21 736,032 11/7/2021
3.1.20 627,177 10/11/2021
3.1.19 443,178 9/14/2021
3.1.18 1,029,440 8/10/2021
3.1.17 838,084 7/13/2021
3.1.16 745,915 6/8/2021
3.1.15 739,887 5/11/2021
3.1.14 1,585,503 4/6/2021
3.1.13 1,214,729 3/9/2021
3.1.12 966,009 2/9/2021
3.1.11 1,145,671 1/12/2021
3.1.10 2,980,870 11/9/2020
3.1.9 3,172,120 10/13/2020
3.1.8 3,198,467 9/8/2020
3.1.7 2,440,219 8/11/2020
3.1.6 2,378,038 7/14/2020
3.1.5 3,649,639 6/9/2020
3.1.4 2,264,680 5/12/2020
3.1.3 3,801,124 3/24/2020
3.1.2 2,840,117 2/18/2020
3.1.1 3,175,262 1/14/2020
3.1.0 3,316,076 12/3/2019
3.1.0-preview3.19555.2 3,397 11/13/2019 3.1.0-preview3.19555.2 is deprecated because it is no longer maintained.
3.1.0-preview2.19528.8 1,076 11/1/2019 3.1.0-preview2.19528.8 is deprecated because it is no longer maintained.
3.1.0-preview1.19508.20 1,681 10/15/2019 3.1.0-preview1.19508.20 is deprecated because it is no longer maintained.
3.0.3 226,580 2/18/2020 3.0.3 is deprecated because it is no longer maintained.
3.0.2 77,317 1/14/2020 3.0.2 is deprecated because it is no longer maintained.
3.0.0 4,199,321 9/23/2019 3.0.0 is deprecated because it is no longer maintained.
3.0.0-rc1.19457.4 15,613 9/16/2019 3.0.0-rc1.19457.4 is deprecated because it is no longer maintained.
3.0.0-preview9.19424.4 9,021 9/4/2019 3.0.0-preview9.19424.4 is deprecated because it is no longer maintained.
3.0.0-preview8.19405.7 36,261 8/13/2019 3.0.0-preview8.19405.7 is deprecated because it is no longer maintained.
3.0.0-preview7.19365.7 13,864 7/23/2019 3.0.0-preview7.19365.7 is deprecated because it is no longer maintained.
3.0.0-preview6.19307.2 7,209 6/12/2019 3.0.0-preview6.19307.2 is deprecated because it is no longer maintained.
3.0.0-preview5-19227-01 11,623 5/6/2019 3.0.0-preview5-19227-01 is deprecated because it is no longer maintained.
3.0.0-preview4-19216-03 2,234 4/18/2019 3.0.0-preview4-19216-03 is deprecated because it is no longer maintained.
3.0.0-preview3-19153-02 2,084 3/6/2019 3.0.0-preview3-19153-02 is deprecated because it is no longer maintained.
3.0.0-preview-19075-0444 7,339 1/29/2019 3.0.0-preview-19075-0444 is deprecated because it is no longer maintained.
3.0.0-preview-18579-0056 4,321 12/3/2018 3.0.0-preview-18579-0056 is deprecated because it is no longer maintained.
2.3.0 5,449 1/14/2025
2.2.0 12,610,015 12/3/2018 2.2.0 is deprecated because it is no longer maintained.
2.2.0-preview3-35497 23,542 10/17/2018 2.2.0-preview3-35497 is deprecated because it is no longer maintained.
2.2.0-preview2-35157 13,082 9/12/2018 2.2.0-preview2-35157 is deprecated because it is no longer maintained.
2.2.0-preview1-35029 13,780 8/22/2018 2.2.0-preview1-35029 is deprecated because it is no longer maintained.
2.1.1 7,160,692 6/18/2018
2.1.0 1,555,999 5/29/2018
2.1.0-rc1-final 36,718 5/6/2018 2.1.0-rc1-final is deprecated because it is no longer maintained.
2.1.0-preview2-final 13,206 4/10/2018 2.1.0-preview2-final is deprecated because it is no longer maintained.
2.1.0-preview1-final 28,423 2/26/2018 2.1.0-preview1-final is deprecated because it is no longer maintained.
2.0.3 266,434 5/7/2018 2.0.3 is deprecated because it is no longer maintained.
2.0.2 720,884 3/13/2018 2.0.2 is deprecated because it is no longer maintained.
2.0.1 1,296,028 11/14/2017 2.0.1 is deprecated because it is no longer maintained.
2.0.0 992,018 8/11/2017 2.0.0 is deprecated because it is no longer maintained.
2.0.0-preview2-final 10,149 6/28/2017 2.0.0-preview2-final is deprecated because it is no longer maintained.
2.0.0-preview1-final 20,860 5/10/2017 2.0.0-preview1-final is deprecated because it is no longer maintained.
1.1.3 135,575 9/20/2017 1.1.3 is deprecated because it is no longer maintained.
1.1.2 562,283 5/9/2017 1.1.2 is deprecated because it is no longer maintained.
1.1.1 277,324 3/6/2017 1.1.1 is deprecated because it is no longer maintained.
1.1.0 364,896 11/16/2016 1.1.0 is deprecated because it is no longer maintained.
1.1.0-preview1-final 5,687 10/24/2016 1.1.0-preview1-final is deprecated because it is no longer maintained.
1.0.5 23,554 11/14/2017 1.0.5 is deprecated because it is no longer maintained.
1.0.4 4,526 9/20/2017 1.0.4 is deprecated because it is no longer maintained.
1.0.3 57,199 5/9/2017 1.0.3 is deprecated because it is no longer maintained.
1.0.2 165,406 3/6/2017 1.0.2 is deprecated because it is no longer maintained.
1.0.1 14,480 12/12/2016 1.0.1 is deprecated because it is no longer maintained.
1.0.0 293,556 6/27/2016 1.0.0 is deprecated because it is no longer maintained.
1.0.0-rc2-final 15,821 5/16/2016 1.0.0-rc2-final is deprecated because it is no longer maintained.