2

我有 matlab_xunit,这是一个文件夹,里面有一堆用于编写单元测试的函数。它存储在 ../external/matlab_xunit 中。我想调用这个包中的 runtests。这是示例代码:

addpath(genpath('../external/matlab_xunit'))
runtests subdirectory

subdirectory 是当前目录的子目录。runtests 所做的是将当前目录更改为子目录,然后它将在该文件夹中找到测试并运行测试。问题是,正如我发现的那样,一旦当前目录发生更改, matlab_xunit 就不再在路径上。因此,运行测试必须在内部调用的所有函数都变得无效——它们只是“消失”。

无论如何围绕 addpath() 的这个缺点?

非常感谢!

4

1 回答 1

4

使用完整路径。这可能会起作用:

addpath(genpath(fullfile(pwd,'../external/matlab_xunit')))
于 2012-03-09T03:44:50.403 回答