共用方式為


MSTEST0001:明確啟用或停用測試平行處理

屬性
規則識別碼 MSTEST0001
標題 明確啟用或停用測試平行處理
類別 效能
修正程式是中斷或非中斷 不中斷
預設為啟用 Yes
預設嚴重性 資訊
在版本中引進 3.2.0
是否有程式碼修正 No

原因

組件會以 [assembly: Parallelize][assembly: DoNotParallelize] 屬性標記。

檔案描述

根據預設,MSTest 會在相同的組件內循序執行測試,這可能會導致嚴重的效能限制。 建議啟用組件屬性 [assembly: Parallelize] 以平行方式執行測試,或如果已知組件不可平行處理,請明確使用組件層級屬性 [assembly: DoNotParallelize]

[assembly: Parallelize] 的預設組態相當於 [assembly: Parallelize(Scope = ExecutionScope.ClassLevel)],這表示平行處理會在類別層設定 (而非方法層),且會盡可能使用更多的執行緒 (視內部實作而定)。

如何修正違規

若要修正此規則的違規,請新增 [assembly: Parallelize][assembly: DoNotParallelize] 屬性。 建議您使用 [assembly: Parallelize(Scope = ExecutionScope.MethodLevel)] 來獲得最佳平行處理。

隱藏警告的時機

請勿隱藏此規則的警告。 許多程式庫可以在啟用平行處理時受益於大幅提升效能。 當測試應用程式設計成防止平行處理的方式時,明確設定屬性可協助新開發人員了解程式庫的限制。

隱藏警告

無法內聯抑制對此條規則的違規行為。

若要停用檔案、資料夾或項目的規則,請將其嚴重性設定為 組態檔中的 none

[*.{cs,vb}]
dotnet_diagnostic.MSTEST0001.severity = none

如需詳細資訊,請參閱 如何抑制程式碼分析警告。