Ich habe in letzter Zeit mit der vollständigen Integration von kontinuierlichen Tests in meinen Matlab-Entwicklungszyklus gebastelt und bin dabei auf ein Problem gestoßen, von dem ich nicht weiß, wie ich es schaffen soll. Wie fast alle Benutzer wissen, versteckt Matlab die Unterfunktionen in einer M-Datei aus der Sicht von Funktionen außerhalb dieser M-Datei. Ein Spielzeugbeispiel kann unten gesehen werden:Was ist der einfachste Weg, M-Datei-Unterfunktionen für Komponententests verfügbar zu machen?
function [things] = myfunc(data)
[stuff] = mysubfunc(data)
things = mean(stuff);
end
Ich möchte Unit Tests auf Subfunc selbst durchführen. Dies ist AFAIK unmöglich, weil ich es von keiner externen Funktion aus aufrufen kann.
Ich benutze derzeit Matlab xUnit von Steve Eddins und kann dieses Problem nicht umgehen. Die einfache Lösung - Subfunktion in eine eigene M-Datei aufteilen - ist in der Praxis nicht akzeptabel, da ich zahlreiche kleine Funktionen habe, die ich testen möchte und nicht mein Dateisystem mit jeweils einer separaten M-Datei verschmutzen möchte . Was kann ich tun, um einfache Komponententests zu schreiben und durchzuführen, ohne neue Dateien für jede Funktion zu erstellen, die ich testen möchte?
Das heißt, ich bin die subfuncs an :) all – William