このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
サポートされている C/C++ S-Function、外部 C/C++ コードを呼び出すMATLAB Functionブロック、C/C++ コードをもつC Callerブロック、またはシミュレーション用のカスタム C/C++ コードを実装する Stateflow®チャートを含むモデルのカバレッジを記録する場合、C/C++ S-Function、MATLAB Functionブロック、または Stateflow チャート内の C/C++ コードのカバレッジが記録されます。カスタム コードのカバレッジ結果は、モデルの他の部分と同じレポート上で参照できます。レポート内の各S-Functionブロック、各MATLAB Functionブロック、または各 Stateflow チャートは、ブロック内の C/C++ コードの詳細なカバレッジ レポートにリンクされます。
金宝app®モデル内のカスタム C/C++ コードのコード カバレッジを有効にするには、次を行います。
[コンフィギュレーション パラメーター] の[シミュレーション ターゲット]ペインで、[カスタム コードのインポート]を選択します。
[コンフィギュレーション パラメーター] の[シミュレーション ターゲット]ペインで、[カスタム コード解析を有効にする]を選択します。
Simulink Coverage™は、MATLAB Functionブロック、C Callerブロック、および Stateflow チャート内のカスタム C/C++ コードのコード カバレッジを記録します。
関数legacy_code
、S-Function Builderブロックまたは関数mex
を使用して S-Function を作成する場合、適切な方法で S-Function をモデル カバレッジに互換させます。
これらの 3 つの方法の詳細については、C/C++ S-Function の実装を参照してください。
関数legacy_code
を使用するS -Function
レガシ コード ツールのプロパティを表すフィールドで、MATLAB®構造体を初期化します。
def= legacy_code('initialize')
オプションdef.Options.supportCoverage
をオンにしてモデル カバレッジを有効にします。
def.Options.supportCoverageAndDesignVerifier = true;
構造体def
を使用し、通常の方法で S-Function を生成します。例については、S-Function のカバレッジを参照してください。
S-Function Builder を使用する S-Function
ライブラリ ブラウザー内のUser-Defined FunctionsライブラリからS-Function Builderブロックのインスタンスをモデルにコピーします。
ブロックをダブルクリックして [S-Function Builder] ダイアログ ボックスを開きます。
[ビルド情報]タブで[カバレッジのサポートを有効にする]を選択します。
関数mex
を使用するS -Function-関数mex
を使用してソースファイルをコンパイルしてリンクする場合,代わりに関数slcovmex
を使用します。関数slcovmex
はソース コードをコンパイルし、カバレッジとも互換させます。
この関数は関数mex
と同じ構文で、同じオプションを取ります。さらに、モデル カバレッジに関連するいくつかのオプションを指定できます。詳細については、slcovmex
を参照してください。
Simulink エディターの[モデル化]タブで[モデル設定]を選択します。
[コンフィギュレーション パラメーター] ダイアログ ボックスの[カバレッジ]ペインで、[C/C++ S-Function]を選択します。
シミュレーションを実行すると、カバレッジ レポートにはモデル内の C/C++ S-Function ブロックのカバレッジ メトリクスが記載されます。レポート内の各S-Functionブロックは、ブロック内の C/C++ コードの詳細なカバレッジ レポートにリンクされます。