matlab.unittest.fixtures.TemporaryFolderFixture class

Пакет: matlab.unittest.fixtures

Фиксатор для создания временной папки

Описание

The matlab.unittest.fixtures.TemporaryFolderFixture предоставляет фиксатор для создания временной папки. Когда среда тестирования настраивает фиксатор, она создает временную папку. Когда он порвет фиксатор, он удаляет папку и все ее содержимое. Прежде чем удалить папку, фиксатор очищает из памяти определения любых файлов MATLAB, P-файлов и файлов MEX, которые определены во временной папке.

Оба TemporaryFolderFixture и WorkingFolderFixture фиксаторы создают временную папку. В отличие от WorkingFolderFixture, а TemporaryFolderFixture не устанавливает папку в качестве текущей рабочей папки.

Конструкция

matlab.unittest.fixtures.TemporaryFolderFixture создает фиксатор для создания временной папки.

matlab.unittest.fixtures.TemporaryFolderFixture(Name,Value) создает фиксатор для создания временной папки с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар.

Входные параметры

расширить все

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Индикатор сохранения временной папки и ее содержимого в случае непройденного теста, указанный как false или true (logical 0 или 1). Это свойство false по умолчанию. Можно задать его следующим true во время конструкции фиксатора.

Типы данных: logical

Суффикс для временного имени папки, заданный как вектор символов.

Свойства

Folder

Абсолютный путь к папке, созданной фиксатор, заданный как вектор символов.

PreserveOnFailure

Индикатор сохранения временной папки и ее содержимого в случае непройденного теста. Это свойство logical(0) или logical(1). Это logical(0) по умолчанию, но установлено в logical(1) если 'PreservingOnFailure' входное значение установлено в true во время конструкции фиксатора.

Suffix

Суффикс, используемый для временной папки, задается как вектор символов в Name,Value аргумент в виде пары, 'WithSuffix'.

Копировать семантику

Указатель. Чтобы узнать, как классы handle влияют на операции копирования, см. раздел «Копирование объектов».

Примеры

свернуть все

Создайте следующую tempFolderFixtureTest определение класса в MATLAB® путь.

classdef tempFolderFixtureTest < matlab.unittest.TestCase
    methods(Test)
        function test1(testCase)
            import matlab.unittest.fixtures.TemporaryFolderFixture
            
            tempFixture = testCase.applyFixture(TemporaryFolderFixture);
            
            disp(['The temporary folder: ' tempFixture.Folder])
        end
    end
end

В командной строке запустите тест.

run(tempFolderFixtureTest);
Running tempFolderFixtureTest
The temporary folder: C:\Temp\tpfb1ae2cf_c9de_4de3_9557_00d52bfcc1b2
.
Done tempFolderFixtureTest
__________

Имя временной папки изменяется.

Создайте следующую anotherTempFolderFixtureTest определение класса в пути MATLAB. В целях этого примера test1 функция содержит проверку типа «assertion», которая вызывает непройденный тест.

classdef anotherTempFolderFixtureTest < matlab.unittest.TestCase
    methods(Test)
        function test1(testCase)
            import matlab.unittest.fixtures.TemporaryFolderFixture
            
            testCase.applyFixture(TemporaryFolderFixture( ...
                'PreservingOnFailure',true,'WithSuffix','TestData'));
            
            % Failed assertion, preserved temporary folder
            testCase.assertEqual(1,2)
        end
    end
end

В командной строке запустите тест.

run(anotherTempFolderFixtureTest);
Running anotherTempFolderFixtureTest

================================================================================
Assertion failed in anotherTempFolderFixtureTest/test1 and it did not run to completion.

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

    ------------------
    Stack Information:
    ------------------
    In C:\Documents\anotherTempFolderFixtureTest.m (anotherTempFolderFixtureTest.test1) at 10
================================================================================
   [Terse] Diagnostic logged (2014-04-01T13:50:51): 
Because of a failure in the test using the TemporaryFolderFixture, the following folder will not be deleted:
C:\Temp\tp9f5aa9f1_ead1_4462_91f2_08bbe7d0316cTestData


.
Done anotherTempFolderFixtureTest
__________

Failure Summary:

     Name                                Failed  Incomplete  Reason(s)
    ==============================================================================
     anotherTempFolderFixtureTest/test1    X         X       Failed by assertion.

Не удалось выполнить тест, и временная папка сохраняется. Можно открыть временную папку, показанную здесь следующим C:\Temp\tp9f5aa9f1_ead1_4462_91f2_08bbe7d0316cTestData, и изучить любое содержимое.

Введенный в R2013b