В зависимости от настроек вы запрашиваете Simulink® Запись покрытия Coverage™, может быть различие между определением модифицированного условия и решением (MCDC) покрытие, используемое для анализа покрытия модели в Simulink Coverage и определении, используемом для анализа генерации теста в Simulink Design Verifier™.
Simulink Design Verifier и Simulink Coverage представляют цели MCDC двумя различными способами:
Simulink Coverage обрабатывает каждое условие логического выражения как цель MCDC.
Simulink Design Verifier обрабатывает истинные и ложные половины каждой пары независимости как отдельные цели MCDC.
Окно Simulink Design Verifier Results показывает, что Justified для любого выровнял по ширине цели MCDC. Нажмите на соответствующую ссылку View, чтобы видеть, что фильтр управляет в окне Simulink Design Verifier Analysis Filter.
Невыполнимые или нерешенные цели MCDC включают ссылку Justify. Нажмите на эту ссылку, чтобы создать соответствующее правило фильтра. Поскольку каждая цель MCDC в Simulink Coverage соответствует двум целям MCDC в Simulink Design Verifier, цели MCDC Simulink Design Verifier выравниваются по ширине в парах.
Например, в изображении ниже, когда вы нажимаете на ссылку Justify для выражения MCDC expression for output with input port 4 false
, создает правило фильтра, которое выравнивает по ширине эту цель MCDC, а также цель MCDC для того, когда тем выражением является true
.
Simulink Design Verifier всегда использует маскирование определение MCDC для генерации теста. По умолчанию Simulink Coverage также использует маскирование определение MCDC при записи покрытия. Однако, если вы устанавливаете CovMcdcMode
параметр конфигурации модели к 'UniqueCause'
, Simulink Coverage вместо этого использует уникальную причину определение MCDC при записи покрытия. Для получения информации о различиях между маскированием определение MCDC и уникальной причиной определение MCDC, смотрите Модифицированное Условие и Decision Coverage (MCDC) Определения в Simulink Coverage (Simulink Coverage).
Установка CovMcdcMode
параметр конфигурации модели к 'UniqueCause'
может привести к различиям между MCDC, сообщающим в Simulink Coverage и генерацией тестов в Simulink Design Verifier. Пример этого различия виден в результатах анализа для логических выражений, содержащих смесь AND
и OR
операторы, как в этом Stateflow® переход.
Учитывая, что A
B
, и C
каждый разделяет входные параметры, существует пять возможных способов оценить условие на переходе Stateflow, показанном в следующей таблице.
A | B | C | (A && B) || C | |
---|---|---|---|---|
1 | F | x | F | F |
2 | F | x | T | T |
3 | T | F | F | F |
4 | T | F | T | T |
5 | T | T | x | T |
Удовлетворение MCDC для Логической переменной требует пары оценок условия, показывая, что изменение в одной только той переменной изменяет оценку целого выражения. В этом примере MCDC можно удовлетворить для C
или с парой 1, 2 или с парой 3, 4. В обоих из тех случаев, значении выражения, измененного, потому что значение C
измененный, в то время как все другие значения переменных остались такими же.
Каждая пара имеет различное множество значений для A
и B
которые считаются постоянные, но каждая пара содержит одну оценку где C
и out
верны и одна оценка где C
и out
являются ложными. Удовлетворить MCDC для C
, Анализ генерации тестов Simulink Design Verifier принимает любую пару, содержащую одну оценку истинных значений и одну оценку ложных значений для C
и out
. В этом примере анализ генерации тестов Simulink Design Verifier принимает не только пару 1, 2 и пару 3, 4, но также и пару 1, 4 и пару 2, 3. Анализу покрытия модели Simulink Coverage с помощью уникальной причины определение MCDC удовлетворяет только пара 1, 2 или парой 3, 4.
Предыдущий пример принимает тот A
B
, и C
все отдельные входные параметры. Когда вход A
ограничивается быть тем же значением как C
, как в этой модели, только подмножество оценок условия возможно.
Это подмножество оценок условия для перехода Stateflow показывают в следующей таблице.
A | B | C | (A && B) || C | |
---|---|---|---|---|
1 | F | x | F | F |
4 | T | F | T | T |
5 | T | T | x | T |
Оценки 2 и 3 более не возможны, таким образом, ни пара 1, 2, ни пара 3, 4 не возможны. В результате уникальная причина MCDC для C
больше не может удовлетворяться в анализе покрытия модели Simulink Coverage. Поскольку пара 1, 4 все еще возможна, однако, анализ генерации тестов Simulink Design Verifier сообщает об этом MCDC для C
выполнимо.
Сложность анализа MCDC для логических выражений со смесью AND
и OR
операторы вызывают это различие между результатами набора Simulink Coverage к уникальной причине анализ MCDC и Simulink Design Verifier. defaultCovMcdcMode
значение параметра конфигурации модели 'Masking'
не вызывает это несоответствие. Однако, если вы требуете использования уникальной причины анализ MCDC в Simulink Coverage, можно минимизировать этот эффект при помощи IndividualObjectives
оптимизация тестового набора для анализа генерации тестов в Simulink Design Verifier Для получения дополнительной информации, смотрите раздел Tip оптимизации Тестового набора.