Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

log

クラス: matlab.unittest.TestCase
パッケージ: matlab.unittest

テスト実行中の診断情報の記録

構文

log(testCase,diagnostic)
log(testCase,v,diagnostic)

説明

log(testCase,diagnostic) は指定した診断情報を記録します。log メソッドは、実行中にテストの情報を記録する手段を提供します。テスト フレームワークでは、matlab.unittest.plugins.LoggingPlugin などの適切なプラグインを追加してテスト フレームワークの動作を構成した場合に限り、記録したメッセージが表示されます。

log(testCase,v,diagnostic) は指定した詳細レベル v で診断情報を記録します。

入力引数

すべて展開する

テスト ケースのインスタンス。matlab.unittest.TestCase として指定します。

失敗時に表示する診断情報。string 配列、文字配列、関数ハンドルまたは matlab.unittest.diagnostics.Diagnostic インスタンスとして指定します。

詳細レベル。1 ~ 4 の整数値、matlab.unittest.Verbosity 列挙型オブジェクト、事前定義された列挙型メンバー名のいずれかに対応する string スカラーまたは文字ベクトルとして指定します。診断メッセージの既定の詳細レベルは Concise です。整数値は matlab.unittest.Verbosity 列挙型のメンバーに対応します。

数値表現列挙型メンバー名詳細レベルの説明
1Terse

最小限の情報

2Concise

中程度の情報量

3Detailed

ある程度の補足的な情報

4Verbose

多くの補足的な情報

すべて展開する

作業フォルダーのファイル sampleLogTest.m に、関数ベースのテストを作成します。

function tests = sampleLogTest
tests = functiontests(localfunctions);

function svdTest(testCase)
import matlab.unittest.Verbosity

log(testCase,'Generating matrix.');
m = rand(1000);

log(testCase,1,'About to call SVD.');
[U,S,V] = svd(m);

log(testCase,Verbosity.Terse,'SVD finished.');

verifyEqual(testCase,U*S*V',m,'AbsTol',1e-6)

コマンド プロンプトで、テストを実行します。

results = run(sampleLogTest);
Running sampleLogTest
   [Terse] Diagnostic logged (2014-04-14T14:20:59): About to call SVD.
   [Terse] Diagnostic logged (2014-04-14T14:20:59): SVD finished.
.
Done sampleLogTest
__________

既定のランナーはレベル 1 (Terse) の診断情報を報告します。

レベル 1 および 2 の診断情報を報告するテスト ランナーを作成し、テストを再度実行します。

import matlab.unittest.TestRunner
import matlab.unittest.plugins.LoggingPlugin

runner = TestRunner.withNoPlugins;
p = LoggingPlugin.withVerbosity(2);
runner.addPlugin(p);

results = runner.run(sampleLogTest);
 [Concise] Diagnostic logged (2014-04-14T14:28:14): Generating matrix.
   [Terse] Diagnostic logged (2014-04-14T14:28:14): About to call SVD.
   [Terse] Diagnostic logged (2014-04-14T14:28:15): SVD finished.
R2014b で導入