log

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

Запишите диагностическую информацию во время выполнения теста

Синтаксис

log(testCase,diagnostic)
log(testCase,v,diagnostic)

Описание

log(testCase,diagnostic) регистрирует предоставленную диагностику. Логарифмический метод обеспечивает средние значения для тестов, чтобы регистрировать информацию во время их выполнения. Отображения среды тестирования регистрировали сообщения, только если вы конфигурируете его, чтобы сделать так путем добавления соответствующего плагина, такого как matlab.unittest.plugins.LoggingPlugin.

log(testCase,v,diagnostic) регистрирует диагностику на заданном уровне многословия, v.

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

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

Экземпляр теста в виде matlab.unittest.TestCase.

Диагностическая информация, чтобы отобразиться после отказа в виде массива строк, символьного массива, указателя на функцию или matlab.unittest.diagnostics.Diagnostic экземпляр.

Уровень многословия в виде целочисленного значения между 1 и 4, matlab.unittest.Verbosity объект перечисления, или строковый скаляр или вектор символов, соответствующий одному из предопределенных имен элемента перечисления. Уровнем многословия по умолчанию для диагностических сообщений является Concise. Целочисленные значения соответствуют членам matlab.unittest.Verbosity перечисление.

Числовое представлениеИмя элемента перечисленияОписание многословия
1Terse

Минимальная информация

2Concise

Умеренный объем информации

3Detailed

Некоторая дополнительная информация

4Verbose

Большая дополнительная информация

Примеры

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

Создайте функциональный тест в файле, sampleLogTest.m, в вашей рабочей папке.

function tests = sampleLogTest
tests = functiontests(localfunctions);

function svdTest(testCase)
import matlab.unittest.Verbosity

log(testCase,'Generating matrix.');
m = rand(1000);

log(testCase,1,'About to call SVD.');
[U,S,V] = svd(m);

log(testCase,Verbosity.Terse,'SVD finished.');

verifyEqual(testCase,U*S*V',m,'AbsTol',1e-6)

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

results = run(sampleLogTest);
Running sampleLogTest
   [Terse] Diagnostic logged (2014-04-14T14:20:59): About to call SVD.
   [Terse] Diagnostic logged (2014-04-14T14:20:59): SVD finished.
.
Done sampleLogTest
__________

Бегун по умолчанию сообщает о диагностике на уровне 1 (Terse).

Создайте исполнителя тестов, чтобы сообщить о диагностике на уровнях 1 и 2 и повторно выполнить тест.

import matlab.unittest.TestRunner
import matlab.unittest.plugins.LoggingPlugin

runner = TestRunner.withNoPlugins;
p = LoggingPlugin.withVerbosity(2);
runner.addPlugin(p);

results = runner.run(sampleLogTest);
 [Concise] Diagnostic logged (2014-04-14T14:28:14): Generating matrix.
   [Terse] Diagnostic logged (2014-04-14T14:28:14): About to call SVD.
   [Terse] Diagnostic logged (2014-04-14T14:28:15): SVD finished.
Введенный в R2014b