探索不同的方式来运行测试,创建一个基于类的测试和基于函数的测试在你当前的工作目录。基于类的测试文件使用DocPolynomTest
测试的例子matlab.unittest.qualifications.Verifiable
的例子。基于函数的测试文件使用axesPropertiesTest
示例测试了写测试使用Setup和Teardown函数。
使用运行
的方法TestCase
类直接运行测试中包含一个测试文件。直接运行测试时,您不需要显式地创建一个测试
数组中。
%直接运行单个文件的基于类的测试其中回答=运行(DocPolynomTest);%直接运行单个文件的基于函数的测试results2 =运行(axesPropertiesTest);
您还可以将测试文件输出分配给一个变量,运行测试使用的函数形式或点符号。
%创建测试或TestCase对象t1 = DocPolynomTest;% TestCase对象从基于类的测试t2 = axesPropertiesTest;%测试对象从基于函数的测试%运行测试使用的函数形式其中回答=运行(t1);results2 =运行(t2);使用点符号%运行测试其中回答= t1.run;results2 = t2.run;
或者,您可以运行测试通过使用包含在一个单独的文件中runtests
或从编辑器。
从内部运行单个测试基于类的测试文件指定测试方法作为输入参数运行
方法。例如,只有运行测试,testMultiplication
,从DocPolynomTest
文件。
其中回答=运行(DocPolynomTest,“testMultiplication”);
基于函数的测试文件返回的数组测试
而不是一个对象TestCase
对象。您可以运行一个特定的测试通过索引到数组中。然而,你必须检查的名字
现场测试数组来确保你正确的测试运行。例如,只有运行测试,surfaceColorTest
,从axesPropertiesTest
文件。
t2 = axesPropertiesTest;%测试对象从基于函数的测试t2 (:) . name
ans = axesPropertiesTest / testDefaultXLim ans = axesPropertiesTest / surfaceColorTest
的surfaceColorTest
测试对应数组中的第二个元素。
只运行surfaceColorTest
测试。
results2 = t2 (2) .run;%或results2 =运行(t2 (2));
另外,您可以从编辑器中运行单个测试。
您可以运行一个团体,或测试套件,在一起。运行测试套件使用runtests
的套件是定义为一个单元阵列特征向量代表一个测试文件,测试类,一个包,其中包含测试或一个文件夹,其中包含测试。
套件= {“axesPropertiesTest”,“DocPolynomTest”};runtests(套);
在当前文件夹使用运行所有测试松材线虫病
作为输入的runtests
函数。
runtests (pwd);
或者,您可以显式地创建测试
数组和使用运行
方法来运行它们。
您可以显式地创建测试
数组和使用运行
方法TestSuite
类来运行它们。使用这种方法,您显式地定义TestSuite
对象,因此可以检查内容。的runtests
函数不返回TestSuite
对象。
进口matlab.unittest.TestSuites1 = TestSuite.fromClass (? DocPolynomTest);s2 = TestSuite.fromFile (“axesPropertiesTest.m”);%生成测试套件,然后运行fullSuite = (s1 s2);结果=运行(fullSuite);
由于套件是显式定义的,它很容易为你进行进一步分析套件,如重新运行失败的测试。
failedTests = fullSuite ([result.Failed]);result2 =运行(failedTests);
你可以专门测试运行通过定义一个自定义的测试运行器和添加插件。的运行
的方法TestRunner
类操作TestSuite
对象。
进口matlab.unittest.TestRunner进口matlab.unittest.TestSuite进口matlab.unittest.plugins.TestRunProgressPlugin%生成TestSuite。s1 = TestSuite.fromClass (? DocPolynomTest);s2 = TestSuite.fromFile (“axesPropertiesTest.m”);套件= (s1 s2);%测试运行器创建沉默。跑步者= TestRunner.withNoPlugins;%添加插件显示测试进展。runner.addPlugin (TestRunProgressPlugin.withVerbosity (2))%运行测试使用定制的跑步者。结果=运行(跑步者,(套件));
runtests
|运行(TestCase)
|运行(TestSuite)
|运行(TestRunner)