Порядок выполнения теста

Когда вы выполняете тест, Simulink® Test™ открывает модель, которая будет протестирована, запускает функции обратного вызова, закрывает функции и очищает. Порядок выполнения тестов зависит от:

  • Запускаете ли вы один тест или запускаете тестовый набор, содержащий один или несколько тесты

  • Количество протестированных моделей

  • Количество тестов

Для последовательных симуляций контрольные примеры выполняются в том порядке, в котором они перечислены в Диспетчере тестов. Чтобы изменить порядок, в котором тестовые случаи запуска в Диспетчере тестов, перетащите тестовые случаи в требуемый порядок на панели Test Browser. Вы не можете перетащить тестовые наборы. Если вы запускаете параллельные симуляции режиме, контрольные случаи могут не запускаться в порядке, показанном в Диспетчере тестов.

Если ваши тесты включают коллбэки, обратите внимание, что disp и fprintf не работают в коллбэках. Чтобы убедиться, что коллбэки выполняются, используйте скрипт MATLAB, который включает точки прерывания в коллбэки.

Один тест на одной модели

Если вы выбираете конкретный контрольный пример для запуска на одной модели, и модель не открыта до запусков теста, порядок выполнения следующий:

  1. Запуск теста Pre-Load коллбэк.

  2. Запуск модели PreLoadFcn коллбэк.

  3. Загрузка модели.

  4. Запуск модели PostLoadFcn коллбэк.

  5. Запуск теста Post-Load коллбэк.

  6. Моделируйте модель.

  7. Запуск теста Cleanup коллбэк.

  8. Запуск модели CloseFcn коллбэк.

Если вы запускаете тестовый набор, которая содержит тест, тестовый набор Setup коллбэк выполняется перед первым шагом и тестовым набором Cleanup коллбэк выполняется после последнего шага.

Несколько тесты на нескольких моделях

Если вы запускаете несколько тесты, которые запускаются на отдельных моделях, и модели не открыты до тестовых запусков, порядок выполнения, который показан для двух тестов, выполняемых на двух моделях, следующий:

  1. Запустите тест 1 Pre-Load коллбэк.

  2. Запустите модель 1 PreLoadFcn коллбэк.

  3. Загрузите модель 1.

  4. Запустите модель 1 PostLoadFcn коллбэк.

  5. Запустите тест 2 Pre-Load коллбэк.

  6. Запустите модель 2 PreLoadFcn коллбэк.

  7. Загрузите модель 2.

  8. Запустите модель 2 PostLoadFcn коллбэк.

  9. Запустите тест 1 Post-Load коллбэк.

  10. Симулируйте модель 1 для теста 1.

  11. Запустите тест 1 Cleanup коллбэк.

  12. Запустите тест 2 Post-Load коллбэк.

  13. Симулируйте модель 2 для теста 2.

  14. Запустите тест 2 Cleanup коллбэк.

  15. Запустите модель 2 CloseFcn коллбэк.

  16. Запустите модель 1 CloseFcn коллбэк.

Если вы запускаете тестовый набор, которая включает тесты, тестовый набор Setup коллбэк выполняется перед первым шагом и тестовым набором Cleanup коллбэк выполняется после последнего шага.

Несколько тесты в одном тестовом наборе на одной модели

Если вы запускаете несколько тестовых случаев в тестовом наборе на одной модели, и модель не открыта до запусков теста, порядок выполнения, который показан для двух тестовых случаев, следующий:

  1. Запустите тест 1 Pre-Load коллбэк

  2. Запуск модели PreLoadFcn коллбэк

  3. Загрузка модели

  4. Запуск модели PostLoadFcn коллбэк

  5. Запустите тест 2 Pre-Load коллбэк

  6. Запустите тест 1 Post-Load коллбэк

  7. Моделируйте модель

  8. Запустите тест 1 Cleanup коллбэк

  9. Запустите тест 2 Post-Load коллбэк

  10. Моделируйте модель

  11. Запустите тест 2 Cleanup коллбэк

  12. Запуск модели CloseFcn коллбэк

Когда тестовый набор запускает несколько тестовых примеров на одной модели, модель остается открытой между тестовыми выполнениями. В результате код в PreLoadFcn коллбэк для модели выполняется только, когда модель открывается для первого теста.

Если модель открыта до запусков теста, порядок выполнения, который показан для двух тестовых случаев, следующий:

  1. Запустите тест 1 Pre-Load коллбэк

  2. Запустите тест 2 Pre-Load коллбэк

  3. Запустите тест 1 Post-Load коллбэк

  4. Моделируйте модель

  5. Запустите тест 1 Cleanup коллбэк

  6. Запустите тест 2 Post-Load коллбэк

  7. Моделируйте модель

  8. Запустите тест 2 Cleanup коллбэк

Заметьте, что модель PreLoadFcn и PostLoadFcn коллбэки не выполняются, поскольку модель уже загружена перед тестовыми запусками. Модель CloseFcn коллбэк не выполняется, потому что модель остается открытой после завершения тестирования.

Несколько тесты в нескольких тестовых наборах на одной модели

Предположим, что у вас есть два тестовых наборов, каждый из которых содержит два тестов, таких как:

  • Тестовый набор 1

    • Тест 1-1

    • Тест 1-2

  • Тестовый набор 2

    • Тест 2-1

    • Тест 2-2

порядок выполнения коллбэков следующий:

  1. Запустите тестовый набор 1 Setup коллбэк.

  2. Запустите тестовый набор 2 Setup коллбэк.

  3. Запуск теста 1-1 Pre-Load коллбэк.

  4. Запуск теста 1-2 Pre-Load коллбэк.

  5. Запуск теста 2-1 Pre-Load коллбэк.

  6. Запуск теста 2-2 Pre-Load коллбэк.

  7. Запуск теста 1-1 PostLoad коллбэк.

  8. Моделируйте модель.

  9. Запуск теста 1-1 Cleanup коллбэк.

  10. Запуск теста 1-2 Post-Load коллбэк.

  11. Моделируйте модель.

  12. Запуск теста 1-2 Cleanup коллбэк.

  13. Запустите тестовый набор 1 Cleanup коллбэк.

  14. Запуск теста 2-1 Post-Load коллбэк.

  15. Моделируйте модель.

  16. Запуск теста 2-1 Cleanup коллбэк.

  17. Запуск теста 2-2 Post-Load коллбэк.

  18. Моделируйте модель.

  19. Запуск теста 2-2 Cleanup коллбэк.

  20. Запустите тестовый набор 2 Cleanup коллбэк.