Бөлісу құралы:


Правила производительности MSTest

Правила производительности поддерживают высокопроизводительное тестирование, определяя возможности оптимизации скорости выполнения теста.

Правила в этой категории

Идентификатор правила Название Severity Исправление доступно
MSTEST0001 Используйте атрибут Parallelize. Info Да

Распространенные сценарии

Параллелизация тестов

По умолчанию MSTest выполняет тесты последовательно, что может значительно повлиять на время выполнения для больших наборов тестов.

  • MSTEST0001: Напоминает вам явно включить параллелизацию с [assembly: Parallelize] или подтвердить последовательное выполнение с [assembly: DoNotParallelize].

Почему это важно: параллелизация может значительно сократить время выполнения теста, одновременно выполняя тесты в нескольких потоках или процессах. Однако не все наборы тестов безопасны для параллелизации (например, тесты, изменяющие общее состояние). Это правило гарантирует, что вы принимаете сознательное решение о параллелизации.

Когда необходимо включить параллелизацию:

  • Тесты независимы и не разделяют состояние.
  • Тесты не зависят от порядка выполнения.
  • Тесты не изменяют глобальные ресурсы (базы данных, файлы и переменные среды).

Когда следует использовать DoNotParallelize:

  • Тесты имеют зависимости от общих ресурсов.
  • Тесты изменяют глобальное состояние.
  • Для тестов требуется определенный порядок выполнения.
  • Вы отлаживаете тестовые сбои.