exponenta event banner

класс matlab.unittest.StartRunner

Пакет: matlab.unittest

Класс для выполнения тестов в matlab.unittest структура

Описание

matlab.unittest.TestRunner класс является фундаментальным API, используемым для запуска набора тестов в matlab.unittest рамки. Работает и работает на TestSuite массивы. Этот класс используется для настройки выполняемых тестов.

matlab.unittest.TestRunner класс является handle класс.

Атрибуты класса

Sealed
true

Сведения об атрибутах класса см. в разделе Атрибуты класса.

Создание

Создание простого, бесшумного TestRunner объект, вызовите статический withNoPlugins способ.

runner = matlab.unittest.TestRunner.withNoPlugins

Создание TestRunner для запуска тестов из окна команд MATLAB ® вызовите статическийwithTextOutput способ.

runner = matlab.unittest.TestRunner.withTextOutput

Создание настраиваемого TestRunner объект, вызовите addPlugin способ.

runner = TestRunner.withNoPlugins;
runner.addPlugin(SomePlugin())

Свойства

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

Корневая папка, в которой хранятся артефакты тестового запуска, заданная как строковый скалярный или символьный вектор. По умолчанию значение ArtifactsRootFolder является значением из string(tempdir), но вы можете установить его в любую папку для записи.

Любые артефакты, созданные во время тестового запуска, сохраняются во вложенной папке в ArtifactsRootFolder. Имя подпапки является уникальным идентификатором, связанным с определенным тестом. MATLAB создает подпапку, только если тестовый запуск создает артефакты.

Например, предположим, что ArtifactsRootFolder имеет значение "C:\Temp" и автоматически сгенерированный идентификатор тестового запуска: "1231df38-7515-4dbe-a869-c3d9f885f379". Если тестовый запуск создает артефакт, "artifact.txt", артефакт хранится как "C:\Temp\1231df38-7515-4dbe-a869-c3d9f885f379\artifact.txt".

Приборы, настроенные вне тестового питателя, указанные как скалярный вектор или вектор строки matlab.unittest.fixtures.Fixture экземпляры. Используйте это свойство, чтобы указать, что настройка среды выполняется вручную, а не автоматически во время настройки приспособления и отрыва.

Испытательный литник считает, что эти приспособления уже установлены, и никогда не пытается установить или разорвать какие-либо приспособления, указанные PrebuiltFixtures собственность. Если для набора тестов требуется общий тестовый прибор и этот тестовый прибор указан как предварительно созданный, тестовый питатель не выполняет действия настройки или разрыва.

Примечание

Испытательный питатель использует готовое приспособление только в том случае, если оно определено PrebuiltFixtures свойство и указано как SharedTestFixture в определении класса теста. Испытательный питатель не использует предварительно встроенное приспособление, если оно зарегистрировано с помощью TestCase.applyFixture способ.

Методы

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

Примеры

свернуть все

Добавить matlab.unittest классов к текущему списку импорта.

import matlab.unittest.TestRunner
import matlab.unittest.TestSuite

Создать TestSuite массив.

suite = TestSuite.fromClass(?mypackage.MyTestClass);

Создать TestRunner и запустите набор.

runner = TestRunner.withTextOutput;
result = run(runner,suite);

В этом примере используется общий испытательный прибор, который затем задается как предварительно созданный. Испытательный питатель не настраивается и не срывает готовое приспособление. Поскольку в ходе теста предполагается, что приспособление существует, необходимо вручную выполнить работу по настройке, которую обычно выполняет приспособление.

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

classdef (SharedTestFixtures={ ...
        matlab.unittest.fixtures.PathFixture('helperFiles')}) ...
        SampleTest < matlab.unittest.TestCase
    methods(Test)
        function test1(testCase)
            f = testCase.getSharedTestFixtures;
            
            import matlab.unittest.constraints.ContainsSubstring
            testCase.assertThat(path,ContainsSubstring(f.Folder))
        end
    end
end

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

import matlab.unittest.TestRunner
import matlab.unittest.TestSuite

suite = TestSuite.fromClass(?SampleTest);
runner = TestRunner.withTextOutput;

Запустите тесты с помощью общего испытательного прибора. В этом случае приспособление не является предварительно встроенным.

runner.run(suite);
Setting up PathFixture
Done setting up PathFixture: Added 'C:\Work\helperFiles' to the path.
__________

Running SampleTest
.
Done SampleTest
__________

Tearing down PathFixture
Done tearing down PathFixture: Restored the path to its original state.
__________

Испытательный питатель настраивается и разрывает общий испытательный прибор.

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

f = matlab.unittest.fixtures.PathFixture('helperFiles');
runner.PrebuiltFixtures = f;

Добавить вручную 'helperFiles' к вашему пути. PathFixture добавляет указанную папку к вашему пути, и тесты зависят от этого действия установки. Однако, поскольку приспособление определено как предварительно встроенное, тестовый питатель не выполняет действия настройки или разрыва, и их необходимо выполнять вручную. В этом случае, если вручную не добавить его в путь, тест завершится неуспешно.

p = fullfile(pwd,'helperFiles');
oldPath = addpath(p);

Запустите тесты.

runner.run(suite);
Running SampleTest
.
Done SampleTest
__________

Испытательный питатель предполагает, что приспособление предварительно построено и не устанавливает его или не разрывает.

Вручную сбросьте путь.

path(oldPath)
Представлен в R2013a