Запустите функции Specflow параллельно с помощью Specrun
Я создал 10 файлов объектов Specflow, каждый из которых имеет 5 сценариев. Итак, всего 50 сценариев или тестов. Когда я запускаю эти тесты, используя SpecRun параллельно (3 потока), 3 сценария в каждом файле компонентов выполняются одновременно, и это нормально.
Я раньше использовал Nunit Runner. Если мы запустим три потока и укажем следующий код в app.config, бегун выберет один сценарий из трех разных файлов объектов.
[assembly: Parallelizable(ParallelScope.Fixtures)]
Но SpecRun выбирает три сценария из одного и того же файла функций. Мое требование - повторить поведение бегуна NUnit для Specrun. Таким образом, одновременно выполняются 3 файла объектов. Есть ли способ сделать это?
Я пробовал следующие ссылки:
Как запустить файлы объектов параллельно при использовании specflow/specrun?
0 ответов
Во-первых, вы должны реализовать внедрение контекста или любую инъекцию зависимостей, поскольку specrun с контекстом specflow не поддерживает параллельное выполнение.
Также, [assembly: Parallelizable (ParallelScope.Fixtures)]
определен для Nunit, а не для Specrun. Если вы реализуете внедрение контекста specflow, вы можете получить то, что хотите, увеличив количество потоков. Внедрение контекста Specflow будет выполнять каждую функцию параллельно в зависимости от количества ваших потоков.
Надеюсь, это дает вам ясность.