メインコンテンツ

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.automation.diagnostics.Diagnostic インスタンスとして指定します。

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

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

最小限の情報

2Concise

中程度の情報量

3Detailed

ある程度の補足的な情報

4Verbose

多くの補足的な情報

すべて展開する

現在のフォルダー内の sampleTest.m という名前のファイルに、診断ログを含む関数ベースのテストを作成します。

function tests = sampleTest
tests = functiontests(localfunctions);
end

function svdTest(testCase)
import matlab.automation.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)
end

LoggingPlugin クラスをインポートします。

import matlab.unittest.plugins.LoggingPlugin

テスト ファイルからテスト スイートを作成します。

suite = testsuite("sampleTest.m");

既定のテスト ランナーを使用してテストを実行します。テスト ランナーは matlab.automation.Verbosity.Terse レベル (レベル 1) でログに記録された診断情報を表示します。

runner = testrunner;
results = runner.run(suite);
Running sampleTest

[Terse] Diagnostic logged (2024-08-16 17:11:33): About to call SVD

[Terse] Diagnostic logged (2024-08-16 17:11:33): SVD finished
.
Done sampleTest
__________

新しいテスト ランナーを作成し、matlab.automation.Verbosity.Concise レベル (レベル 2) 以下でログに記録された診断情報を表示するプラグインを使用して構成します。その後、そのテスト ランナーを使用してテストを再実行します。プラグインは、テストに関連するすべての診断ログを表示します。

runner = testrunner("minimal");
plugin = LoggingPlugin.withVerbosity("Concise");
runner.addPlugin(plugin)
results = runner.run(suite);
 [Concise] Diagnostic logged (2024-08-16T17:13:11): Generating matrix
   [Terse] Diagnostic logged (2024-08-16T17:13:11): About to call SVD
   [Terse] Diagnostic logged (2024-08-16T17:13:11): SVD finished

バージョン履歴

R2014b で導入