簡體   English   中英

無法使用 Visual Studio 調試 NUnit 測試

[英]Can't debug NUnit tests with Visual Studio

嘗試在 VS2010 中調試 NUnit 測試並沒有在斷點處停止。 上次我嘗試調試測試時它正在工作(可能是 1 年前),但現在它不起作用。

我嘗試了以下方法:

我試過附加,重新檢查我的安裝,更新配置文件,使其使用 4.0 運行時,仍然沒有達到斷點。

我錯過了什么?

這是一個遲來的問題,但我還沒有看到直接在 Visual Studio 中調試 NUnit 測試的解決方案。 這很容易實現,無需任何第三方工具。 您所要做的就是配置您的測試項目(這只是一個普通的舊類庫項目),以便在您按下F5Ctrl-F5時它會啟動 NUnit 測試運行程序(只需運行,無需調試)。

特別是你必須配置你的項目屬性來啟動一個外部程序:

項目配置

這篇博文中很好地描述了逐步配置。 它建議您在嘗試運行庫項目時使用 NuGet 獲取 NUnit 測試運行器並配置項目以執行運行器。 就如此容易。 不使用通常不是免費的特定工具

您只能在 VS Studio 社區版本中調試 nunit 測試。 為此,您需要安裝Nunit3testAdpter 您可以在工具 -> 擴展和更新中添加它。 或來自 Nuget 包。

發生這種情況的原因有多種。 如果您的應用程序的目標框架與 NUnit 的不同,那么您將無法調試,因為測試實際上是由 nunit-agent.exe 運行的。

對我來說,我的應用程序使用 4.5,但 NUnit 使用 3.5。 (您可以從 NUnit GUI 應用程序之一中找到此信息 -> 幫助 -> 關於)

要解決此問題,請將 nunit.exe.config 文件更改為在配置部分中包含以下內容:

<startup>
  <requiredRuntime version="4.0.30319" />
</startup>

當您的 PDB 生成設置為embedded時,也會發生這種情況。 將其切換為full將允許 nunit 測試適配器在連接調試器的情況下啟動。 那時它可以切換回embedded並再次調試。

該設置位於項目屬性頁面上的“構建”選項卡中,然后單擊“高級”按鈕。 我總是在頂部選擇“所有配置”,因此我確保在構建發布配置程序集時也發出有用的 PDB(或嵌入信息)。 在此處輸入圖片說明

前幾天我在我的 NUnit 調試中沒有遇到斷點。 我花了一段時間才意識到有人將測試復制/粘貼到不同的文件中,而我正在運行與斷點所在的測試不同的測試。

我最近遇到了類似的問題。 將項目的平台更改為 AnyCPU 為我解決了這個問題。 也值得檢查:

1) 檢查 NUnit 的最新版本(我使用的是 2.5.7,更新到 2.6.2) 2) 測試項目的目標框架。 我使用的是 .NET 4.0(您可以在 VS2010 上的“屬性”->“應用程序”下找到它)

至少在 vs2010 之前,調試器只能調試 32 位應用程序,而不能調試 64 位應用程序。

使用 vs2010,我使用32 位 nunit.exe 版本並使用“附加到調試器”。 這對我很有效。

請升級 NUnit 測試擴展並關閉 Visual Studio,以便 Visx(可能是拼寫)運行並更新 NUnit 工具。 在此之后,您可以打開您的項目並運行 NUnit 測試項目。 它會運行。 我測試准確。

嘗試將測試更改為 x64。 從菜單做

Test -> Test Settings -> Default Processor Architecture -> x64

我認為您無法使用 Visual Studio 進行調試。 最好安裝 TestDriven.NET。

然后

  1. 將 BreakPoint 放在測試方法上
  2. 右鍵單擊測試方法。
  3. 選擇 TestWith->Debugger

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM