Udostępnij za pomocą


MSTEST0054: Użyj Tokenu Anulowania z elementu TestContext.CancellationToken

Majątek Wartość
Identyfikator reguły MSTEST0054
Tytuł Używaj TestContext.CancellationToken zamiast TestContext.CancellationTokenSource.Token
Kategoria Usage
Poprawka jest przełomowa lub nieprzełomowa Non-breaking
Domyślnie włączone Tak
domyślna ciężkość Informacje
wprowadzone w wersji 3.11.0
Czy istnieje poprawka kodu Tak

Przyczyna

Uzyskiwanie dostępu do CancellationToken za pośrednictwem TestContext.CancellationTokenSource.Token zamiast używania atrybutu TestContext.CancellationToken.

Opis reguły

Narzędzie MSTest udostępnia token anulowania za pośrednictwem TestContext.CancellationToken właściwości . Dostęp do TestContext.CancellationTokenSource nie jest zalecany i może zostać usunięty w przyszłej wersji. Łatwiej jest również używać funkcji TestContext.CancellationToken w porównaniu z .TestContext.CancellationTokenSource.Token

Jak naprawić naruszenia

Użyj właściwości TestContext.CancellationToken zamiast TestContext.CancellationTokenSource.Token.

Na przykład zmień następujące elementy:

public TestContext TestContext { get; set; }

[TestMethod]
public async Task TestMethod()
{
    await Task.Delay(1000, TestContext.CancellationTokenSource.Token);
}

Do tego:

public TestContext TestContext { get; set; }

[TestMethod]
public async Task TestMethod()
{
    await Task.Delay(1000, TestContext.CancellationToken);
}

Kiedy pomijać ostrzeżenia

Nie pomijaj ostrzeżeń z tej reguły. Użycie CancellationTokenSource właściwości nie jest zalecane i może zostać usunięte w przyszłej wersji.