metric.Result
説明
metric.Result
オブジェクトには指定したメトリクスの結果が含まれます。
作成
説明
はメトリクス結果オブジェクトへのハンドルを作成します。metric_result
= metric.Result
あるいは、metric.Engine
オブジェクトを実行して結果を収集した場合、エンジン オブジェクトで関数 getMetrics
を使用すると、収集された metric.Result
オブジェクトが配列で返されます。
プロパティ
MetricID
— メトリクス識別子
string
結果を計算したメトリクスのメトリクス識別子。string として返されます。
例: 'TestCasesPerRequirementDistribution'
Artifacts
— プロジェクトのアーティファクト
構造体 | 構造体の配列
メトリクスが計算されたプロジェクトのアーティファクト。構造体または構造体の配列として返されます。メトリクスで解析されたアーティファクトごとに、返された構造体には以下のフィールドが含まれています。
UUID
— アーティファクトの一意の識別子。Name
— アーティファクトの名前。ParentUUID
— アーティファクトが含まれているファイルの一意の識別子。ParentName
— アーティファクトが含まれているファイルの名前。
Value
— 結果の値
整数 | string | double ベクトル | 構造体
指定したメトリクスおよびアーティファクトのメトリクス結果の値。整数、string、double ベクトル、または構造体として返されます。モデル テストのメトリクスとその結果の値の一覧については、モデル テストのメトリクスを参照してください。
Scope
— メトリクス結果のスコープ
構造体
メトリクス結果のスコープ。構造体として返されます。スコープは、メトリクスで結果が収集された対象のユニットまたはコンポーネントです。構造体には以下のフィールドが含まれています。
UUID
— ユニットまたはコンポーネントの一意の識別子。Name
— ユニットまたはコンポーネントの名前。ParentUUID
— ユニットまたはコンポーネントが含まれているファイルの一意の識別子。ParentName
— ユニットまたはコンポーネントが含まれているファイルの名前。
UserData
— ユーザー データ
string
メトリクス アルゴリズムで提供されるユーザー データ。string として返されます。
例
プロジェクトでの設計アーティファクトに関するメトリクス結果の収集
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.Result
オブジェクトを使用してデータにアクセスします。
モデルとテスト アーティファクトを含むプロジェクトを開きます。この例では、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 で導入R2023a: フィールド Type
および ParentType
を返さない
metric.Result
オブジェクトは、プロパティ Artifacts
および Scope
の、フィールド Type
および ParentType
を返しません。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)