Modelブロックを​含んだモデルのカバレ​ッジを行うコマンドは​ありますか?

14 visualizzazioni (ultimi 30 giorni)
MathWorks Support Team
MathWorks Support Team il 25 Ott 2013
Modelブロック(参照モデル)を含んだモデルのカバレッジを行う方法を教えてください。

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 25 Ott 2013
TOP階層のテスト仕様設定において、下記を追加することでModelブロック(参照モデル)を含んだモデルのカバレッジを行うことができます。
cvto.modelRefSettings.enable='all';% 全ての参照モデルに対するカバレッジを設定
下記がプログラム例です。TOP_ModelNameとSignalNameは、カバレッジを行うモデル名、ブロック名に合わせて使用してください。
% 参照/参照先モデルの読み込み
TOP_ModelName = 'TOP_Model_Name';% Top階層のモデル名
open_system(TOP_ModelName)
block_name = find_mdlrefs(TOP_ModelName);
for n=1:length(block_name)
% 非視覚的にモデルを読み込み
load_system(block_name{n})
end
% SignalBuilder名設定
SignalName = 'TOP_Model_Name/SignalBuilder_TestPattern';
[time,data,siglabelsl,grouplabel]=signalbuilder(SignalName);
% SignalBuilderの取得したグループラベルの各信号をcvsimコマンドによりシミュレーション
for n=1:length(grouplabel)
% Signal Builderのタブをアクティブに
signalbuilder(SignalName,'ActiveGroup',n);
%シグナル信号の最終時間取得
[time, data] = signalbuilder(SignalName, 'get', 1, n);
TimeEnd = num2str(time(end));
%上位モデルのコンフィギュレーションパラメータ変更
hAcs = getActiveConfigSet(TOP_ModelName);
hAcs.set_param('StopTime', TimeEnd);
% テスト仕様の設定
cvto=cvtest(TOP_ModelName)
cvto.settings.decision=1; % カバレッジ測定対象をdecisionに設定
cvto.settings.mcdc=1; % カバレッジ測定対象をMCDCに設定
cvto.settings.condition=1; % カバレッジ測定対象をConditionに設定
cvto.modelRefSettings.enable='all';% 全ての参照モデルに対するカバレッジを設定
cvdg = cvsim(cvto)
% モデルのカバレッジの合算
if ~exist('covData0','var')
covData0 = cvdg;
else
covData0 = covData0 + cvdg;
end
end
% 統合カバレッジをHTMLで出力
htmlname=sprintf('%s_report%s.html',TOP_ModelName,'All');
cvhtml(htmlname,covData0);

Più risposte (0)

Categorie

Scopri di più su カバレッジ ワークフローの自動化 in Help Center e File Exchange

Tag

Non è stata ancora inserito alcun tag.

Prodotti


Release

R2010b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!