共用方式為


MSTEST0024:請勿將 TestContext 儲存在靜態成員中

屬性
規則識別碼 MSTEST0024
職稱 請勿將 TestContext 儲存在靜態成員中
類別 使用方式
修正程式是中斷或非中斷 不中斷
預設為啟用 Yes
預設嚴重性 資訊
在版本中引進 3.4.0
是否有程式碼修正 No

原因

當指派給 static 參數的 TestContext 成員時,此規則會引發診斷。

檔案描述

傳遞至每個初始化方法的 TestContext 參數 ([AssemblyInitialize][ClassInitialize]) 是目前內容特有的,而且不會在每個測試執行上更新。 為了重複使用,儲存此 TextContext 物件大多時候會導致問題。

如何修正違規

請勿儲存 [AssemblyInitialize][ClassInitialize]TestContext 參數。

隱藏警告的時機

如果您確定行為符合您想要執行的作業,則可隱藏此規則的警告。

隱藏警告

如果您只想要隱藏單一違規,請將預處理器指示詞新增至原始程式檔以停用,然後重新啟用規則。

#pragma warning disable MSTEST0024
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0024

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

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

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