Delen via


MSTEST0003: Testmethoden moeten een geldige indeling hebben

Eigenschappen Weergegeven als
Regel-id MSTEST0003
Titel Testmethoden moeten een geldige indeling hebben
Categorie Gebruik
Oplossing is brekend of niet-brekend Breken
Standaard ingeschakeld Ja
Standaard ernst Waarschuwing (geëscaleerd naar Fout bij het instellen van MSTestAnalysisMode op Recommended of All)
Geïntroduceerd in versie 3.2.0
Is er een code-fix Ja

Oorzaak

Een testmethode volgt niet één of meerdere punten van de vereiste indeling van de testmethode.

Beschrijving van regel

Testmethoden (methoden die zijn gemarkeerd met het [TestMethod] kenmerk) moeten de opgegeven indeling volgen om als geldig te worden beschouwd door MSTest:

  • ze moeten zijn public (of internal als [assembly: DiscoverInternals] het kenmerk is ingesteld)
  • ze mogen niet zijn static
  • ze mogen niet algemeen zijn als u MSTest 3.7 of eerder gebruikt
  • ze mogen niet zijn abstract
  • ze moeten terugkeren void of Task
  • ze mogen niet zijn async void
  • ze mogen geen speciale methode zijn (constructor, finalizer, operator...)
  • het type dat deze methode declareren, moet openbaar zijn

Schendingen oplossen

Zorg ervoor dat de testmethode overeenkomt met de vereiste indeling die hierboven wordt beschreven.

Wanneer waarschuwingen onderdrukken

Een waarschuwing van deze regel niet onderdrukken. Als u deze regel negeert, worden tests genegeerd, omdat MSTest deze methode niet beschouwt als een testmethode.

Een waarschuwing onderdrukken

Als u slechts één schending wilt onderdrukken, voegt u preprocessorrichtlijnen toe aan uw bronbestand om de regel uit te schakelen en vervolgens opnieuw in te schakelen.

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

Als u de regel voor een bestand, map of project wilt uitschakelen, stelt u de ernst ervan in op none in het configuratiebestand.

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

Voor meer informatie, zie Hoe codeanalysewaarschuwingen te onderdrukken.