Можно отладить тестовое использование последовательности инструменты в Тестовом Редакторе Последовательности. Отладка включает точки останова установки, чтобы остановить симуляцию, наблюдение данных и тестовой прогрессии последовательности и вручную продвижения через тестовые шаги. Можно попробовать эти функции с помощью модели sltestTestSeqDebuggingExample
. Чтобы открыть модель, войти
cd(fullfile(docroot,'toolbox','sltest','examples')) open_system('sltestTestSeqDebuggingExample')
Сохраните копию модели к перезаписываемому местоположению на пути MATLAB®. Дважды кликните блок Test Sequence, чтобы открыть Тестовый Редактор Последовательности.
По умолчанию симуляция анимирует тестовую последовательность путем выделения активных шагов и переходов. Наблюдение тестового выполнения шага может помочь вам отладить, особенно при ручном продвижении через тестовую последовательность. Настройте скорость анимации с помощью кнопки Change Animation Speed на панели инструментов.
Скорость анимации влияет на скорость симуляции. Если вы замедляете скорость анимации для отладки, возвратите скорость в Fast или Lightning Fast, когда вы закончили отлаживать, чтобы не замедлять вашу симуляцию. Если вы не нуждаетесь в тестовых подсветках шага и хотите самую быструю симуляцию, выбираете None.
Вы позволяете отладить для тестовой последовательности путем добавления одной или нескольких регулярных или условных точек останова. Регулярные точки останова останавливают симуляцию каждый раз, когда тестовый шаг оценен. Поэтому точки останова на некоторых тестовых шагах, таких как When decomposition порождают шаги, симуляция останова неоднократно, потому что шаг неоднократно оценивается. Условные точки останова останавливают симуляцию только, когда заданное условие соблюдают. Когда симуляция останавливается, можно просмотреть данные, используемые в тестовой последовательности, чтобы исследовать поведение симуляции последовательности.
Можно добавить регулярные и условные точки останова, чтобы протестировать ступенчатые действия и переходы.
Чтобы добавить регулярную точку останова в тестовый шаг, щелкните правой кнопкой по шагу или действию и выберите Break while executing step. Для перехода укажите на переход, кликните по значку механизма и выберите Break when transition taken. Красный значок указывает на регулярную точку останова.
Чтобы добавить условную точку останова, сначала добавьте регулярную точку останова. Затем щелкните правой кнопкой по значку точки останова и выберите Set or Modify Condition.
В текстовом поле диалогового окна задайте условие примениться к шагу или переходу и нажать Apply Condition. Указать, что это - условная точка останова, изменения цвета значка в желтом.
Чтобы возвратить условную точку останова к регулярной точке останова, щелкните правой кнопкой по значку точки останова и выберите Set or Modify Condition. Удалите условный текст и нажмите Apply Condition. Цвет значка точки останова превращается в красный.
Можно удалить точку останова с помощью этих методов:
Кликните по значку точки останова.
Щелкните правой кнопкой по значку точки останова и выберите Clear Breakpoint.
Для шага или действия, щелкните правой кнопкой по значку точки останова шага и отмените выбор Break while executing step. Для перехода укажите на переход, кликните по механизму и отмените выбор Break when transition taken.
После добавления точек останова симулируйте тестовую последовательность путем нажатия на Run.
Если симуляция делает паузу (например, в точке останова), можно просмотреть состояние данных, используемых на тестовом шаге путем наведения на тестовый шаг. Значения данных в текущем времени симуляции отображаются рядом с тестовой ячейкой последовательности.
Примечание
Если вы совершенствуете симуляцию к другой остановке (например, с помощью горячих клавиш), отображение данных не обновляется. Отъезжайте тестовый шаг и затем наведите на шаг снова, чтобы обновить значения.
Когда симуляция останавливается, можно продвинуться через тестовую последовательность с помощью кнопок на панели инструментов.
Цель | Детали | Кнопка на панели инструментов |
---|---|---|
Симулируйте до точки останова | Запуски симуляции до следующей точки останова | |
Выйдите вперед через время симуляции | Симуляция совершенствует один шаг симуляции | |
Выйдите вперед посредством тестовых ступенчатых действий и переходов | Симуляция совершенствуется каждым шагом тестовой последовательности с паузами при действиях и переходах. Не продвигается в вызов функции. | |
Вступите тестовой группе шага или вызванной функции | Симуляция совершенствуется в подшаги родительского шага и выполняет каждое действие и переход. Шаги в вызов функции. | |
Продвиньтесь из тестовой группы шага или вызванной функции | Симуляция совершенствуется через остающиеся подшаги родительского шага и затем к родительскому уровню иерархии шага. Также выполнение концов вызова функции. |