J'écris un jeu et le moteur graphique qui l'accompagne au-dessus d'OpenGL en C ++. Je suis également fan de bons processus de codage et de tests automatisés. Le code graphique + les tests semblent assez immiscibles, car la sortie est souvent visuelle uniquement ou très fortement orientée visuellement.
Par exemple, imaginez-vous analyser le flux d'image brut qui est rendu à l'écran octet par octet - vous avez besoin de données de test avec lesquelles comparer, ce qui est difficile à créer / obtenir, et souvent les images rendues ne sont pas identiques sur un niveau d'octet lors de l'exécution à des moments différents - de petits changements dans les algorithmes vont complètement détruire cette approche.
Je pense à créer une suite de tests unitaires visuels, dans laquelle je peux essentiellement rendre différentes scènes de test, montrant des choses comme la cartographie des ombres, l'animation, etc., etc. etc. Dans le cadre de CI, ces scènes seraient ensuite rendues en vidéo fichier (ou éventuellement le laisser comme un exécutable) avec différentes métriques. Cela nécessiterait toujours une inspection manuelle du fichier vidéo, mais au moins il serait quelque peu automatisé et normalisé.
Qu'est-ce que tu penses? J'espère qu'il y a de meilleures façons?