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

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

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

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

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

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

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

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

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

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

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

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

  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 операторы в Инспекторе Данных моделирования.

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

Похожие темы

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