System.Web.HttpServer是否对ASP.Net WebAPI单元测试表现良好?

时间:2012-11-26 14:41:30

标签: c# .net asp.net-mvc asp.net-web-api

我一直在研究ASP.Net WebAPI项目的单元测试。我显然可以根据它返回的数据轻松测试控制器Get方法,但是我正在测试像header这样的东西。

之前我使用过NancyFX,这提供了一个很好的干净测试功能,即使没有设置客户端/服务器也会返回正确的HTTP响应。

我在WebAPI中可以看到的替代方法是使用HttpServer和HttpConfiguration在内存中运行服务器。

如果我这样做,我想知道是否有人知道它的表现是什么。如果不是那么好,那么不幸的是它会变成一个集成测试。

简单的场景,我想测试响应头内容类型。如果没有内存配置,我不确定你是如何在WebAPI中测试的那样

1 个答案:

答案 0 :(得分:1)

我在1秒钟内运行了80次测试。我认为表现足够。

注意:如果您没有在与控制器本身相同的项目中托管api测试,则需要覆盖控制器创建。我使用StructureMap依赖项解析器执行此操作,该解析器还实现了IHttpControllerActivator接口,因此控制器从容器而不是默认激活器中重新调用。