Создайте простые тестовые наборы

В этом примере показано, как объединить тесты в тестовые наборы, используя SolverTest тест. Используйте статическую from* методы в matlab.unittest.TestSuite class, чтобы создать наборы для комбинаций ваших тестов, организованных ли они в пакеты и классы или файлы и папки, или и то, и другое.

Создайте квадратичную функцию решателя

Создайте следующую функцию, которая решает корни квадратичного уравнения в файле, quadraticSolver.m, в рабочей папке.

function roots = quadraticSolver(a, b, c)
% quadraticSolver returns solutions to the 
% quadratic equation a*x^2 + b*x + c = 0.

if ~isa(a,'numeric') || ~isa(b,'numeric') || ~isa(c,'numeric')
    error('quadraticSolver:InputMustBeNumeric', ...
        'Coefficients must be numeric.');
end

roots(1) = (-b + sqrt(b^2 - 4*a*c)) / (2*a);
roots(2) = (-b - sqrt(b^2 - 4*a*c)) / (2*a);

end

Создайте тест для квадратичной функции решателя

Создайте следующий тестовый класс в файле, SolverTest.m, в рабочей папке.

classdef SolverTest < matlab.unittest.TestCase
    % SolverTest tests solutions to the quadratic equation
    % a*x^2 + b*x + c = 0
    
    methods (Test)
        function testRealSolution(testCase)
            actSolution = quadraticSolver(1,-3,2);
            expSolution = [2,1];
            testCase.verifyEqual(actSolution,expSolution);
        end
        function testImaginarySolution(testCase)
            actSolution = quadraticSolver(1,2,10);
            expSolution = [-1+3i, -1-3i];
            testCase.verifyEqual(actSolution,expSolution);
        end
    end
    
end

Импортируйте класс TestSuite

В командной строке добавьте matlab.unittest.TestSuite класс в текущий список импорта.

import matlab.unittest.TestSuite

Убедитесь, что SolverTest файл определения класса находится в MATLAB® путь.

Создайте набор из класса SolverTest

The fromClass метод создает набор из всех Test методы в SolverTest класс.

suiteClass = TestSuite.fromClass(?SolverTest);
result = run(suiteClass);

Создайте набор из файла определения класса SolverTest

The fromFile метод создает набор с использованием имени файла для идентификации класса.

suiteFile = TestSuite.fromFile('SolverTest.m');
result = run(suiteFile);

Создайте набор из всех файлов тестов в текущей папке

The fromFolder метод создает набор из всех файлов тестов в указанной папке. Например, следующие файлы находятся в текущей папке:

  • BankAccountTest.m

  • DocPolynomTest.m

  • FigurePropertiesTest.m

  • IsSupportedTest.m

  • SolverTest.m

suiteFolder = TestSuite.fromFolder(pwd);
result = run(suiteFolder);

Создайте набор из метода одиночного тестирования

The fromMethod метод создает набор из одного метода тестирования.

suiteMethod = TestSuite.fromMethod(?SolverTest,'testRealSolution')'
result = run(suiteMethod);

См. также

Похожие темы