本文列出並說明與診斷功能相關的所有 Microsoft.Testing.Platform 延伸模組。
內建選項
下列 平台選項 提供針對測試應用程式進行疑難解答的實用資訊:
--info--diagnostic--diagnostic-filelogger-synchronouswrite--diagnostic-verbosity--diagnostic-output-fileprefix--diagnostic-output-directory
您也可以使用環境變數來啟用診斷記錄:
| 環境變數名稱 | 描述 |
|---|---|
TESTINGPLATFORM_DIAGNOSTIC |
若設為 1,則啟用診斷記錄功能。 |
TESTINGPLATFORM_DIAGNOSTIC_VERBOSITY |
定義冗長層級。 可用的值為 Trace、Debug、Information、Warning、Error或 Critical。 |
TESTINGPLATFORM_DIAGNOSTIC_OUTPUT_DIRECTORY |
診斷記錄的輸出目錄,如果未指定的話,檔案會產生在預設的 TestResults 目錄中。 |
TESTINGPLATFORM_DIAGNOSTIC_OUTPUT_FILEPREFIX |
記錄檔名稱的前置詞。 預設為 "log_"。 |
TESTINGPLATFORM_DIAGNOSTIC_FILELOGGER_SYNCHRONOUSWRITE |
強制內建檔案記錄器同步寫入記錄。 適用於您不想遺失任何日誌條目的情境(如果進程崩潰)。 這會讓測試執行變慢。 |
注意
環境變數的優先順序高於命令行自變數。
系統崩潰資料轉儲
此擴充功能可讓您在程序當機時建立當機傾印檔案。 此延伸模組隨附於 Microsoft.Testing.Extensions.CrashDump NuGet 套件中。
若要設定當機傾印檔案生成,請使用下列選項:
| 選擇 | 描述 |
|---|---|
--crashdump |
當測試主機進程崩潰時產生轉儲檔案。 .NET 6.0+ 支援。 |
--crashdump-filename |
指定轉存的檔名。 |
--crashdump-type |
指定轉儲的類型。 有效值為 Mini、Heap、TriageFull。 預設值為 Full。 如需詳細資訊,請參閱 迷你傾印類型。 |
謹慎
此延伸模組與 .NET Framework 不相容,而且會以無訊息方式忽略。 針對 .NET Framework 支援,您可以使用 Sysinternals ProcDump 啟用事後調試。 如需詳細資訊,請參閱 啟用事後偵錯:Window Sysinternals ProcDump。 事後偵錯解決方案也會收集 .NET 的進程損毀資訊,因此如果您以 .NET 和 .NET Framework 測試應用程式為目標,則可以避免使用延伸模組。
暫停記憶體傾印
此擴充功能可讓您在超時後建立轉儲檔案。 此延伸模組隨附於 Microsoft.Testing.Extensions.HangDump 套件中。
若要設定懸掛傾印檔案的產生,請使用下列選項:
| 選擇 | 描述 |
|---|---|
--hangdump |
產生傾印檔案,以應對測試主機程序停止回應。 |
--hangdump-filename |
指定轉存的檔名。 |
--hangdump-timeout |
指定在超時後產生傾印的時間。 逾時值以以下其中一種格式指定:1.5h、1.5hour、1.5hours90m、90min、90minute、90minutes5400s、5400sec、5400second5400seconds。 預設為 30m(30 分鐘)。 |
--hangdump-type |
指定轉儲的類型。 有效值為 Mini、Heap、TriageFull。 預設值為 Full。 如需詳細資訊,請參閱 迷你傾印類型。 |