主要内容

matlab.unittest.TestRunner.withTextOutput

R2026b

类: matlab.unittest.TestRunner
命名空间: matlab.unittest

创建配置为文本输出的测试运行器

语法

runner = matlab.unittest.TestRunner.withTextOutput
runner = matlab.unittest.TestRunner.withTextOutput(Name=Value)

描述

runner = matlab.unittest.TestRunner.withTextOutput 创建一个配置为从 MATLAB® 命令行窗口运行测试的 TestRunner 对象。所生成的输出包括测试进度以及测试失败时的诊断情况。

runner = matlab.unittest.TestRunner.withTextOutput(Name=Value) 使用一个或多个名称-值参量指定选项。例如,runner = matlab.unittest.TestRunner.withTextOutput(LoggingLevel="None") 创建一个排除记录的诊断的测试运行器。

名称-值参数

全部展开

将可选参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。

示例: runner = matlab.unittest.TestRunner.withTextOutput(OutputDetail=4)

测试输出的显示级别,指定为从 0 到 4 的整数标量、matlab.automation.Verbosity 枚举对象或枚举的文本表示。

数值表示枚举成员名称详细程度描述
0None

无信息

1Terse

最少的信息

2Concise

适中信息量

3Detailed

部分补充信息

4Verbose

大量补充信息

默认情况下,测试运行器显示 matlab.automation.Verbosity.Detailed 级别(级别 3)的失败事件和记录的事件,以及 matlab.automation.Verbosity.Concise 级别(级别 2)的测试运行进度。

已记录诊断的详细级别,指定为从 0 到 4 的整数标量、matlab.automation.Verbosity 枚举对象或枚举的文本表示。测试运行器包括在指定级别及以下级别记录的诊断。

数值表示枚举成员名称详细程度描述
0None

无信息

1Terse

最少的信息

2Concise

适中信息量

3Detailed

部分补充信息

4Verbose

大量补充信息

默认情况下,测试运行器包括在 matlab.automation.Verbosity.Terse 级别(级别 1)记录的诊断。要排除所记录的诊断信息,请将 LoggingLevel 指定为 matlab.automation.Verbosity.None(级别 0)。

记录的诊断是您使用 log (TestCase) 和 log (Fixture) 方法为单元测试框架提供的诊断。

属性

Statictrue

要了解方法的属性,请参阅方法属性。

示例

全部展开

将 matlab.unittest 类添加到当前导入列表。

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

创建一个 TestSuite 数组。

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

创建一个在命令行窗口中生成输出的 TestRunner 对象。

runner = TestRunner.withTextOutput;

% Run the suite
result = run(runner,suite)

在您的当前工作文件夹下的文件 ExampleLogTest.m 中创建以下类。

classdef ExampleLogTest < matlab.unittest.TestCase
    methods(Test)
        function testOne(testCase)
            log(testCase,'Detailed','Starting Test')
            log(testCase,'Testing 5==5')
            testCase.verifyEqual(5,5)
            log(testCase,'Verbose','Test Complete')
        end
    end
end

在命令提示符下运行测试。

result = run(ExampleLogTest);
Running ExampleLogTest
.
Done ExampleLogTest
__________

创建一个测试运行器以按照详细级别 4 以及更低的级别显示记录的消息,然后运行测试。

import matlab.unittest.TestRunner
import matlab.unittest.TestSuite
suite = TestSuite.fromClass(?ExampleLogTest);
runner = TestRunner.withTextOutput('LoggingLevel',4);

results = runner.run(suite);
Running ExampleLogTest

[Detailed] Diagnostic logged (2022-10-15 18:39:59): Starting Test

[Concise] Diagnostic logged (2022-10-15 18:39:59): Testing 5==5

[Verbose] Diagnostic logged (2022-10-15 18:39:59): Test Complete
.
Done ExampleLogTest
__________

版本历史记录

在 R2013a 中推出