Owin.Testing TestServer与Windsor容器和Moq

时间:2016-11-04 21:40:03

标签: integration-testing owin moq castle-windsor windsor-3.0

我有一个WebApi,我使用Windsor Castle作为IoC框架。我正在使用Owin库,并创建了一个启动文件来集中API的配置。一切都按预期工作。

我有集成测试,我正在使用Owin.Testing库,服务器是使用继承真实的测试启动类启动的。已成功为TestServer配置Windsor容器。集成测试正在针对正在运行的自托管服务器执行Web请求。一切正常。

使用测试服务器时有两件事无效:

  • 即使我为POST请求传递了无效的json正文,控制器的ModelState也始终有效。使用IIS托管时,它按预期工作。知道测试服务器有什么问题吗?
  • 我正在使用VS测试运行器,并且在[ClassInitialize]方法中初始化Owin TestServer。我不想在每次测试后创建一个新的测试服务器,因为Windsor容器初始化非常昂贵。有些测试我需要模拟一些第三方服务(通过使用容器和Moq的Register方法)。在每次测试结束时,我想从容器中回滚所有在执行测试范围内完成的模拟。有可能以某种方式这样做吗?我试图在范围内注册但不起作用。

由于

0 个答案:

没有答案