Протестируйте основы последовательности

Тестовая последовательность состоит из тестовых шагов, расположенных в иерархии. Можно использовать тестовую последовательность, чтобы задать тестовые воздействия и задать, как тест будет прогрессировать в ответ на симуляцию. Тестовый шаг содержит действия, которые выполняются в начале шага. Тестовый шаг может содержать переходы, которые задают, когда шаг прекращает выполняться, и которые тестируют шаг, выполняется затем. Действия и переходы используют MATLAB® в качестве языка действия. Вы создаете тестовые последовательности при помощи блока Test Sequence и Тестового Редактора Последовательности.

Протестируйте иерархию последовательности

Тестовые последовательности могут иметь родительские шаги и подшаги. Подшаги могут активироваться, только если родительский шаг активен. Группа шагов на том же уровне иерархии совместно использует общий тип перехода. Когда вы создаете тестовый шаг, шаг становится опцией перехода для других шагов в той же группе.

Типы перехода

Протестируйте переход последовательностей от одного шага до другого двумя способами:

  • Стандартный переход: можно задать последовательность действий, которые реагируют на условия симуляции с помощью стандартной последовательности перехода. Стандартные последовательности перехода запускаются с первого шага и прогресса согласно условиям перехода, и затем продвигается.

    Эта тестовая последовательность устанавливает значение булевых выходных параметров RedButtonIn и GreenButtonIn с переходами, происходящими после того, как каждый шаг был активен в течение 1 секунды.

  • Когда разложение: последовательности разложения When походят на операторы switch в программировании. Ваша последовательность может действовать на основе особых условий, происходящих в вашей модели. В последовательности разложения When шаги активируются на основе условия, которое вы задаете после имени шага. Переходы не используются между шагами.

    Это, Когда разложение содержит три оператора verify. Каждый оператор verify активен, когда gear сигнала равен различному значению. Для получения дополнительной информации см. Тестовый Редактор Последовательности.

Создайте последовательность базового теста

В этом примере вы создаете простую тестовую последовательность для контроллера логики сдвига передачи.

  1. Откройте модель. В командной строке войти

    openExample('simulinktest/TransmissionDownshiftTestSequenceExample')
  2. Щелкните правой кнопкой по подсистеме shift_controller и выберите Test Harness> Create for ‘shift_controller’.

  3. В диалоговом окне Create Test Harness, под Sources and Sinks:

    • Под Sources and Sinks выберите Test Sequence из источника выпадающее меню.

    • Под Sources and Sinks выберите Add separate assessment block.

    • Выберите Open harness after creation.

  4. Нажмите OK. Тестовая обвязка для подсистемы shift_controller открывается.

  5. Дважды кликните блок Test Sequence. Тестовый Редактор Последовательности открывается.

  6. Создайте тестовую последовательность.

    1. Переименуйте первый шаг Accelerate и добавьте ступенчатые действия:

      speed = 10*ramp(et);
      throttle = 100;
    2. Щелкните правой кнопкой по Accelerate, продвигаются и выбирают Add step after. Переименуйте этот шаг Stop и добавьте ступенчатые действия:

      throttle = 0;
      speed = 0;
    3. Введите условие перехода для шага Accelerate. В этом примере, переходах Accelerate к Stop, когда система на четвертой передаче в течение 2 секунд. В столбце Transition, введите:

      duration(gear == 4) >= Limit

      В столбце Next Step выберите Stop.

    4. Добавьте константу, чтобы задать Limit. В панели Symbols наведите на Constant и кликните по добавить кнопке данных. Введите Limit для постоянного имени.

    5. Наведите на Limit и нажмите кнопку редактирования. В поле Constant value введите 2. Нажмите OK.

Создайте оценки базового теста

  1. Продолжение примера, в тестовой обвязке, дважды кликает блок Test Assessment, чтобы открыть редактор. Редактор отображается Когда последовательность разложения.

  2. Переименуйте первый шаг Assessments.

  3. Добавьте два шага в Assessments. Щелкните правой кнопкой по Assessments, продвигаются и выбирают Add sub-step. Сделайте это во второй раз. Под Assessments должно быть четыре шага.

  4. Введите имена и действия для четырех подшагов.

    Check1st when gear == 1
    verify(speed < 45)
    Check2nd when gear == 2
    verify(speed < 75)
    Check3rd when gear == 3
    verify(speed < 105)
    Else

    Четвертый шаг Else не имеет никаких действий. Else обрабатывает условия симуляции за пределами предыдущих условий when.

  5. Добавьте осциллограф в обвязку и соедините speed, throttle и сигналы gear к осциллографу.

  6. Установите время симуляции модели на 15 секунд и моделируйте тестовую обвязку. Просмотрите данные сигнала путем открытия осциллографа.

  7. Просмотрите результаты операторов verify в Инспекторе Данных моделирования.

Смотрите также

| |

Для просмотра документации необходимо авторизоваться на сайте