Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

matlab.unittest.TestRunner.withTextOutput

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

创建用于命令行窗口输出的 TestRunner 对象

语法

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

说明

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

runner = matlab.unittest.TestRunner.withTextOutput(Name,Value) 创建一个 TestRunner,并通过一个或多个 Name,Value 对组参数指定其他选项。例如,要创建一个 TestRunner(它用于排除记录的诊断信息),请指定 matlab.unittest.TestRunner.withTextOutput('LoggingLevel',0)

输入参数

全部展开

名称-值参数

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

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: matlab.unittest.TestRunner.withTextOutput('OutputDetail',4) 以详尽级别显示事件详细信息。

TestRunner 实例所包含的记录诊断的最高详细级别,指定为介于 0 和 4 之间的整数值、matlab.automation.Verbosity 枚举对象,或对应于预定义枚举成员名称之一的字符串标量或字符向量。TestRunner 包括在此级别及以下级别记录的诊断。整数值对应于 matlab.automation.Verbosity 枚举的成员。

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

记录的诊断信息是您通过调用 log (TestCase)log (Fixture) 方法提供给测试框架的诊断信息。

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

无信息

1Terse

最少的信息

2Concise

适中信息量

3Detailed

部分补充信息

4Verbose

大量补充信息

事件详细信息的显示级别,指定为介于 0 和 4 之间的整数值或 matlab.automation.Verbosity 枚举对象。整数值对应于 matlab.automation.Verbosity 枚举的成员,或者对应于预定义枚举成员名称之一的字符串标量或字符向量。

TestRunner 显示失败和记录的事件,其中包含 OutputDetail 指定的信息量。默认情况下,TestRunner 显示 matlab.automation.Verbosity.Detailed 级别(级别 3)的失败事件和记录的事件,以及 matlab.automation.Verbosity.Concise 级别(级别 2)的测试运行进度。

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

无信息

1Terse

最少的信息

2Concise

适中信息量

3Detailed

部分补充信息

4Verbose

大量补充信息

属性

Statictrue

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

示例

全部展开

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

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

创建一个 TestSuite 数组。

suite = TestSuite.fromClass(?mypackage.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 中推出