Я пишу OpenGL 2D-библиотеку на Python. Все идет отлично, и кодовая база неуклонно растет.
Теперь я хочу написать модульные тесты, чтобы случайно не вводить новые ошибки при исправлении других / создании новых функций. Но я понятия не имею, как они будут работать с графическими библиотеками.
Некоторые вещи, о которых я думал:
- сделать эталонные скриншоты и сравнить их с автоматически сгенерированными скриншотами в тестах
- заменить вызовы opengl на операторы регистрации и сравнить журналы
Но оба кажутся плохой идеей. Как обычно тестируют графические библиотеки?