MSTest performans kuralları

Performans kuralları, test yürütme hızını iyileştirme fırsatlarını belirleyerek yüksek performanslı testleri destekler.

Bu kategorideki kurallar

Kural Kimliği Başlık Severity Düzeltme Mevcut
MSTEST0001 Parallelize özniteliğini kullanın. Bilgi Yes

Yaygın senaryolar

Paralelleştirmeyi test etme

Varsayılan olarak, MSTest testleri sıralı olarak çalıştırır ve bu da büyük test paketleri için yürütme süresini önemli ölçüde etkileyebilir.

  • MSTEST0001: ile paralelleştirmeyi açıkça etkinleştirmenizi veya ile [assembly: Parallelize][assembly: DoNotParallelize]sıralı yürütmeyi onaylamanızı anımsatır.

Bu neden önemlidir: Paralelleştirme, testleri birden çok iş parçacığı veya işlem arasında eşzamanlı olarak çalıştırarak test yürütme süresini önemli ölçüde azaltabilir. Ancak tüm test paketlerinin paralelleştirilmesi güvenli değildir (örneğin, paylaşılan durumu değiştiren testler). Bu kural, paralelleştirme hakkında bilinçli bir karar vermenizi sağlar.

Paralelleştirmenin ne zaman etkinleştirileceği:

  • Testler bağımsızdır ve durum paylaşımı yapmaz.
  • Testler yürütme sırasına dayanmaz.
  • Testler genel kaynakları (veritabanları, dosyalar ve ortam değişkenleri) değiştirmez.

DoNotParallelize ne zaman kullanılır:

  • Testlerin paylaşılan kaynaklara bağımlılıkları vardır.
  • Testler genel durumu değiştirir.
  • Testler belirli bir yürütme sırası gerektirir.
  • Hata ayıklıyorsunuz; test hataları üzerinde çalışıyorsunuz.