Unit testing VS 2013中使用HttpClient代理类对Web API进行单元测试
对于这个Web API,我有一些Web API和一些基于HttpClient的代理类 现在我想做一些单元测试,这些测试将与代理类一起运行,代理类将与Web API交互 在VS 2013中,我将所有这三个项目组织为一个解决方案。但这里的问题是,为了运行测试,我必须同时运行WebAPI项目。但是如果我运行Web API,我就不能运行测试。若我运行测试,Web API不会启动,因为每次我停止调试Web API时VS都会将其关闭 在我运行单元测试时,是否有可能继续运行Web API?在以前的VS版本中,即使您没有调试web应用程序,也可以在IIS express中保持其运行。如何在VS 2013中实现同样的目标Unit testing VS 2013中使用HttpClient代理类对Web API进行单元测试,unit-testing,asp.net-web-api,visual-studio-2013,dotnet-httpclient,Unit Testing,Asp.net Web Api,Visual Studio 2013,Dotnet Httpclient,对于这个Web API,我有一些Web API和一些基于HttpClient的代理类 现在我想做一些单元测试,这些测试将与代理类一起运行,代理类将与Web API交互 在VS 2013中,我将所有这三个项目组织为一个解决方案。但这里的问题是,为了运行测试,我必须同时运行WebAPI项目。但是如果我运行Web API,我就不能运行测试。若我运行测试,Web API不会启动,因为每次我停止调试Web API时VS都会将其关闭 在我运行单元测试时,是否有可能继续运行Web API?在以前的VS版本中,
目前我只找到了一个可能的解决方案——打开两个Visual Studio,在其中一个中运行Web API,在另一个中运行测试。但这并不方便,我相信有更优雅的解决方案 使用内存托管API。这样,它将在同一进程中运行,它将生成零网络流量,并且您的测试将运行得更快
除此之外,我总是在不同的VS实例中运行Web API。在我看来,这是一个更加优雅的解决方案。您也可以在不进行调试的情况下启动项目。这将启动应用程序的实例,但仍然允许您运行单元测试 从调试开始: 1.右键单击要运行的项目。 A.选择“设置为启动项目”。 2.转到“调试”菜单,然后单击“开始而不调试”
这将启动您的API实例,并允许您测试您的端点。我也有同样的问题。我的问题是如何在测试期间在一个解决方案下运行测试和WebAPI项目。我现在要做的是运行两个VS实例,一个用于WebAPI,一个用于UnitTest