2015-09-02 107 views
6

我遇到了通過NUnit運行我的測試的問題。我不知道爲什麼,但每次測試運行兩次。重點是在另一臺筆記本電腦上,它通常只運行一次。Nunit每次運行兩次測試

有沒有人有同樣的問題,並知道如何處理它?

回答

0

多次加載測試容器(.dll)時,通常會出現此問題。

如果從內部具有bin和obj文件夾的根floder加載測試容器,這是Visual Studio項目的典型設置,則會發生這種情況。

嘗試限制從bin文件夾加載測試容器。

+0

其實它不起作用。爲什麼在其他筆記本電腦上它的工作正常,但在這一個沒有。 – MrPug

+0

您是否在尋找解決方案文件夾中的dll文件?您也可以構建兩種不同的配置,例如bin \ Release + bin \ Debug –

+0

僅用於一個。 – MrPug

7

我有同樣的問題。在我的情況下,我安裝了NUnit Test Runner的Visual Studio extensionNuGet package。看起來他們都在執行測試,導致測試運行兩次。

卸載Visual Studio擴展程序解決了該問題。

+0

我有Visual Studio擴展和nuget packege。刪除nuget packaget不能解決我的問題。我會嘗試相反的。 –

+0

如果以上內容無法解決您的問題,請在控制面板中的**程序和功能**中查看並從中卸載Nunit安裝。 –

+0

對我而言,我卸載了nuget包並重新啓動了VS. – curob

0

當順序測試意外地具有相同的測試參數時,測試的運行也可以被複制。

[Test, Sequential] 
      public void Integr_MController_DeleteGet_ReturnsViewAndModel(
[Values("[email protected]", "[email protected]")] string firstEmail, 


[Values("[email protected]", "[email protected]")] HTTPstring updatedEmail) {test code} 

將運行相同的測試兩次,並將顯示在TestExplorer作爲相同的測試。

0

我有一個類似的問題,運行與Visual Studio NUnit3亞軍的測試,測試將只運行一次,但在NUnit3-Command.exe命令行運行時,測試將運行兩次。我花了太長時間追逐這一點。我注意到命令行參賽者報告2次測試運行並得出結論,這是dll中的一個問題。這聽起來很瘋狂,但我將所有的測試代碼複製到一個新的類中,刪除了舊的,編譯的,現在測試在兩種情況下都只運行一次。

0

在我的情況下,它有一個基類和派生類都具有TestFixture屬性。派生類中的所有測試都會運行兩次。

通過僅將屬性放在基類上來修復它。