Main Content

matlab.unittest.fixtures.CurrentFolderFixture クラス

名前空間: matlab.unittest.fixtures
スーパークラス: matlab.unittest.fixtures.Fixture

現在のフォルダーを変更するフィクスチャ

説明

matlab.unittest.fixtures.CurrentFolderFixture クラスにより、現在のフォルダーを変更するフィクスチャが提供されます。テスト フレームワークでフィクスチャをセットアップすると、フィクスチャによって現在のフォルダーが指定したフォルダーに変更されます。フレームワークでフィクスチャを破棄すると、フィクスチャによって現在のフォルダーが元のフォルダーに戻されます。

matlab.unittest.fixtures.CurrentFolderFixture クラスは handle クラスです。

作成

説明

fixture = matlab.unittest.fixtures.CurrentFolderFixture(folder) は、現在のフォルダーを指定されたフォルダーに変更するフィクスチャを作成し、Folder プロパティを設定します。

プロパティ

すべて展開する

ターゲット フォルダーの絶対パス。文字ベクトルとして返されます。このプロパティの値は、フィクスチャの作成時に string スカラーまたは文字ベクトルとして指定します。相対パスを指定できますが、相対パスは現在のフォルダー内になければなりません。それ以外の場合、絶対パスを指定する必要があります。

MATLAB® は、folder が存在していないとエラーをスローします。

属性:

GetAccess
public
SetAccess
immutable

すべて折りたたむ

CurrentFolderFixture インスタンスを使用して、テスト用に現在のフォルダーを変更します。

この例では、フォルダー helperFiles が現在のフォルダーに存在していると仮定します。フォルダーが存在しない場合は作成します。

[~,~] = mkdir("helperFiles")

現在のフォルダー内の CurrentFolderTest.m という名前のファイルで、フィクスチャを使用して現在のフォルダーを helperFiles に変更する CurrentFolderTest クラスを作成します。この例では、簡略化するために、新しい現在のフォルダーの絶対パスに部分文字列 "helperFiles" が含まれていることをテストで検証します。

classdef CurrentFolderTest < matlab.unittest.TestCase
    methods (Test)
        function testCurrentFolder(testCase)
            import matlab.unittest.fixtures.CurrentFolderFixture
            testCase.applyFixture(CurrentFolderFixture("helperFiles"))
            testCase.verifySubstring(pwd,"helperFiles")
        end
    end
end

CurrentFolderTest クラスを実行する前に、まず現在のフォルダーのパスを返します。返されるパスに "helperFiles" は含まれていません。

pwd
ans =

    'C:\work'

テスト クラスを実行します。フィクスチャにより、現在のフォルダーが helperFiles に変更されます。したがって、テストはパスします。

runtests("CurrentFolderTest");
Running CurrentFolderTest
.
Done CurrentFolderTest
__________

テストの実行が完了すると、テスト フレームワークでフィクスチャが破棄され、環境が元の状態に戻ります。

pwd
ans =

    'C:\work'

バージョン履歴

R2013b で導入