Main Content

metric.Engine

メトリクス結果を収集する

R2020b 以降

説明

metric.Engine オブジェクトは、メトリクス結果を収集するために execute オブジェクト関数を使用して実行できるメトリクス エンジンを表します。getMetrics を使用して、メトリクス結果にアクセスし、metric.Result オブジェクトの配列を返します。メトリクス結果を使用して、設計のステータスおよび品質を評価します。モデル保守性メトリクスを使用して、設計の保守性および複雑度を解析します。モデルおよびコード テストのメトリクスを使用して、要件、テスト結果、カバレッジ結果などのアーティファクトを解析します。追加のメトリクスについては、Design Cost Model Metrics (Fixed-Point Designer)を参照してください。

作成

説明

metric_engine = metric.Engine() は、現在のプロジェクトでのメトリクス結果を収集するメトリクス エンジン オブジェクトを作成します。

metric_engine = metric.Engine(projectPath) はプロジェクト projectPath を開き、そのプロジェクトでのメトリクス結果を収集するメトリクス エンジン オブジェクトを作成します。

入力引数

すべて展開する

メトリクス結果を収集するプロジェクトのパス。文字ベクトルまたは string スカラーとして指定します。

プロパティ

すべて展開する

この プロパティ は読み取り専用です。

エンジンがメトリクス結果を収集する対象のプロジェクト。string として返されます。

オブジェクト関数

executeメトリクス結果を収集する
generateReportメトリクス結果を含むレポート ファイルを生成する
getArtifactErrorsReturn errors that occurred during artifact tracing
getArtifactIssuesReturn issues that occur during artifact analysis
getAvailableMetricIdsReturn metric identifiers for available metrics
getMetricsメトリクス結果にアクセスする
openArtifactメトリクス結果からトレースされたアーティファクトを開く
updateArtifactsUpdate trace information for pending artifact changes in the project

すべて折りたたむ

metric.Engine オブジェクトを使用して、プロジェクト内の設計アーティファクトに関するメトリクス結果を収集します。

解析するモデルを含むプロジェクトを開きます。この例では、MATLAB® コマンド ウィンドウで次のように入力します。

openExample("slcheck/ExploreTestingMetricDataInModelTestingDashboardExample");
openProject("cc_CruiseControl");

metric.Engine オブジェクトを作成します。metric.Engine オブジェクトを使用して、現在のプロジェクトについてのメトリクス結果を収集できます。

metric_engine = metric.Engine();

メトリクス エンジンを実行してメトリクス slcomp.OverallCyclomaticComplexity の結果を収集します。メトリクスの詳細については、モデル保守性メトリクスを参照してください。

execute(metric_engine,'slcomp.OverallCyclomaticComplexity');

関数 getMetrics を使用して結果にアクセスします。結果オブジェクトの配列を変数 results に代入します。

results = getMetrics(metric_engine,'slcomp.OverallCyclomaticComplexity');

results 配列内の metric.Result オブジェクトのプロパティを使用してメトリクスの結果データにアクセスします。

for n = 1:length(results)
    disp(['Model: ',results(n).Scope.Name])
    disp(['  Overall Design Cyclomatic Complexity: ',num2str(results(n).Value)])
end
Model: cc_DriverSwRequest
  Overall Design Cyclomatic Complexity: 9
Model: cc_ThrottleController
  Overall Design Cyclomatic Complexity: 4
Model: cc_ControlMode
  Overall Design Cyclomatic Complexity: 22
Model: cc_CruiseControl
  Overall Design Cyclomatic Complexity: 1
Model: cc_LightControl
  Overall Design Cyclomatic Complexity: 4

設計アーティファクトのメトリクスを収集する方法の詳細については、プログラムによるモデル保守性メトリクスの収集を参照してください。

metric.Engine オブジェクトを使用して、プロジェクト内の要件ベースのテスト アーティファクトに関するメトリクス結果を収集します。

モデルとテスト アーティファクトを含むプロジェクトを開きます。この例では、MATLAB コマンド ウィンドウで次のように入力します。

openExample("slcheck/ExploreTestingMetricDataInModelTestingDashboardExample");
openProject("cc_CruiseControl");

metric.Engine オブジェクトを作成します。metric.Engine オブジェクトを使用して、現在のプロジェクトについてのメトリクス結果を収集できます。

metric_engine = metric.Engine();

metric_engine のトレース情報を更新して、アーティファクト情報が確実に最新の状態になるようにします。

updateArtifacts(metric_engine)

metric.Engine オブジェクトに対して関数 execute を使用してメトリクス 'RequirementsPerTestCase' の結果を収集します。

execute(metric_engine,'RequirementsPerTestCase');

関数 getMetrics を使用して結果にアクセスします。結果オブジェクトの配列を変数 results に代入します。

results = getMetrics(metric_engine,'RequirementsPerTestCase');

配列内の metric.Result オブジェクトのプロパティを使用してメトリクスの結果データにアクセスします。

for n = 1:length(results)
    disp(['Test Case: ',results(n).Artifacts(1).Name])
    disp(['  Number of Requirements: ',num2str(results(n).Value)])
end

バージョン履歴

R2020b で導入