В зависимости от настроек, применяемых для записи покрытия Simulink ® Coverage™, может существовать различие между определением покрытия измененным условием и решением (MCDC), используемым для анализа покрытия модели в Simulink Coverage, и определением, используемым для анализа генерации тестового случая в Simulink Design Verifier™.
Simulink Design Verifier и Simulink Coverage представляют цели MCDC двумя различными способами:
Simulink Coverage рассматривает каждое условие логического выражения как цель MCDC.
Simulink Design Verifier рассматривает истинную и ложную половины каждой пары независимости как отдельные цели MCDC.
Шоу окна Результатов Свидетельства Дизайна Simulink, Оправданные для любого, оправдали цели MCDC. Щелкните соответствующую ссылку Вид, чтобы увидеть правило фильтрации в окне Simulink Design Verifier Analysis Filter.
Неудовлетворительные или неопределившиеся цели MCDC включают ссылку «Обоснование». Щелкните эту ссылку, чтобы создать соответствующее правило фильтрации. Поскольку каждая цель MCDC в Simulink Coverage соответствует двум целям MCDC в Simulink Design Verifier, цели MCDC Simulink Design Verifier обосновываются парами.
Например, на рисунке ниже при щелчке по ссылке «Выравнивание» для выражения 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 с уникальной причиной см. Определения модифицированного условия и покрытия принятия решений (MCDC) в разделе Покрытие Simulink (Покрытие Simulink).
Установка 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. ДефолтCovMcdcMode значение параметра конфигурации модели 'Masking' не вызывает этого несоответствия. Однако если требуется использовать анализ MCDC уникальной причины в Simulink Coverage, можно минимизировать этот эффект, используя IndividualObjectives оптимизация набора тестов для анализа генерации тестов в Simulink Design Verifier Дополнительные сведения см. в разделе Совет по оптимизации набора тестов.