首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么使用OWIN TestServer?

为什么使用OWIN TestServer?
EN

Stack Overflow用户
提问于 2017-09-07 05:12:54
回答 1查看 3.9K关注 0票数 8

本文展示了如何在内存中托管整个web API堆栈,以便使用OWIN进行测试:

http://www.davidwhitney.co.uk/Blog/2015/01/07/testing-an-asp-net-webapi-app-in-memory/

本文展示了如何将OWIN TestServer用于单元测试控制器:

https://blog.jcorioland.io/archives/2014/04/01/using-owin-to-test-your-web-api-controllers.html

我看到的区别是TestServer.CreateWebApp.Start<Startup>的使用

关键的区别是什么,你为什么要选择一个而另一个?

这仅仅是web调用的单元测试控制器方法与内存中的端到端集成测试之间的区别吗?

EN

回答 1

Stack Overflow用户

发布于 2018-01-22 14:29:16

在执行TestServer.Create<Startup>()时,只需使用启动文件启动内存中的实例。HttpClient在TestServer中已经足够用于内存中的集成测试了.我们在一个进程中启动所有的测试服务器,所以这不是一个限制(目前有4个测试服务器一起运行)。

当你做WebApp.Start<Startup>(Settings.WebApiUrl)时--你在你提供的网址上启动一个网络应用程序。还有另一个过载,它接受选项: urls和设置。我们只在特定情况下使用这一选项。例如:

  1. 托管SignalR客户端的url --如果没有URL,它将无法工作,在那里它可以运行
  2. 基于合同的测试-供应商方合同的验证。这也只能通过启动的WebApp来完成。(我们正在使用Pact.Net)
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46088291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档