main
wanggaofeng 1 year ago
parent f203a90a54
commit ff2ddc44af

@ -23,6 +23,7 @@
<PackageReference Include="System.Net.Http.Json" Version="8.0.0" /> <PackageReference Include="System.Net.Http.Json" Version="8.0.0" />
<PackageReference Include="xunit" Version="2.6.6" /> <PackageReference Include="xunit" Version="2.6.6" />
<PackageReference Include="Xunit.DependencyInjection" Version="8.9.1" /> <PackageReference Include="Xunit.DependencyInjection" Version="8.9.1" />
<PackageReference Include="Xunit.DependencyInjection.AspNetCoreTesting" Version="8.2.1" />
<PackageReference Include="Xunit.DependencyInjection.Logging" Version="8.1.0" /> <PackageReference Include="Xunit.DependencyInjection.Logging" Version="8.1.0" />
<PackageReference Include="xunit.runner.console" Version="2.6.6"> <PackageReference Include="xunit.runner.console" Version="2.6.6">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>

@ -115,7 +115,6 @@ namespace HttpClientStudy.UnitTest.HttpClients
Content = content, Content = content,
}; };
var response = await GetHttpClient.SendAsync(requestMessage); var response = await GetHttpClient.SendAsync(requestMessage);
response.EnsureSuccessStatusCode(); response.EnsureSuccessStatusCode();

@ -1,14 +1,27 @@
using System; //using System;
using System.Collections.Generic; //using System.Collections.Generic;
using System.Linq; //using System.Linq;
using System.Text; //using System.Text;
using System.Threading.Tasks; //using System.Threading.Tasks;
//using Microsoft.AspNetCore.Builder;
//using Microsoft.AspNetCore.Hosting;
//using Microsoft.AspNetCore.TestHost;
//using Microsoft.Extensions.Configuration;
//using Microsoft.Extensions.DependencyInjection;
//using Microsoft.Extensions.Hosting;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.TestHost; using Microsoft.AspNetCore.TestHost;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Xunit;
using Xunit.DependencyInjection.AspNetCoreTesting;
using Xunit.DependencyInjection.Logging;
namespace HttpClientStudy.UnitTest namespace HttpClientStudy.UnitTest
{ {
/// <summary> /// <summary>
@ -31,29 +44,37 @@ namespace HttpClientStudy.UnitTest
/// <param name="hostBuilder"></param> /// <param name="hostBuilder"></param>
public void ConfigureHost(IHostBuilder hostBuilder) public void ConfigureHost(IHostBuilder hostBuilder)
{ {
hostBuilder hostBuilder
.ConfigureHostConfiguration(builder => { }) .ConfigureWebHost
.ConfigureAppConfiguration((context, builder) => { }); (webHostBuilder => webHostBuilder
.UseTestServerAndAddDefaultHttpClient()
.UseStartup<WebApiStartup>()
);
//hostBuilder
// .ConfigureHostConfiguration(builder => { })
// .ConfigureAppConfiguration((context, builder) => { });
//hostBuilder.ConfigureWebHost(webHostBuilder => hostBuilder.ConfigureWebHost(webHostBuilder =>
//{ {
// webHostBuilder webHostBuilder
// .UseTestServer() .UseTestServer(options => options.PreserveExecutionContext = true)
// .ConfigureTestServices(a => { }); .ConfigureTestServices(a => { })
// //webHostBuilder.UseTestServer(options => options.PreserveExecutionContext = true); .UseStartup<WebApiStartup>();
// //配置默认配置项 //配置默认配置项
// //webHostBuilder.ConfigureAppConfiguration((context, configBuilder) => //webHostBuilder.ConfigureAppConfiguration((context, configBuilder) =>
// //{ //{
// // configBuilder.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); // configBuilder.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
// // configBuilder.AddJsonFile($"appsettings.{context.HostingEnvironment.EnvironmentName}.json", optional: true, reloadOnChange: true); // configBuilder.AddJsonFile($"appsettings.{context.HostingEnvironment.EnvironmentName}.json", optional: true, reloadOnChange: true);
// //}); //});
// //webHostBuilder.ConfigureServices(services => //webHostBuilder.ConfigureServices(services =>
// //{ //{
// // services.AddHealthChecks(); // services.AddHealthChecks();
// //}); //});
//}); });
} }
/// <summary> /// <summary>
@ -64,5 +85,15 @@ namespace HttpClientStudy.UnitTest
{ {
//services.AddTransient<IDependency, DependencyClass>(); //services.AddTransient<IDependency, DependencyClass>();
} }
private class WebApiStartup
{
public void ConfigureServices(IServiceCollection services) => services.AddLogging(lb => lb.AddXunitOutput());
public void Configure(IApplicationBuilder app)
{
app.Run(static context => context.Response.WriteAsync("xxxxxx"));
}
}
} }
} }

Loading…
Cancel
Save