MSTEST0035: [DeploymentItem] można określić tylko w klasie testowej lub metodzie testowej

Właściwość Wartość
Identyfikator reguły MSTEST0035
Tytuł [DeploymentItem] można określić tylko dla klasy testowej lub metody testowej.
Kategoria Użycie
Poprawka jest niekompatybilna lub kompatybilna wstecz Niezgodność
Domyślnie włączone Tak
Ważność domyślna Ostrzeżenie rozpoczynające się od wersji 4.0.0, informacje przed
Wprowadzone w wersji 3.6.0
czy istnieje poprawka kodu Nie.

Przyczyna

Ta reguła zgłasza diagnostykę, gdy [DeploymentItem] nie ustawiono w klasie testowej ani w metodzie testowej.

Opis reguły

[DeploymentItem] Opisuje pliki lub katalogi wymagane przez test w lokalizacji wdrożenia. Narzędzie MSTest odczytuje metadane wdrożenia z klas testowych i metod testowych, aby umożliwić skojarzenie tych zasobów z odnalezionymi testami.

Atrybut w metodzie pomocnika lub cyklu życia nie dostarcza metadanych wdrożenia dla tych testów. Oczekiwane pliki mogą być wtedy niedostępne, gdy test przebiegnie, powodując awarię środowiska zamiast wykonywania zamierzonego zachowania.

Jak naprawić naruszenia

Upewnij się, że atrybut [DeploymentItem] jest określony w klasie testowej lub metodzie testowej, w przeciwnym razie usuń atrybut.

Kiedy pomijać ostrzeżenia

Nie zaleca się wyciszania ostrzeżeń z tej reguły, ponieważ [DeploymentItem] element zostanie zignorowany.

Pomijanie ostrzeżenia

Jeśli chcesz po prostu pominąć pojedyncze naruszenie, dodaj dyrektywy preprocesora do pliku źródłowego, aby wyłączyć, a następnie ponownie włączyć regułę.

#pragma warning disable MSTEST0035
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0035

Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none w pliku konfiguracji .

[*.{cs,vb}]
dotnet_diagnostic.MSTEST0035.severity = none

Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia analizy kodu.