メインコンテンツ

MATLAB ビルド ツールの概要

R2022b 以降

MATLAB® ビルド ツールは、コードの問題の特定、テストの実行、ツールボックスのパッケージ化などのビルド タスクを定義して実行するための標準化されたインターフェイスを提供するビルド システムです。ビルドを自動化するには、ビルド ファイルでタスクを定義してから、ビルド ツールをプログラムによって、または対話的に呼び出してタスクを実行します。

ビルド ファイルの作成

プロジェクトのルート フォルダーにビルド ファイルを含めることで、プロジェクトのタスクを定義します。たとえば、コマンド ウィンドウで、現在のフォルダーに buildfile.m という名前のスターター ビルド ファイルを作成するために buildtool -init を実行します。

buildtool -init

次のコードは、ビルド ファイルの内容を示しています。ビルド ファイルには、matlab.buildtool.tasks 名前空間内の組み込みのタスク クラスから作成されたタスクが含まれています。

  • "clean" タスクは、ビルド ファイル内の他のタスクの出力とトレースを削除します。

  • "check" タスクは、現在のフォルダーとそのサブフォルダー内のコードの問題を特定し、コード エラーが見つかった場合はビルドを失敗させます。

  • "test" タスクは、現在のフォルダーとそのサブフォルダー内のテストを実行し、いずれかのテストが失敗した場合はビルドを失敗させます。

function plan = buildfile
import matlab.buildtool.tasks.*

plan = buildplan(localfunctions);

plan("clean") = CleanTask;
plan("check") = CodeIssuesTask;
plan("test") = TestTask;

plan.DefaultTasks = ["check" "test"];
end

タスクの作成方法の詳細については、Create and Run Tasks Using Build Toolを参照してください。

ビルド ファイル内のタスクを実行

ビルド ファイル内のタスクは、プログラムで実行することも、対話的に実行することもできます。たとえば、buildtool コマンドを使用して、ビルド ファイル内の既定のタスクを実行します。現在のフォルダーおよびそのサブフォルダーに含まれているファイルによって結果は異なることがあります。

buildtool
** Starting check

Analysis Summary:
    Total Files: 3
         Errors: 0 (Threshold: 0)
       Warnings: 0 (Threshold: Inf)
** Finished check

** Starting test
...

Test Summary:
    Total Tests: 3
         Passed: 3
         Failed: 0
     Incomplete: 0
       Duration: 0.44142 seconds testing time.
                 
** Finished test

Build Successful:
    2 Tasks: 0 Failed, 0 Skipped
    17.774 sec total build time

タスクを対話的に実行する方法については、Run Build from Toolstripを参照してください。 (R2025a 以降)

MathWorks 製品による追加機能の有効化

特定の MathWorks® 製品は、MATLAB ビルド ツールの機能を拡張します。次の表では、ビルド ツールが他の製品によって拡張された場合にカバーされる追加のユース ケースについて説明します。

製品ユース ケース詳細
MATLAB Test™
  • 判定カバレッジ、条件カバレッジ、および改良条件判定カバレッジ (MC/DC) のメトリクスを収集する。

  • 等価性テストで生成された C/C++ コードのコード カバレッジ結果を生成する。

  • コードおよびデータの変更によって影響を受けるテストのみを実行する。

Simulink® Test
  • Simulink テスト マネージャーの結果を MLDATX 形式でエクスポートする。

  • Simulink Test および MATLAB ベースの Simulink テストでモデルのモデル カバレッジ結果を生成する。

参考

関数

クラス

名前空間

トピック