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 | MSTEST0050 |
| Title | Globalne urządzenie testowe powinno być prawidłowe |
| Category | Usage |
| Poprawka jest przełomowa lub nieprzełomowa | Non-breaking |
| Domyślnie włączone | Yes |
| domyślna ciężkość | Ostrzeżenie w programie MSTest 4.3 lub nowszym; błąd we wcześniejszych wersjach |
| wprowadzone w wersji | 3.10.0 |
| Czy istnieje poprawka kodu | No |
Cause
Globalna metoda urządzenia testowego (oznaczona jako GlobalTestInitializeAttribute lub GlobalTestCleanupAttribute) nie jest zgodna z wymaganym układem lub ma nieprawidłową konfigurację.
Opis reguły
GlobalTestInitialize i GlobalTestCleanup są wykonywane przed i po każdym teście w całym zespole. Umożliwiają one zastosowanie współużytkowanej konfiguracji lub oczyszczania na test bez dodawania wywołania zwrotnego do każdej klasy testowej:
| Requirement | Powód |
|---|---|
Metoda jest public static. |
Narzędzie MSTest wywołuje globalne wywołanie zwrotne bez wystąpienia klasy deklaratywnej. Wywołanie zwrotne może być uruchamiane dla testów w innych klasach, więc nie może zależeć od deklarowanych pól dla poszczególnych testów klasy. |
Metoda jest zwykła i nie jest abstract ani ogólna. |
Narzędzie MSTest wymaga treści metody wywoływanej bez specjalnych reguł wywołania lub argumentów typu metody. |
Metoda przyjmuje dokładnie jeden TestContext parametr. |
Parametr identyfikuje bieżące wykonanie testu, nawet jeśli test należy do innej klasy. |
Zwracany typ to void, Task lub ValueTask, a metoda nie jest async void. |
Narzędzie MSTest musi czekać na instalację lub oczyszczanie i obserwować błędy, zanim przejdzie do cyklu życia bieżącego testu. |
Typ deklarowania to publiczna, niegeneryczna klasa oznaczona atrybutem [TestClass] lub atrybutem pochodnym. |
Narzędzie MSTest odnajduje globalne wywołania zwrotne za pośrednictwem znanego kontenera klasy testowej. Klasa może być statyczna, ale nie musi być, ponieważ samo wywołanie zwrotne nie wymaga wystąpienia. |
Aby sprawdzić kolejność callbacków, zobacz Globalny cykl życia testów.
Jak naprawić naruszenia
Upewnij się, że globalne metody urządzeń testowych są zgodne z wymaganym układem.
Kiedy pomijać ostrzeżenia
Nie ignoruj ostrzeżeń z tej zasady. Nieprawidłowe globalne metody oprawy testów nie będą wykonywane w czasie wykonywania.