matlab.unittest.TestRunner.withNoPlugins
类: matlab.unittest.TestRunner
命名空间: matlab.unittest
创建没有插件的最小测试运行器
说明
runner = matlab.unittest.TestRunner.withNoPlugins
创建一个未安装插件的最小静默测试运行器,并将其作为 matlab.unittest.TestRunner
对象返回。返回的测试运行器是尽可能最简单的运行器,且不会产生文本输出。
当您要完全控制将哪些插件添加到测试运行器时,请使用此方法创建一个测试运行器。
示例
自定义运行器以生成测试工件
通过创建一个最小运行器,然后向运行器添加一个 XMLPlugin
实例,生成 JUnit 样式的测试结果。
在当前文件夹中名为 eyeTest.m
的文件中,创建一个基于函数的测试来测试 eye
函数。
function tests = eyeTest tests = functiontests(localfunctions); end function doubleClassTest(testCase) actual = eye; verifyClass(testCase,actual,"double") end function singleClassTest(testCase) actual = eye("single"); verifyClass(testCase,actual,"single") end function uint16ClassTest(testCase) actual = eye("uint16"); verifyClass(testCase,actual,"uint16") end function sizeTest(testCase) expected = [7 13]; actual = eye(expected); verifySize(testCase,actual,expected) end function valueTest(testCase) actual = eye(42); verifyEqual(testCase,unique(diag(actual)),1) % Diagonal values must be 1 verifyEqual(testCase,unique(triu(actual,1)),0) % Upper triangular values must be 0 verifyEqual(testCase,unique(tril(actual,-1)),0) % Lower triangular values must be 0 end
要运行测试,首先导入此示例中使用的类。
import matlab.unittest.TestRunner import matlab.unittest.plugins.XMLPlugin
基于 eyeTest.m
中的测试创建一个测试套件。
suite = testsuite("eyeTest.m");
创建一个不含任何插件的测试运行器。以下代码将创建一个不产生任何输出的静默运行器。
runner = matlab.unittest.TestRunner.withNoPlugins;
您现在可以添加任何您选择的插件。创建一个插件,它将 JUnit 样式的 XML 输出写入当前文件夹中的文件 myTestResults.xml
。然后,将该插件添加到测试运行器中。
xmlFile = "myTestResults.xml";
p = XMLPlugin.producingJUnitFormat(xmlFile);
addPlugin(runner,p)
运行测试。在此示例中,所有测试都通过。
results = run(runner,suite);
现在,查看生成的工件的内容。
disp(fileread(xmlFile))
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <testsuites> <testsuite errors="0" failures="0" name="eyeTest" skipped="0" tests="5" time="0.25082"> <testcase classname="eyeTest" name="doubleClassTest" time="0.015066"/> <testcase classname="eyeTest" name="singleClassTest" time="0.0042728"/> <testcase classname="eyeTest" name="uint16ClassTest" time="0.0046594"/> <testcase classname="eyeTest" name="sizeTest" time="0.013599"/> <testcase classname="eyeTest" name="valueTest" time="0.21322"/> </testsuite> </testsuites>
版本历史记录
在 R2013a 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)