MATLAB xUnit测试框架如何通过继承TestCase来编写xunit风格的测试

MATLAB xUnit架构紧密地基于xUnit风格,其中每个测试用例都是基本TestCase类的一个子类的实例。熟悉这种风格的程序员可能希望编写自己的TestCase子类,而不是使用subfunction-based测试

这个例子展示了一个包含测试用例方法和测试夹具方法的TestCase子类。如果您不熟悉在MATLAB中定义自己的类,您可能需要查看MATLAB文档类和面向对象编程,或者可以简单地坚持使用基于子函数的测试。

示例m文件以classdef语句,该语句设置类的名称,并指出它是类的子类TestCase

cdexamples_generaldbtypeTestUsingTestCase1
1 classdef TestUsingTestCase < TestCase

属性块包含一个由setup方法初始化并由两个测试方法使用的字段。

dbtypeTestUsingTestCase3:5
3属性4 fh 5结束

方法块中的第一个方法是构造函数。它接受所需的测试方法名作为输入参数,并将该输入传递给基类构造函数。

dbtypeTestUsingTestCase7:10
7方法8函数self = TestUsingTestCase(名称)9 self = self@TestCase(名称);10结束

设置方法创建图形窗口并将其句柄存储在字段中跳频

dbtypeTestUsingTestCase12:14
12 .函数设置(self)Fh =图;14日结束

测试方法是以“Test”开头的方法。

dbtypeTestUsingTestCase20:26
20 function testColormapColumns(self) 21 assertEqual(size(get(self。fh, 'Colormap'), 2), 3);22 end 23 24 function testPointer(self) 25 assertEqual(get(self. self.)fh, '指针'),'箭头');26日结束

拆卸方法通过删除图形窗口来清除。

dbtypeTestUsingTestCase16:18
17 delete(self.fh);18日结束

通过调用在类中运行测试用例runxunit类的名称。

runxunitTestUsingTestCase
测试套件位置:C:\Users\psexton\Documents\GitHub\matlab-xunit-doctest\doc\examples_general\TestUsingTestCasem 20-Feb-2014 19:59:09开始测试运行与2个测试用例..用时0.123秒。

回到MATLAB xUnit测试框架