Класс: matlab.unittest.TestRunner
Пакет: matlab.unittest
Запустите все тесты в TestSuite массив параллельно
result = runInParallel( делит заданный тестовый набор на группы и использует заданного исполнителя тестов, чтобы запустить каждую группу на текущем параллельном пуле. Метод затем возвращает результаты в массив runner,suite)TestResult объекты.
Когда тестовый прогон параллельно, фрагменты тестового набора, запущенные независимо на MATLAB® рабочие. Например, если ваш тестовый класс имеет TestClassSetup метод, метод запускается локально на каждом рабочем. Рабочие используют информацию в своем соответствующем TestSuite элементы, чтобы запустить тесты. Каждый TestSuite элемент предоставляет рабочему информацию о Test метод, тестовый класс и совместно использованные испытательные стенды, чтобы запуститься для элемента набора.
Примечание
runInParallel метод требует Parallel Computing Toolbox™. Среда тестирования может варьироваться порядок и количество групп или который тестирует его, включает в каждую группу.
Когда вы выберете тестовый набор, чтобы запуститься параллельно, рассмотрите возможную конкуренцию ресурса. Например, если ваши глобальные ресурсы доступа к испытательным стендам, такие как база данных или совместно используемый файл в той же сети, параллельные сеансы могли конфликтовать друг с другом. В таких случаях рассмотрите использование предварительно созданного разделяемого испытательного стенда.
Начиная в R2020b, можно создать автономные приложения, которые поддерживают запускающие тесты параллельно (требует MATLAB Compiler™ и Parallel Computing Toolbox). Используйте направляющий %#function parallel.Pool в вашем коде так, чтобы MATLAB Compiler мог расположиться и пакет все компоненты, требуемые для того, чтобы запустить тесты параллельно. Для получения дополнительной информации смотрите Компиляцию Модульные тесты MATLAB.
Начиная в R2021a, можно запустить тесты на основанном на потоке пуле (требует Parallel Computing Toolbox) путем запуска параллельного пула рабочих потока и затем вызова runInParallel метод.
Тесты, чтобы запуститься с runInParallel на основанном на потоке пуле подвергаются этим ограничениям:
Ваш тестовый и исходный код должен использовать только функциональность, поддержанную рабочими потока. Для получения дополнительной информации об ограничениях основанной на потоке среды, смотрите, Выбирают Between Thread-Based и Process-Based Environments (Parallel Computing Toolbox).
Тестовые наборы, созданные с помощью matlab.unittest.TestSuite.fromFile, matlab.unittest.TestSuite.fromFolder, или matlab.unittest.TestSuite.fromProject не поддерживаются на основанном на потоке пуле.
Хранение тестовых артефактов не поддерживается на основанном на потоке пуле.
Simulink® не поддерживается в основанной на потоке среде. Поэтому тесты, созданные с помощью Simulink Test™, не могут работать на основанном на потоке пуле.
run (TestRunner) | matlab.unittest.TestRunner | matlab.unittest.TestSuite | matlab.unittest.TestResult | matlab.unittest.plugins.TestRunnerPlugin | matlab.unittest.plugins.Parallelizable | runtests