2012-03-09 155 views
2

我有matlab_xunit,這是一個用於編寫單元測試的一堆函數的文件夾。它存儲在../external/matlab_xunit中。我想打電話給runtests,這是這個軟件包的一部分。下面是示例代碼:當前目錄改變時,Matlab addpath()不會粘在路徑上?

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

子目錄是當前目錄的子目錄。 runtests所做的是將當前目錄更改爲子目錄,然後它將在該文件夾中找到測試並運行測試。問題是,正如我發現的那樣,只要當前目錄發生變化,matlab_xunit就不再處於路徑中。因此,所有功能測試必須在內部調用變得無效 - 它們只是「消失」。

無論如何圍繞addpath()的這個缺點?

非常感謝!

回答

4

使用完整路徑。這可能會工作:

addpath(genpath(fullfile(pwd,'../external/matlab_xunit'))) 
+0

完美。謝謝。 – user18115 2012-03-09 04:37:22

+2

實際上,更好的方法是將其與fileparts結合使用,以便路徑名中沒有「..」。這樣就不會有任何衝突:addpath(genpath(fullfile(fileparts(pwd),'/ external/matlab_xunit'))) – user18115 2012-03-15 20:31:07

相關問題