У вас есть два варианта:
Атрибут сборки
Этот вариант подходит, если у вас есть только одна тестовая сборка и код может быть изменен.
Если вы можетедобавьте ниже атрибут сборки в любом месте вашей сборки (например, в файле properties.cs или в любом файле класса теста), вы должны иметь возможность запускать тесты specflow паралельно.
[assembly: Parallelize(Workers = 0, Scope = ExecutionScope.MethodLevel)]
настройки файла .runsettings
Если у вас есть несколько тестовых сборок, которые вы хотите разбить на части, вы можете создать файл с именем .runsettings в корне решения:
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<MSTest>
<Parallelize>
<Workers>8</Workers>
<Scope>MethodLevel</Scope>
</Parallelize>
</MSTest>
</RunSettings>
Существует 3 области действияраспараллеливание:
(1) ClassLevel - каждый поток выполняет тесты класса TestClass.Внутри TestClass методы тестирования выполняются последовательно.Это значение по умолчанию - тесты внутри класса могут иметь взаимозависимость, и мы не хотим быть слишком агрессивными.
(2) MethodLevel - каждый поток выполняет TestMethod.
(3) Custom - пользователь может предоставить плагин, реализующий необходимую семантику выполнения.В настоящее время это еще не поддерживается, но упоминается, потому что - как и все MSTest V2 - мы разработали эту функцию с учетом расширяемости.
См. этот блог для получения более подробной информации