createSharedTestFixture

Класс: matlab.unittest.plugins.TestRunnerPlugin
Пакет: matlab.unittest.plugins

Расширение создания разделяемых экземпляров испытательного стенда

Описание

пример

f = createSharedTestFixture(plugin,pluginData) расширяет создание разделяемых испытательных стендов и возвращает модифицированный Fixture экземпляр, f. Среда тестирования использует экземпляр фиксатора, чтобы настроить запускающие тесты, то использование совместно использовало фиксаторы. Среда оценивает этот метод в рамках runTestSuite метод TestRunnerPlugin для каждого разделяемого испытательного стенда это должно настроить. Типичная реализация этого метода должна добавить прослушиватели различных событий, происходящих из разделяемого экземпляра испытательного стенда. Начиная с Fixture наследовался handle класс, добавляют прослушиватели путем вызова addlistener метод из createSharedTestFixture метод.

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

plugin

Сменный объект, заданный как экземпляр matlab.unittest.plugins.TestRunnerPlugin класс.

pluginData

Информация создания испытательного стенда, которой поделились, указанная как экземпляр matlab.unittest.plugins.plugindata.TestContentCreationPluginData класс. Среда тестирования использует эту информацию, чтобы описать содержание теста к плагину.

Примеры

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

Расширьте выполнение тестов, чтобы считать количество разделяемых отказов утверждения испытательного стенда.

classdef ExamplePlugin < matlab.unittest.plugins.TestRunnerPlugin
    
    properties (SetAccess = private)
        FixtureAssertionFailureData = {};
    end
    
    methods (Access = protected)
        function fixture = createSharedTestFixture(plugin, pluginData)
            % Invoke the super class method
            fixture = createSharedTestFixture@...
                matlab.unittest.plugins.TestRunnerPlugin(plugin, pluginData);
            
            % Get the fixture name
            fixtureName = pluginData.Name;
            
            % Add a listener to fixture assertion failures
            % and capture the qualification failure information
            fixture.addlistener('AssertionFailed', @(~,evd) ...
                plugin.captureFixtureAssertionFailureData(evd, fixtureName))
        end
    end
    
    methods (Access = private)
        function captureFixtureAssertionFailureData(plugin, eventData, fixtureName)
            plugin.FixtureAssertionFailureData{end+1} = struct(...
                'FixtureName', fixtureName, ...
                'ActualValue', eventData.ActualValue, ...
                'Constraint' , eventData.Constraint, ...
                'Stack'      , eventData.Stack);
        end
    end
end

Введенный в R2014a