在ASP.NET Core 3中,禁用集成测试时的自动重定向可以通过以下步骤实现:
Startup.cs
文件,在 ConfigureServices
方法中添加以下代码来配置应用程序服务:public void ConfigureServices(IServiceCollection services)
{
// 省略其他代码...
services.AddMvc(options =>
{
options.EnableEndpointRouting = false; // 禁用端点路由
});
}
Configure
方法中添加以下代码来配置应用程序中间件:public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// 省略其他代码...
app.UseMvc(); // 使用MVC中间件
// 省略其他代码...
}
[Collection("Sequential")]
属性以确保测试按顺序运行。[Collection("Sequential")]
public class MyIntegrationTests
{
// 省略其他代码...
}
TestServer
类继承,并且在构造函数中创建 TestServer
实例。public class MyIntegrationTests : IDisposable
{
private readonly TestServer _server;
private readonly HttpClient _client;
public MyIntegrationTests()
{
var webHostBuilder = new WebHostBuilder()
.UseStartup<Startup>();
_server = new TestServer(webHostBuilder);
_client = _server.CreateClient();
}
public void Dispose()
{
_client.Dispose();
_server.Dispose();
}
// 省略其他代码...
}
通过以上步骤,你可以在ASP.NET Core 3中禁用集成测试时的自动重定向。这样,当你运行集成测试时,请求将不会自动重定向到其他地址。
领取专属 10元无门槛券
手把手带您无忧上云