Hallo, wie testet Ihr Funktionen in MATLAB? In C schreibe ich erste eine Funktion. Dann binde ich deren Headerdatei in ein Testprogramm ein um die Funktion in einer Testumgebung zu testen. Aber wie macht man das in MATLAB? Hat eine Funktion 20 Unterfunktionen, dann weiß ich nicht wie ich diese Unterfunktionen einzeln testen soll, ohne die Funktion jedes Mal in eine neue Datei auszulagern? Vielen Dank!
um matlab-funktionen zu testen verwende ich meistens den debugger. um eine funktion zu testen sollte man i.a. wissen wie sie sich bei bestimmten eingaben verhält bzw. was das ergebnis davon ist. da man die funktionen ja direkt aufrufen kann kommt an den anfang der function ein breakpoint, am ende wird die abarbeitung abgebrochen. wenn "ist" = "soll" gehts mit der nächsten funktion weiter...
Vielen Dank für die Antwort. Hast Du nie das Problem, dass Du eine Funktion isoliert testen möchtest? Ich möchte die Hauptfunktion nicht aufrufen, sondern nur einen einzelne Funktion. Das geht in ML aber nicht.. Gibt denn es in ML kein vergleichbares Konzept zur Includierung von C-Headerdateien?
So: %function result=test(x,y) %test data: x=[1 2 3 4 5 6]; y=load(ydata); result=x+y; F5 drücken. Wenn fertig, dann x und y auskommentieren. So hat man auch für spätere Tests immer sinnvolle Testdaten bereit.
sowas wie junit gibts auch für matlab: http://blogs.mathworks.com/steve/2009/02/03/mtest-a-unit-test-harness-for-matlab-code/ und wenn man irgendwelche selbstgeschriebenen funktionen nicht testen kann hat man definitiv etwas falsch gemacht...
Den letzten Satz hättest Du Dir sparen können
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.