繁体   English   中英

Resharper测试运行程序在“全部运行”中找不到连接字符串

[英]Resharper test runner can't find connection string on Run All

我有一个类似这样的Visual Studio项目结构:

Base (no connection string)
Data (connection string to Sql Server, references Base)
Logic (connection string to Sql Server, references Base & Data)
Base.Test (no connection string, references Base)
Logic.Test (connection string to Sql Server, references Base & Data & Base.Test)

当我使用Resharper在每个测试项目上分别运行所有单元测试时,它们通过了。 但是,当我在所有项目中运行所有单元测试时,基础测试首先通过,然后逻辑测试失败,因为它找不到连接字符串。

当我调试时,我可以看到它实际上有一个到SqlExpress的连接字符串,我收集到的是由Entity Framework生成的,它似乎来自于链上另一个项目?

如何在Run All上从app.config中获取Logic.Test项目以使用其自己的连接字符串?

我相信很久以前就有类似的问题,而且我似乎还记得我不得不更改一些ReSharper设置( ReSharper > Tools -> Options | Tools | Unit testing

我现在正在检查我的选项,并且没有选中卷影副本,并且选中了单独的AppDomain。

您应该尝试一下。

编辑

不管阴影复制设置如何,只要勾选“ 单独的AppDomain”复选框就足够了。

另一种解决方案是将app.config复制到Base.Test项目中。 从概念上讲该项目与数据库工作完全无关,这并不理想,但是该解决方案在开发环境和TeamCity测试运行程序中均有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM