Main Content

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

matlab.unittest.diagnostics.FunctionHandleDiagnostic クラス

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

関数の表示出力を使用する診断

説明

FunctionHandleDiagnostic クラスは、関数の表示された出力を使用して診断結果を提供します。この出力は、MATLAB® が関数ハンドルの実行時に、コマンド プロンプトに表示されるテキストと同じです。診断情報に、関数ハンドルの出力として表示される情報からアクセスできる場合、FunctionHandleDiagnostic は、迅速な診断情報を提供する方法になります。

matlab.unittest 検定を使用している場合、関数ハンドルはテスト診断として直接提供できます。この場合、テスト フレームワークで FunctionHandleDiagnostic オブジェクトが自動的に作成されます。

構築

FunctionHandleDiagnostic(fcnHandle) は新しい FunctionHandleDiagnostic インスタンスを作成します。

入力引数

fcnHandle

診断情報を生成するために Diagnostic で使用される関数ハンドル。

結果の診断情報は MATLAB コマンド プロンプトで表示される出力と同じです。結果はテスト フレームワークでの消費用にパッケージ化され、コマンド プロンプトではこの情報が表示される場合と表示されない場合があります。

プロパティ

Fcn

Diagnostic で診断情報の生成に使用する関数ハンドル。fcnHandle 入力引数で指定します。このプロパティは読み取り専用です。

継承プロパティ

DiagnosticText

DiagnosticText プロパティは、テスト フレームワークなど、実際の診断情報を診断の消費者に伝える手段を提供します。このプロパティは、diagnose メソッドの評価中に定義される文字ベクトルです。

メソッド

継承メソッド

diagnose診断アクションの実行
join複数の診断の単一配列への結合

コピーのセマンティクス

ハンドル。コピー操作に対するハンドル クラスの影響については、オブジェクトのコピーを参照してください。

すべて折りたたむ

テストが失敗したときに関数 dir の出力を表示する診断結果を作成します。

現在の作業フォルダーにフォルダーを作成します。

mkdir('subfolderInCurrentFolder')

対話型テスト用にテスト ケースを作成します。

import matlab.unittest.TestCase
import matlab.unittest.constraints.IsEqualTo
import matlab.unittest.diagnostics.FunctionHandleDiagnostic

testCase = TestCase.forInteractiveUse;

FunctionHandleDiagnostic を使用して、テストが失敗したときに診断情報を表示します。

testCase.verifyThat(1, IsEqualTo(2), FunctionHandleDiagnostic(@dir))
Verification failed.

----------------
Test Diagnostic:
----------------

.                         ..                        subfolderInCurrentFolder  



---------------------
Framework Diagnostic:
---------------------
IsEqualTo failed.
--> NumericComparator failed.
    --> The numeric values are not equal using "isequaln".
    --> Failure table:
                Actual    Expected    Error    RelativeError
                ______    ________    _____    _____________
            
                1         2           -1       -0.5         

Actual double:
         1
Expected double:
         2

テストが失敗すると、診断により現在の作業フォルダーの内容が表示されます。この例の出力では、フォルダーには subfolderInCurrentFolder というサブフォルダーのみがあります。

またテスト フレームワークは verifyThat 検定への関数ハンドルの入力から FunctionHandleDiagnostic オブジェクトを作成することもできます。

testCase.verifyThat(1, IsEqualTo(2), @dir)
Verification failed.

----------------
Test Diagnostic:
----------------

.                         ..                        subfolderInCurrentFolder  



---------------------
Framework Diagnostic:
---------------------
IsEqualTo failed.
--> NumericComparator failed.
    --> The numeric values are not equal using "isequaln".
    --> Failure table:
                Actual    Expected    Error    RelativeError
                ______    ________    _____    _____________
            
                1         2           -1       -0.5         

Actual double:
         1
Expected double:
         2

テスト フレームワークは、必要な場合にのみ (一般的にはテストの失敗時にのみ) FunctionHandleDiagnostic オブジェクトを作成します。

バージョン履歴

R2013a で導入