matlab.unittest.fixtures. Класс TemporaryFolderFixture

Пакет: matlab.unittest.fixtures

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

Описание

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 должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

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

Типы данных: логический

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

Свойства

Folder

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

PreserveOnFailure

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

Suffix

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

Примеры

свернуть все

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

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

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

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

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

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

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

Для просмотра документации необходимо авторизоваться на сайте