Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
| 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.