Condividi tramite


MSTEST0054: usare il token di annullamento da TestContext.CancellationToken

Proprietà Value
ID Regola MSTEST0054
Titolo Usare TestContext.CancellationToken anziché TestContext.CancellationTokenSource.Token
Categoria Usage
La correzione causa un'interruzione o meno Non causa un'interruzione
Abilitato per impostazione predefinita Yes
Gravità predefinita Informazioni
Introdotto nella versione 3.11.0
È presente una correzione del codice Yes

Motivo

Accesso CancellationToken tramite TestContext.CancellationTokenSource.Token invece di usare la TestContext.CancellationToken proprietà .

Descrizione regola

MSTest fornisce un token di annullamento tramite la TestContext.CancellationToken proprietà . L'accesso TestContext.CancellationTokenSource non è consigliato e potrebbe essere rimosso in una versione futura. È anche più semplice da usare TestContext.CancellationToken rispetto a TestContext.CancellationTokenSource.Token.

Come correggere le violazioni

Utilizzare la TestContext.CancellationToken proprietà anziché TestContext.CancellationTokenSource.Token.

Ad esempio, modificare il codice seguente:

public TestContext TestContext { get; set; }

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

In questa:

public TestContext TestContext { get; set; }

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

Quando eliminare gli avvisi

Non eliminare gli avvisi da questa regola. L'uso della CancellationTokenSource proprietà non è consigliato e potrebbe essere rimosso in una versione futura.