访问配置文件时 ReSharper 中的批处理单元测试失败

Failing Batch Unit Tests in ReSharper on accessing config file

我在使用 ReSharper 进行单元测试 (NUnit) 运行 时遇到问题。我可以单独执行每个测试,也可以执行项目中的所有测试。当我执行解决方案中的所有测试时,问题就开始了。使用 NUnit 适配器和 VS 单元测试资源管理器可以完美地执行相同的测试 运行。我已经设法确定,测试在访问配置文件时失败了。将负责读取值的方法更改为硬编码,我没有遇到任何问题,但这不是解决问题的方法。我可以创建单独的 class,只是为了读取配置值,但我认为通过 class(mvc 控制器)中的方法获取它们是非常好的。我一直在努力寻找解决这些问题的答案,因为避免使用配置文件听起来有点傻——这首先是该文件的唯一目的。

您是否 运行 在多个项目中进行测试?如果是这样,请在 ReSharper → 选项 → 单元测试中检查 ReSharper 的 "Use separate AppDomain for each assembly"。有一种优化可以将多个程序集加载到同一个 AppDomain 中,但这意味着只能有一个配置文件,而且它可能是错误的。使用单独的 AppDomain 意味着每个程序集都将获得自己的配置文件。