Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
| 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.