如何自定义WebApplicationFactory以从另一个项目目录使用“启动”?
使用启动程序,从下面的此项目中进行设置。创建集成测试以指向原始应用程序启动。
启动程序和应用程序设置位于此文件夹中, C:\ Test \ Test.WebAPI
new WebHostBuilder()
.UseContentRoot("C:\\Test\\Test.WebAPI")
.UseEnvironment("Development")
.UseConfiguration(new ConfigurationBuilder()
.SetBasePath("C:\\Test\\Test.WebAPI")
.AddJsonFile("appsettings.json")
.Build()).UseStartup<Startup>());
https://fullstackmark.com/post/20/painless-integration-testing-with-aspnet-core-web-api
答案 0 :(得分:0)
使用的Startup
仅基于传递给UseStartup
的类型参数之一。您只需引用正确的名称空间即可路由到要使用的类,就像其他任何类型引用一样。它与文件系统或它所在的项目无关(除了最初可能对名称空间有所贡献的那些东西之外)。
还请记住,WebApplicationFactory
的类型参数实际上是TEntryPoint
。它只是对项目名称空间的引用,并不表示正在使用哪个Startup
类。您可以使用Program
或项目中的任何类将其替换。