2010-04-15 108 views
44

我在Visual Studio 2010中編寫了一些單元測試。我可以使用「在當前上下文中運行所有測試」來運行所有測試。但是,如果我編寫新的單元測試,它不會被環境拾取 - 換句話說,我無法在測試列表編輯器中找到它,通過運行所有測試或其他任何地方。如果我卸載項目然後重新加載它;新的測試可以運行。Visual Studio 2010不發現新的單元測試

當我添加一個單元測試時,我只是添加一個新的方法到一個已經存在的TestClass並用[TestMethod]屬性裝飾它 - 沒有什麼奇特的。

什麼可能會導致此行爲,以及如何使其工作?

+0

您正在做什麼導致問題的步驟?有幾種運行測試的方法,所以很難提出一個好的答案。 – 2010-04-25 14:13:22

+0

@James,我使用工具欄中的「在當前上下文中運行測試」或「在解決方案中運行所有測試」。這些的正常行爲是包括我添加的任何新測試。 – driis 2010-04-26 12:34:50

回答

73

我終於明白了這個問題。在測試工具 - >測試項目下的選項中,有一個選項「禁用測試方法的背景發現」。它已打開 - 我不知道如何發生,但刪除複選標記並重新啓動Visual Studio解決了此問題。

+6

謝謝!自升級以來,這一直令人沮喪。爲什麼在這個世界上發現默認禁用發現? – sgwill 2010-06-12 20:19:26

+3

謝謝你,我節省了很多時間。 – Signcodeindie 2010-11-11 08:41:11

+0

說真的,謝謝! – ahsteele 2011-03-13 01:05:45

3

我在調試模式下構建時遇到了這個問題。當我將它切換到爲我修復它的發佈模式。

0

我有這個問題,下面的選項2爲我解決了它。

  1. 刪除任何app.config文件(不知道爲什麼,但MS論壇之一有幾個這些職位與此解決方案)和

  2. 確保解決方案的配置屬性中的項目設置建立!

1

我在Visual Studio 2012中有類似的問題,但是沒有解決方案。我正在開發一個64位應用程序,解決方案是選擇: -

Test -> Test Settings -> Default Processor Architecture -> X64