簡體   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