Quel est le meilleur moyen de générer un code de test générant des images? Dites, par exemple, une classe qui génère un graphique ou un graphique?Quel est le meilleur moyen de générer un code de test générant des images?
Répondre
Si cette classe utilise une bibliothèque tierce pour générer des graphiques/diagrammes (par exemple matplotlib), vous pouvez écrire des tests pour les méthodes qui génèrent des entrées pour la bibliothèque. Ce sera assez facile. Si la sortie est une image et que vous souhaitez vérifier ses propriétés, vous devrez creuser plus profondément. Les attributs d'image externes (taille, hauteur, format, etc.) peuvent être facilement vérifiés, mais d'autres tels que le contenu réel de l'image seraient assez difficiles. À mon humble avis cela ne vaudrait pas la peine.
Si la sortie est non-binaire (par exemple SVG), vous pouvez facilement écrire des tests pour vous assurer que le XML de sortie contient ce que vous recherchez.
En effet, et matplotlib donne un bon décorateur de comparaison d'image pour cela. – epoch
Une méthode que j'ai utilisée est de générer un fichier «connu-bon», le stocker dans votre arborescence source, puis de faire une comparaison binaire dans le cadre du test. Si le contenu du fichier correspond à la sortie n'a pas changé. Cela ne vous permet pas de tester toutes les combinaisons possibles d'entrées qui généreraient l'image, mais est utile pour les tests de régression de base.
pour quelle plateforme est-ce? – NebulaFox
Tout vraiment, mais voir la réponse par rapport à python/matplotlib. – epoch