主要内容

matlab.unittest.TestRunner类

包:matlab.unittest

在其中运行测试的类matlab.unittest框架

描述

matlab.unittest.TestRunner类中运行一套测试的基本APImatlab.unittest框架。它运行并运行于TestSuite数组。使用该类可自定义运行测试。

matlab.unittest.TestRunner类是一个处理类。

类属性

密封
真正的

有关类属性的信息,请参见类属性

创建

创造一种简单,沉默TestRunner对象,调用withNoPlugins静态方法。

runner = matlab.unittest. testrener . withnoplugins;

要创建TestRunner对象从MATLAB中运行测试®命令窗口,调用withTextOutput静态方法。

runner = matlab.unittest.TestRunner.withTextOutput;

要创建自定义的TestRunner对象,调用addPlugin方法。

runner = matlab.unittest. testrener . withnoplugins;runner.addPlugin (SomePlugin ())

属性

全部展开

存储测试运行构件的根文件夹,指定为字符串标量或字符向量。缺省情况下,ArtifactsRootFolder是从的值字符串(tempdir),但您可以将其设置为任何可写文件夹。

在测试运行期间产生的任何工件都存储在其中的子文件夹中ArtifactsRootFolder.子文件夹名称是与特定测试运行相关联的唯一标识符。MATLAB只在测试运行产生工件时才创建子文件夹。

例如,假设ArtifactsRootFolder设置为“C: \ Temp”自动生成的测试运行标识符是“1231 df38 - 7515 - 4 - dbe a869 c3d9f885f379”.如果测试产生了藏物,“artifact.txt”时,工件存储为“C: \ Temp \ 1231 df38 - 7515 - 4 - dbe a869 c3d9f885f379 \ artifact.txt”

的标量或行向量指定的在测试运行程序外部设置的fixturematlab.unittest.fixtures.Fixture实例。使用此属性可指定在夹具设置和拆卸期间手动执行环境配置,而不是自动执行。

类所指定的任何fixture,测试运行者将这些fixture视为已设置,并且从不尝试设置或拆除PrebuiltFixtures财产。如果一个测试套件需要一个共享的测试夹具,并且该测试夹具被指定为预构建的夹具,那么测试运行器不会执行设置或拆除操作。

请注意

类指定预构建的夹具时,测试运行程序才使用它PrebuiltFixtures属性,并被列为SharedTestFixture在测试类定义中。类注册的夹具,则测试运行程序不使用预构建的夹具TestCase.applyFixture方法。

方法

全部展开

例子

全部折叠

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

进口matlab.unittest.TestRunner进口matlab.unittest.TestSuite

创建一个TestSuite数组中。

TestSuite.fromClass(?mypackage.MyTestClass);

创建TestRunner对象并运行该套件。

runner = testrrunner . withtextoutput;结果= run(runner,suite);

这个例子使用了一个共享的测试夹具,然后将该夹具指定为预构建的。测试运行人员没有安装和拆除预制夹具。由于测试假设夹具存在,您必须手动执行夹具通常执行的设置工作。

在工作文件夹中的文件中创建一个测试类。测试类使用PathFixture作为一个共享的测试夹具。这个例子假设子文件夹,helperFiles,存在于您的工作文件夹中。

classdef(SharedTestFixtures = {...matlab.unittest.fixtures.PathFixture (“helperFiles”)})...SampleTest < matlab.unittest.TestCase方法(测试)函数test1(testCase) f = testCase. getsharedtestfixtures;进口matlab.unittest.constraints.ContainsSubstringtestCase.assertThat(路径,ContainsSubstring (f.Folder))结束结束结束

在命令提示符下创建测试套件和测试运行器。

进口matlab.unittest.TestRunner进口matlab.unittest.TestSuiteTestSuite.fromClass(?SampleTest);runner = testrrunner . withtextoutput;

使用共享测试夹具运行测试。在这种情况下,fixture不是预先构建的。

runner.run(套);
设置PathFixture完成设置PathFixture:添加'C:\Work\helperFiles'到路径。__________运行SampleTest。Done SampleTest __________ tear down PathFixture:将路径恢复到其原始状态。__________

测试运行程序设置并删除共享测试fixture。

创建fixture的实例并将其添加到测试运行程序。

f = matlab.unittest.fixture . pathfixture (“helperFiles”);跑步者。PrebuiltFixtures = f;

手动添加“helperFiles”文件夹到您的路径。的PathFixture将指定的文件夹添加到路径中,测试依赖于此设置操作。然而,由于fixture被定义为预构建的,测试运行程序不执行设置或拆除操作,您必须手动执行这些操作。在这种情况下,如果您没有手动将其添加到您的路径,测试将失败。

P = fullfile(pwd,“helperFiles”);oldPath = addpath(p);

运行测试。

runner.run(套);
运行SampleTest。Done SampleTest __________

测试运行者假定fixture是预构建的,不设置它或拆除它。

手动重置路径。

路径(媒介)

版本历史

在R2013a中引入