Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
| Eigentum | Wert |
|---|---|
| Regel-ID | MSTEST0056 |
| Title | Verwenden der DisplayName-Eigenschaft für Anzeigenamen der Testmethode |
| Kategorie | Usage |
| Die Behebung ist eingreifend oder nicht eingreifend | Non-breaking |
| Standardmäßig aktiviert | Yes |
| Voreingestellte Schwere | Warnung |
| wurde in Version eingeführt. | 4.0.0 |
| Gibt es eine Codekorrektur | Yes |
Ursache
Ein Testmethoden-Attribut verwendet anstelle der DisplayName Eigenschaft ein Zeichenfolgenkonstruktorargument.
Regelbeschreibung
Wenn Sie einen benutzerdefinierten Anzeigenamen für eine Testmethode angeben, sollten Sie die DisplayName Eigenschaft verwenden, anstatt eine Zeichenfolge als Konstruktorargument zu übergeben. In MSTest 4.0 und höher wird das Zeichenfolgenkonstruktorargument für Quellinformationen (Aufruferdateipfad) anstelle des Anzeigenamens verwendet, was eine Bruchänderung gegenüber MSTest 3.x darstellt. Durch die Verwendung der DisplayName Eigenschaft wird sichergestellt, dass Ihr Code ordnungsgemäß funktioniert und potenzielle Verwirrungen vermieden wird.
[TestClass]
public class TestClass
{
[TestMethod("My Test Name")] // Violation
public void TestMethod()
{
// Test code
}
}
Wie man Verstöße behebt
Ersetzen Sie das Konstruktorargument durch die DisplayName Eigenschaft.
[TestClass]
public class TestClass
{
[TestMethod(DisplayName = "My Test Name")]
public void TestMethod()
{
// Test code
}
}
Wann sollten Warnungen unterdrückt werden?
Unterdrücken Sie keine Warnungen von dieser Regel. Die Verwendung der DisplayName Eigenschaft ist die einzige Möglichkeit, benutzerdefinierte Anzeigenamen für Testmethoden anzugeben. Wenn Sie beabsichtigen, einen Wert für den Parameter für den Aufruferdateipfad explizit zu übergeben, anstatt einen Anzeigenamen festzulegen, können Sie diese Warnung unterdrücken, dies ist jedoch selten erforderlich.
Unterdrücken einer Warnung
Um nur eine einzelne Verletzung zu unterdrücken, fügen Sie der Quelldatei Präprozessoranweisungen hinzu, um die Regel zu deaktivieren und dann wieder zu aktivieren.
#pragma warning disable MSTEST0056
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0056
Um die Regel für eine Datei, einen Ordner oder ein Projekt zu deaktivieren, setzen Sie dessen Schweregrad auf none in der Konfigurationsdatei fest.
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0056.severity = none
Weitere Informationen finden Sie unter Vorgehensweise: Unterdrücken von Codeanalyse-Warnungen.