Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
| Property | Value |
|---|---|
| Identyfikator reguły | MSTEST0041 |
| Tytuł | Użyj elementu ConditionBaseAttribute w klasach testowych |
| Kategoria | Usage |
| Poprawka jest przełomowa lub nieprzełomowa | Non-breaking |
| Domyślnie włączone | Tak |
| domyślna ciężkość | Warning |
| wprowadzone w wersji | 3.8.0 |
| Czy istnieje poprawka kodu | Tak, od wersji MSTest 4.4 |
Przyczyna
Użycie atrybutu dziedziczonego z ConditionBaseAttribute w klasie, która nie jest oznaczona za pomocą TestClassAttribute.
Opis reguły
Atrybut dziedziczący po ConditionBaseAttribute ma znaczenie tylko wtedy, gdy jest zastosowany do klasy oznaczonej jako TestClassAttribute.
Warunki decydują o tym, czy narzędzie MSTest uruchamia odnaleziony element docelowy testu; nie deklarują same klasy testowej. W zwykłej klasie pomocniczej warunek może wyglądać jak zasada testowa bez udziału w odnajdywaniu lub wykonywaniu testów. Ta reguła wykrywa rozbieżność między deklarowaną polityką a testami, które program uruchamiający faktycznie rozpoznaje.
Jak naprawić naruszenia
W zależności od intencji dodaj brakujący element TestClassAttribute lub usuń atrybut dziedziczony z ConditionBaseAttribute.
Począwszy od msTest 4.4, poprawka kodu dodaje [TestClass] do typu, którego dotyczy zmiana.
Kiedy pomijać ostrzeżenia
Nie ignoruj ostrzeżenia z tej reguły.