Main Content

生成された C/C++ コードのテスト

MATLAB® コードからコードを生成したら、生成されたコードの実行時の動作を検証します。生成されたコードを確認して潜在的な問題を特定するには、コード生成レポートにアクセスします。

ビルド タイプに応じて、生成されたコードをテストしてコードの動作を検証できます。

  • MEX コードをテストして動作を検証する。

  • ソフトウェアインザループおよびプロセッサインザループの実行を使用してスタンドアロン コードをテストする (Embedded Coder® が必要)。

MEX コードのテストによる動作の検証

アプリを使用して MEX 関数を生成した場合、このアプリで MEX 関数をテストできます。

  1. [コード生成] ページで [コードの検証] をクリックします。

  2. テスト ファイル名を入力または選択します。

  3. 元の MATLAB 関数の呼び出しを MEX 関数の呼び出しで置き換えずにテスト ファイルを実行するために、[次を使用して実行] に対して [MATLAB コード] を選択します。[生成されたコードの実行] をクリックします。

  4. 元の MATLAB 関数の呼び出しを MEX 関数の呼び出しで置き換えてテスト ファイルを実行するために、[次を使用して実行] に対して [生成コード] を選択します。[生成されたコードの実行] をクリックします。

  5. 元の MATLAB 関数の実行結果を MEX 関数の実行結果と比較します。

Embedded Coder を利用している場合、ソフトウェアインザループ (SIL) またはプロセッサインザループ (PIL) 実行を使用して、生成された C/C++ コードの数値動作を検証できます。実行時間のプロファイルを生成することもできます。

ソフトウェアインザループおよびプロセッサインザループを使用したスタンドアロン コードのテスト

生成されたスタンドアロン コードをターゲット ハードウェアでテストするには、生成されたコード上でユニット テストを実行します。MATLAB 外部の異なるプロセスでスタンドアロン コード上でユニット テストを実行するには、ソフトウェアインザループ (SIL) またはプロセッサインザループ (PIL) 実行を使用します。SIL または PIL 実行を使用するには、Embedded Coder がなければなりません。

MATLAB Coder アプリのソフトウェアインザループ実行 (Embedded Coder)およびMATLAB Coder アプリでのプロセッサインザループ実行 (Embedded Coder)を参照してください。

ヒント

コマンド ラインでの MEX ファイルのテスト

codegen を使用して MEX 関数を生成する場合は、-test オプションを使用します。次に例を示します。

codegen myfunction -test 'myfunction_test'

coder.runTest を使用して MEX 関数をテストすることもできます。次に例を示します。

coder.runTest('myfunction_test', 'myfunction')

生成されたコードのユニット テスト

MATLAB Coder による生成されたコードのユニット テストを参照してください。

外部コードのユニット テストを実行するには、MATLAB Coder を使用した外部 C コードのユニット テストを参照してください。

参考

関連するトピック