Piszę grę i towarzyszący jej silnik graficzny na OpenGL w C ++. Jestem także fanem dobrych procesów kodowania i automatycznych testów. Testowanie kodu graficznego + wydaje się dość niemieszalne, ponieważ dane wyjściowe są często tylko wizualne lub bardzo mocno zorientowane wizualnie.
Na przykład wyobraź sobie analizę surowego strumienia obrazu renderowanego bajt po bajcie - potrzebujesz danych testowych do porównania, które są trudne do utworzenia / uzyskania, a często renderowane obrazy nie są identyczne poziom bajtów podczas uruchamiania w różnych momentach - niewielkie zmiany w algorytmach całkowicie zniszczą to podejście.
Zastanawiam się nad stworzeniem wizualnego pakietu testów jednostkowych, w którym mogę w zasadzie renderować różne sceny testowe, pokazując takie rzeczy jak mapowanie cieni, animacje itp. Itp. W ramach CI te sceny byłyby następnie renderowane do wideo plik (lub ewentualnie pozostaw go jako plik wykonywalny) z różnymi wskaźnikami. Wciąż wymagałoby to ręcznej kontroli pliku wideo, ale przynajmniej byłby nieco zautomatyzowany i znormalizowany.
Co myślisz? Mam nadzieję, że są lepsze sposoby?