Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

matlab.unittest.TestCase クラス

パッケージ: matlab.unittest

すべての matlab.unittest テスト クラスのスーパークラス

説明

この TestCase クラスはを matlab.unittest フレームワークに書き込むための手段です。このクラスによって、テストの内容、テストのフィクスチャのセットアップ、破棄ルーチンの書き込みと特定を行うことができます。このようなテストを作成するには、TestCase から導出して TestCase サブクラスを生成する必要があります。次にサブクラスでメタデータ属性を利用して、テストおよびテストのフィクスチャを指定することができます。

構築

forInteractiveUse 静的メソッドを使用して、対話型のコマンド ライン用の TestCase を作成します。フレームワークでテストを実行する場合、TestCase インスタンスは matlab.unittest.TestRunner によって作成されます。

メソッド

addTeardown破棄ルーチンを TestCase インスタンスに動的に追加
applyFixtureTestCase でのフィクスチャの使用
forInteractiveUse対話型で使用する TestCase を作成
getSharedTestFixtures共有テスト フィクスチャへのアクセスの提供
logテスト実行中の診断情報の記録
onFailureテスト失敗の診断情報を動的に追加
runTestCase テストを実行する

継承メソッド

TestCase クラスは、以下のクラスからメソッドを継承します。

matlab.unittest.qualifications.Assertableテストの前提条件を検証する検定
matlab.unittest.qualifications.Assumableテストの内容をフィルター処理する検定
matlab.unittest.qualifications.FatalAssertableテストの実行を中断する検定
matlab.unittest.qualifications.Verifiableソフト エラー条件を生成する検定

属性

クラスの属性

TestCase オブジェクトは以下のクラス レベルの属性をサポートします。クラス レベルの属性は、classdef ブロックでクラス名の前に指定します。

SharedTestFixtures共有テスト フィクスチャを含めるためのクラス ブロック。matlab.unittest.fixtures.Fixture インスタンスの cell 配列として SharedTestFixtures を定義しなければなりません。
TestTags指定された値のタグが付いているテストを含むクラス ブロック。TestTags は、空でない文字ベクトルの cell 配列、または空でない string の配列として定義しなければなりません。ここで各要素がテスト用のタグになります。

メソッドの属性

TestCase から導出されるクラスは、matlab.unittest フレームワーク固有の属性を含む methods ブロックを定義しての内容を指定することができます。

Testテスト メソッドを含めるためのメソッド ブロック。
TestMethodSetupセットアップ コードを含めるためのメソッド ブロック。
TestMethodTeardown破棄コードを含めるためのメソッド ブロック。
TestClassSetupクラス レベルのセットアップ コードを含めるためのメソッド ブロック。
TestClassTeardownクラス レベルの破棄コードを含めるためのメソッド ブロック。
ParameterCombination

パラメーター化されたテスト コードを含めるためのメソッド ブロック。この属性は、次の値を受け入れます。

  • 'exhaustive' (既定の設定): すべてのパラメーターの組み合わせについてテスト メソッドが呼び出されます。

  • 'sequential':各パラメーターの対応する値でテスト メソッドが呼び出されます。各パラメーターには、同じ数の値が含まれていなければなりません。

  • 'pairwise':パラメーター値の各ペアについて少なくとも 1 回はテスト メソッドが呼び出されます。

TestTags指定された値のタグが付いているテストを含むメソッド ブロック。TestTags は、空でない文字ベクトルの cell 配列、または空でない string の配列として定義しなければなりません。ここで各要素がテスト用のタグになります。

プロパティの属性

TestCase から導出されるクラスは、matlab.unittest フレームワーク固有の属性を含む properties ブロックを定義しての内容を指定することができます。

ClassSetupParameterTestClassSetup ブロックでメソッドのパラメーター化されたテスト プロパティを定義するプロパティ ブロック
MethodSetupParameterMethodSetup ブロックでメソッドのパラメーター化されたテスト プロパティを定義するプロパティ ブロック
TestParameterTest ブロックでメソッドのパラメーター化されたテスト プロパティを定義するプロパティ ブロック

イベント

VerificationFailed

検証の失敗時にトリガーされます。QualificationEventData オブジェクトがリスナー コールバック関数に渡されます。‎

VerificationPassed

検証の成功時にトリガーされます。QualificationEventData オブジェクトがリスナー コールバック関数に渡されます。

AssertionFailed

アサーションの失敗時にトリガーされます。QualificationEventData オブジェクトがリスナー コールバック関数に渡されます。

AssertionPassed

アサーションの成功時にトリガーされます。QualificationEventData オブジェクトがリスナー コールバック関数に渡されます。

FatalAssertionFailed

致命的なアサーションの失敗時にトリガーされます。QualificationEventData オブジェクトがリスナー コールバック関数に渡されます。‎

FatalAssertionPassed

致命的なアサーションの成功時にトリガーされます。QualificationEventData オブジェクトがリスナー コールバック関数に渡されます。‎

AssumptionFailed

仮定の失敗時にトリガーされます。QualificationEventData オブジェクトがリスナー コールバック関数に渡されます。‎

AssumptionPassed

仮定の成功時にトリガーされます。QualificationEventData オブジェクトがリスナー コールバック関数に渡されます。‎

ExceptionThrown

例外がスローされたときに TestRunner によりトリガーされます。ExceptionEventData オブジェクトがリスナー コールバック関数に渡されます。

DiagnosticLogged

log メソッドを呼び出したときに TestRunner によりトリガーされます。LoggedDiagnosticEventData オブジェクトがリスナー コールバック関数に渡されます。

すべて折りたたむ

TestMethodSetup および TestMethodTeardown メソッドを使って、テスト ケース クラス FigurePropertiesTest を作成します。

classdef FigurePropertiesTest < matlab.unittest.TestCase
 
    properties
        TestFigure
    end
 
    methods(TestMethodSetup)
        function createFigure(testCase)
            testCase.TestFigure = figure;
        end
    end
 
    methods(TestMethodTeardown)
        function closeFigure(testCase)
            close(testCase.TestFigure)
        end
    end
 
    methods(Test)
 
        function defaultCurrentPoint(testCase)
 
            cp = testCase.TestFigure.CurrentPoint;
            testCase.verifyEqual(cp, [0 0], ...
                'Default current point is incorrect')
        end
 
        function defaultCurrentObject(testCase)
            import matlab.unittest.constraints.IsEmpty
 
            co = testCase.TestFigure.CurrentObject;
            testCase.verifyThat(co, IsEmpty, ...
                'Default current object should be empty')
        end
 
    end
 
end
R2013a で導入