Main Content

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

matlab.mock.TestCase クラス

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

モッキング フレームワークを使用するテストを作成するための TestCase

説明

matlab.mock.TestCase クラスを使用して、モッキング フレームワークを使用するテストを記述します。matlab.mock.TestCasematlab.unittest.TestCase クラスから派生します。

構築

テスト フレームワークは matlab.mock.TestCase インスタンスを作成します。

メソッド

assertAccessedプロパティがアクセスされたことをアサート
assertCalled特定の入力値を使用してメソッドが呼び出されたことをアサート
assertNotAccessedプロパティがアクセスされていないことをアサート
assertNotCalledメソッドが特定の入力値を使用して呼び出されていないことをアサート
assertNotSetプロパティが設定されていないことをアサート
assertSetプロパティが設定されたことをアサート
assignOutputsWhenメソッドの呼び出しやプロパティへのアクセスに対する戻り値を定義
assumeAccessedプロパティがアクセスされたものと仮定します。
assumeCalled特定の入力値を使用してメソッドが呼び出されたものと仮定
assumeNotAccessedプロパティがアクセスされていないものと仮定
assumeNotCalledメソッドが特定の入力値を使用して呼び出されていないものと仮定
assumeNotSetプロパティが設定されていないものと仮定
assumeSetプロパティが設定されたものと仮定
clearMockHistoryモック オブジェクトの相互作用の履歴をクリア
createMockモック オブジェクトの作成
fatalAssertAccessedプロパティがアクセスされたことを致命的にアサート
fatalAssertCalled特定の入力値を使用してメソッドが呼び出されたことを致命的にアサート
fatalAssertNotAccessedプロパティがアクセスされていないことを致命的にアサート
fatalAssertNotCalledメソッドが特定の入力値を使用して呼び出されていないことを致命的にアサート
fatalAssertNotSetプロパティが設定されていないことを致命的にアサート
fatalAssertSetプロパティが設定されたことを致命的にアサート
forInteractiveUseモック オブジェクトの対話的な使用のための TestCase の作成
getMockHistoryTestCase インスタンスからモック相互作用の履歴を返す
returnStoredValueWhenプロパティがアクセスされたときに格納された値を返す
storeValueWhenプロパティが設定されたときに値を格納する
throwExceptionWhenメソッドの呼び出しやプロパティの相互作用に対して例外をスロー
verifyAccessedプロパティがアクセスされたことを検証
verifyCalled特定の入力値を使用してメソッドが呼び出されたことを検証
verifyNotAccessedプロパティがアクセスされていないことを検証
verifyNotCalledメソッドが特定の入力値を使用して呼び出されていないことを検証
verifyNotSetプロパティが設定されていないことを検証
verifySetプロパティが設定されたことを検証

継承メソッド

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ソフト エラー条件を生成する検定

コピーのセマンティクス

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

すべて折りたたむ

モックを使用してテストを作成します。

import matlab.unittest.constraints.IsLessThan;
testCase = matlab.mock.TestCase.forInteractiveUse;

% Create a mock for a bank account class
[mock, behavior] = testCase.createMock('AddedMethods',["deposit" "isOpen"]);

% Set up behavior
testCase.throwExceptionWhen(behavior.deposit(IsLessThan(0)), ...
    MException('Account:deposit:Negative', ...
    'Deposit amount must be positive.'));

% Use mock object
mock.deposit(100);
testCase.verifyError(@() mock.deposit(-10), 'Account:deposit:Negative');

% Passing verifications
testCase.verifyCalled(behavior.deposit(100),...
    'A $100 deposit should have been made.');
testCase.assertNotCalled(behavior.deposit(0));
testCase.assertCalled(behavior.deposit(IsLessThan(0)));

% Failing assertion
testCase.assertCalled(withExactInputs(behavior.isOpen));
R2017a で導入