Ultimamente mi sono messo a fare i conti con la completa integrazione dei test continui nel mio ciclo di sviluppo Matlab e ho incontrato un problema che non so come muoversi. Come quasi tutti gli utenti sanno, Matlab nasconde gentilmente le sotto-funzioni all'interno di un M-file dalla vista di qualsiasi funzione al di fuori del file M. Un esempio di giocattolo può essere visto sotto:Qual è il modo più semplice per esporre sottofunzioni del file M per il test dell'unità?
function [things] = myfunc(data)
[stuff] = mysubfunc(data)
things = mean(stuff);
end
Voglio eseguire il test dell'unità sul subfunc stesso. Questo è, AFAIK, impossibile perché non posso chiamarlo da nessuna funzione esterna.
Attualmente sto usando Matlab xUnit di Steve Eddins e non riesco a risolvere questo problema. La soluzione semplice - suddividere il subfunc in un proprio file M - non è accettabile nella pratica perché avrò numerose piccole funzioni che voglio testare e non voglio inquinare il mio filesystem con un M-file separato per ognuno . Cosa posso fare per scrivere ed eseguire semplici test unitari senza creare nuovi file per ogni funzione che voglio testare?
vale a dire, non sto esponendo le subfuncs a tutti :) – William