Delen via


MSTest-prestatieregels

Prestatieregels ondersteunen high-performance testen door mogelijkheden te identificeren om de snelheid van de testuitvoering te optimaliseren.

Regels in deze categorie

Regel-id Title Severity Oplossing beschikbaar
MSTEST0001 Gebruik het kenmerk Parallelliseren. Informatie Yes

Algemene scenario's

Parallelle uitvoering testen

MSTest voert standaard tests sequentieel uit, wat de uitvoeringstijd voor grote testsuites aanzienlijk kan beïnvloeden.

  • MSTEST0001: herinnert u eraan dat u parallellisatie expliciet wilt inschakelen met [assembly: Parallelize] of sequentieel uitvoeren met [assembly: DoNotParallelize].

Waarom dit belangrijk is: parallellisatie kan de uitvoeringstijd van de test aanzienlijk verminderen door gelijktijdig tests uit te voeren op meerdere threads of processen. Niet alle testsuites zijn echter veilig om te parallelliseren (bijvoorbeeld tests die de gedeelde status wijzigen). Deze regel zorgt ervoor dat u een bewuste beslissing neemt over parallelle uitvoering.

Wanneer moet u parallellisatie inschakelen:

  • Tests zijn onafhankelijk en delen de toestand niet.
  • Tests zijn niet afhankelijk van de uitvoeringsvolgorde.
  • Tests wijzigen geen globale resources (databases, bestanden en omgevingsvariabelen).

Wanneer gebruikt u DoNotParallelize:

  • Tests hebben afhankelijkheden van gedeelde resources.
  • Tests wijzigen de globale staat.
  • Voor tests is een specifieke uitvoeringsvolgorde vereist.
  • Je bent testfouten aan het debuggen.