我想对我的 Controller 进行单元测试,但在我的 Global.asax.cs 文件中,我必须注册诸如 JSON 格式化程序、自定义 header 和 AutoMapper 映射之类的内容。由于 VS 单元测试功能是通过 DLL 而不是 API 来测试 Controller ,因此不会创建 HttpApplication 并且我的很多代码无法测试。我怎样才能解决这个问题?
测试 JsonFormatter 输出的最简单方法是什么,因为它实际上不是 Controller 的一部分,但也可能是异常的来源?
最佳答案
我遇到过同样的问题。
对于 autoMaopper,我运行了我的 MapperConfig.Initialize();在我的单元测试的 Setup 方法中(我使用 NUnit)
我也打电话
"WebApiConfig.Register(GlobalConfiguration.Configuration);"在我的设置方法中
但是我的 Controller 中对 Configuration.Services.GetTraceWriter() 的调用返回空引用异常。所以我不能帮助那个。
关于asp.net-mvc - 如何使用全局配置对 MVC/Web API 进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13806452/