Когда вы выполняете тест, Simulink® Test™ открывает модель, которая будет протестирована, запускает функции обратного вызова, закрывает функции и моется. Порядок, в котором выполняются тесты, зависит от:
Запускаете ли вы один тест или запускаете тестовый набор, содержащий один или несколько тестов
Количество моделей протестировано
Количество тестов
Для последовательных симуляций тесты запускаются в порядке, они перечислены в менеджере по Тесту. Чтобы изменить порядок в который тесты, запущенные в менеджере по Тесту, перетащите мышью тесты в желаемый порядок в панели Test Browser. Вы не можете перетащить мышью тестовые наборы. Если при запуске свой режим параллельных симуляций, тесты не могут запуститься в порядке, отображенном в менеджере по Тесту.
Если ваши тесты включают коллбэки, отметьте тот disp
и fprintf
не работайте в коллбэках. Чтобы проверить, что коллбэки выполняются, используйте скрипт MATLAB, который включает точки останова в коллбэки.
Если вы выбираете определенный тест, чтобы работать на одной модели, и модель не открыта, прежде чем тестовые прогоны, порядок выполнения будет:
Запустите тест Pre-Load
'callback'.
Запустите модель PreLoadFcn
'callback'.
Модель загружается.
Запустите модель PostLoadFcn
'callback'.
Запустите тест Post-Load
'callback'.
Модель симулируется.
Запустите тест Cleanup
'callback'.
Запустите модель CloseFcn
'callback'.
Если при запуске тестовый набор, который содержит тест, тестовый набор Setup
запуски коллбэка перед первым шагом и тестовым набором Cleanup
коллбэк выполняется после последнего шага.
Если при запуске несколько тестов, которые работают на отдельных моделях, и модели не открыты перед тестовыми прогонами, порядок выполнения, который показывают для двух тестов, работает на двух моделях:
Запустите тест 1 Pre-Load
'callback'.
Запустите модель 1 PreLoadFcn
'callback'.
Загрузите модель 1.
Запустите модель 1 PostLoadFcn
'callback'.
Запустите тест 2 Pre-Load
'callback'.
Запустите модель 2 PreLoadFcn
'callback'.
Загрузите модель 2.
Запустите модель 2 PostLoadFcn
'callback'.
Запустите тест 1 Post-Load
'callback'.
Симулируйте модель 1 для теста 1.
Запустите тест 1 Cleanup
'callback'.
Запустите тест 2 Post-Load
'callback'.
Симулируйте модель 2 для теста 2.
Запустите тест 2 Cleanup
'callback'.
Запустите модель 2 CloseFcn
'callback'.
Запустите модель 1 CloseFcn
'callback'.
Если при запуске тестовый набор, который включает тесты, тестовый набор Setup
запуски коллбэка перед первым шагом и тестовым набором Cleanup
коллбэк выполняется после последнего шага.
Если при запуске несколько тестов в тестовом наборе на одной модели, и модель не открыта перед тестовыми прогонами, порядок выполнения, который показывают для двух тестов:
Запустите тест 1 Pre-Load
'callback'
Запустите модель PreLoadFcn
'callback'
Модель загружается
Запустите модель PostLoadFcn
'callback'
Запустите тест 2 Pre-Load
'callback'
Запустите тест 1 Post-Load
'callback'
Модель симулируется
Запустите тест 1 Cleanup
'callback'
Запустите тест 2 Post-Load
'callback'
Модель симулируется
Запустите тест 2 Cleanup
'callback'
Запустите модель CloseFcn
'callback'
Когда тестовый набор запускает несколько тестов на той же модели, модель сохранена открытой между выполнением теста. В результате код в PreLoadFcn
коллбэк для модели выполняется только, когда модель открыта для первого теста.
Если модель открыта перед тестовыми прогонами, порядок выполнения, который показывают для двух тестов:
Запустите тест 1 Pre-Load
'callback'
Запустите тест 2 Pre-Load
'callback'
Запустите тест 1 Post-Load
'callback'
Модель симулируется
Запустите тест 1 Cleanup
'callback'
Запустите тест 2 Post-Load
'callback'
Модель симулируется
Запустите тест 2 Cleanup
'callback'
Заметьте, что модель PreLoadFcn
и PostLoadFcn
коллбэки не выполняются, потому что модель уже загружается перед тестовыми прогонами. Модель CloseFcn
коллбэк не выполняется также, потому что модель оставляют открытой после тестового завершения.
Предположим, что у вас есть два тестовых набора, как которые каждый содержит два теста, такие:
Тестовый набор 1
Тест 1-1
Тест 1-2
Тестовый набор 2
Тест 2-1
Тест 2-2
порядок выполнения коллбэков:
Запустите тестовый набор 1 Setup
'callback'.
Запустите тестовый набор 2 Setup
'callback'.
Запустите тест Pre-Load
1-1 'callback'.
Запустите тест Pre-Load
1-2 'callback'.
Запустите тест Pre-Load
2-1 'callback'.
Запустите тест Pre-Load
2-2 'callback'.
Запустите тест PostLoad
1-1 'callback'.
Модель симулируется.
Запустите тест Cleanup
1-1 'callback'.
Запустите тест Post-Load
1-2 'callback'.
Модель симулируется.
Запустите тест Cleanup
1-2 'callback'.
Запустите тестовый набор 1 Cleanup
'callback'.
Запустите тест Post-Load
2-1 'callback'.
Модель симулируется.
Запустите тест Cleanup
2-1 'callback'.
Запустите тест Post-Load
2-2 'callback'.
Модель симулируется.
Запустите тест Cleanup
2-2 'callback'.
Запустите тестовый набор 2 Cleanup
'callback'.
Для теста с переопределениями параметра порядок выполнения:
Запустите тест Pre-Load
'callback'.
Модель загружается.
Считайте переопределения параметра, который инициировал обновление модели.
Запустите тест Post-Load
'callback'.
Модель симулируется.
Запустите тест Cleanup
'callback'.
Запустите модель CloseFcn
'callback'.