如何在 Scilab 中进行单元测试?
How to do unit tests in Scilab?
我习惯在 Racket 中做单元测试,例如:
#lang racket
(require rackunit)
(check-equal? (add1 1) (* 2 1))
如何在 Scilab 中进行简单的单元测试?
我只是想要一个能够比较我的期望值和另一个值的测试。
比较是使用 assert_xxxxx() 函数完成的,有关详细信息,请参阅 help。
例如:
a = 10;
assert_checkequal(a, 10);
b = 11;
assert_checkequal(b, 10);
!--error 10000
assert_checkequal: Assertion failed: expected = 10 while computed = 11 (mean diff = 1)
at line 22 of function assert_generror called by :
at line 150 of function assert_checkequal called by :
b = 11; assert_checkequal(b, 10);
由于第二个断言失败,出现错误。
此外,您可以为单元测试创建“.tst”文件,在其中添加断言。可以使用 test_run() 函数执行此类文件。
例如,如果您创建以下结构:
root
- module_1
- function_1.sci
- function_2.sci
- module_2
- function_3.sci
- tests
- simple_test_1.tst
- simple_test_2.tst
您可以通过从根目录调用 test_run('tests') 来执行所有单元测试。在这种情况下,您是在向函数说明单元测试的路径,link 中您已经发布的更多信息。
我习惯在 Racket 中做单元测试,例如:
#lang racket
(require rackunit)
(check-equal? (add1 1) (* 2 1))
如何在 Scilab 中进行简单的单元测试?
我只是想要一个能够比较我的期望值和另一个值的测试。
比较是使用 assert_xxxxx() 函数完成的,有关详细信息,请参阅 help。
例如:
a = 10;
assert_checkequal(a, 10);
b = 11;
assert_checkequal(b, 10);
!--error 10000
assert_checkequal: Assertion failed: expected = 10 while computed = 11 (mean diff = 1)
at line 22 of function assert_generror called by :
at line 150 of function assert_checkequal called by :
b = 11; assert_checkequal(b, 10);
由于第二个断言失败,出现错误。
此外,您可以为单元测试创建“.tst”文件,在其中添加断言。可以使用 test_run() 函数执行此类文件。
例如,如果您创建以下结构:
root
- module_1
- function_1.sci
- function_2.sci
- module_2
- function_3.sci
- tests
- simple_test_1.tst
- simple_test_2.tst
您可以通过从根目录调用 test_run('tests') 来执行所有单元测试。在这种情况下,您是在向函数说明单元测试的路径,link 中您已经发布的更多信息。