Pracuję nad przetwarzaniem obrazu (głównie OCR) i zastanawiam się, jak powinienem zintegrować testy jednostkowe w moim rozwoju.
Już używam testów jednostkowych dla bardziej „powszechnego” typu kodu, ale w przypadku kodu przetwarzania obrazu nie jestem pewien, jak sobie z tym poradzić. Ten rodzaj kodu zawsze wymaga wejścia / wyjścia danych obrazu, a kpienie z tego nie jest oczywiste. Na razie głównie przeprowadzam testy integracyjne, ale ich uruchomienie zajmuje trochę czasu i chciałbym kilka pomysłów, jak rozbić ten rodzaj kodu na testy jednostkowe, aby móc je szybciej uruchomić.
Edycja: Analiza postaci może przechodzić przez wiele etapów obejmujących wielokrotne obracanie, skalowanie i operacje morfologiczne. Kroki te zmieniają się często w miarę opracowywania algorytmu. W ten sposób dane wejściowe i oczekiwane wyniki mogą się znacznie zmieniać podczas testowania. Każdy znak może mieć rozmiar 100 x 100 pikseli, więc zakodowanie go na stałe w kodzie lub praca z wygenerowanymi danymi nie wchodzi w rachubę.