Ich arbeite in der Bildverarbeitung (hauptsächlich OCR) und frage mich, wie ich Unit-Tests in meine Entwicklung integrieren soll.
Ich benutze bereits Komponententests für "häufigere" Codearten, aber wenn ich mit Bildverarbeitungscode arbeite, bin ich mir nicht sicher, wie ich damit umgehen soll. Diese Art von Code benötigt immer eine Eingabe / Ausgabe von Bilddaten, und das Verspotten ist nicht offensichtlich. Im Moment mache ich hauptsächlich Integrationstests, aber die Ausführung dauert eine Weile. Ich möchte einige Ideen dazu haben, wie man diese Art von Code in Komponententests aufteilt, damit ich sie schneller ausführen kann.
Bearbeiten: Das Analysieren eines Zeichens kann viele Schritte umfassen, die mehrere Rotations-, Skalierungs- und Morphologieoperationen umfassen. Diese Schritte ändern sich häufig, während der Algorithmus entwickelt wird. Somit können sich die Eingabe und die erwartete Ausgabe während des Testens stark verändern. Jedes Zeichen kann 100x100 Pixel groß sein, so dass eine Hardcodierung im Code oder das Arbeiten mit generierten Daten nicht in Frage kommt.