exponenta event banner

класс matlab.unittest.fixtures.WorkingFolderFixture

Пакет: matlab.unittest.fixtures

Приспособление для создания и изменения на временную рабочую папку

Описание

matlab.unittest.fixtures.WorkingFolderFixture создает временную папку и устанавливает ее в качестве текущей рабочей папки. Тестовый или тестируемый продукт может создавать файлы и изменять содержимое папки, не влияя на исходный код или структуру тестовой папки.

Когда структура тестирования настраивает приспособление, она добавляет текущую папку к пути. Затем прибор создает временную папку и изменяет текущую рабочую папку на временную. Когда платформа тестирования разрывает приспособление, по умолчанию она удаляет временную папку и все содержимое папки. Платформа тестирования восстанавливает предыдущее состояние текущей рабочей папки.

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

Строительство

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

matlab.unittest.fixtures.WorkingFolderFixture(Name,Value) создает приспособление с дополнительными опциями, заданными одним или несколькими Name,Value аргументы пары. Например, matlab.unittest.fixtures.WorkingFolderFixture('PreservingOnFailure',true) создает приспособление, которое не удаляет временную папку в случае ошибки.

Входные аргументы

развернуть все

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

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

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

При указании 'PreservingOnFailure' как true и тест, использующий прибор, обнаруживает сбой, платформа тестирования отображает сообщение в окне команд и не удаляет папку. Ошибки включают в себя ошибки проверки, утверждения или неустранимого подтверждения квалификации и непроверенные ошибки в тестах, в которых используется приспособление. Сохранение временной папки и ее содержимого может помочь в расследовании причины сбоя теста.

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

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

Пример: WorkingFolderFixture('WithSuffix','_ProductA')

Свойства

развернуть все

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

Индикатор сохранения временной папки и ее содержимого в случае сбоя теста, указанный как false или true. Установка этого свойства через конструктор с помощью аргумента пары имя-значение 'PreservingOnFailure'.

Суффикс для имени временной папки, указанный как символьный вектор. Установка этого свойства через конструктор с помощью аргумента пары имя-значение 'WithSuffix'.

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

Ручка. Сведения о том, как классы обработки влияют на операции копирования, см. в разделе Копирование объектов.

Примеры

свернуть все

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

classdef ExampleTest < matlab.unittest.TestCase
    methods(Test)
        function test1(testCase)
            import matlab.unittest.fixtures.WorkingFolderFixture;
            
            testCase.applyFixture(WorkingFolderFixture);
            
            x = 1:10;
            
            % Save a file in the temporary folder
            save('data.mat','x');
            
            disp(['The temporary working folder: ' pwd])
            ls
        end
    end
end

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

run(ExampleTest);
Running ExampleTest
The temporary working folder: C:\AppData\Local\Temp\tp6ff2cadf_9eed_4e90_88c1_5ff9ee8abb25

.         ..        data.mat  

.
Done ExampleTest
__________

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

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

classdef ExampleTest2 < matlab.unittest.TestCase
    methods(Test)
        function test1(testCase)
            import matlab.unittest.fixtures.WorkingFolderFixture;
            
            f = WorkingFolderFixture('WithSuffix','_ProductA');
            testCase.applyFixture(f);
            
            x = 1:10;
            
            % Save a file in the temporary folder
            save('data.mat','x');
            
            disp(['The temporary working folder: ' pwd])
            ls
        end
    end
end

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

run(ExampleTest2);
Running ExampleTest2
The temporary working folder: C:\AppData\Local\Temp\tp72c6ce7c_a380_4f5e_be3b_4f7191a6cd2c_ProductA

.         ..        data.mat  

.
Done ExampleTest2
__________

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

Представлен в R2016a