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