matplotlib / matplotlib/pytest-mpl
Support hierarchical tests
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 272
- Forks
- 53
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Hi,
I am working a lot with images and therefore love the idea of the project. I played around with it a little bit and noticed something.
When I group my tests in classes, the image file gets named only after the function that calls it.
Example:
class Test_Imageutils:
@pytest.mark.mpl_image_compare
def test_put_text(self):
from skimage import data
astronaut = data.astronaut()
annotated = imageutils.put_text(astronaut.copy(), "hi", loc="center")
fig, ax = plt.subplots(1, 1, figsize=(6, 6))
ax.imshow(annotated)
return fig
And the image in baseline is named test_put_text.png
I think it would be a great idea to add an option to write the full hierarchy, either into folders or into the file name. For example
baseline/Test_Imageutils/test_put_text.pngbaseline/Test_Imageutils-test_put_text.png
What do you think?
I could dig a little into the code and come up with a PR if anyone thinks it is a good idea.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par localiser le code qui dérive les noms des images de référence à partir des tests pytest, en utilisant l’exemple Test_Imageutils/test_put_text comme cas attendu. Comparez les approches par dossier et par nom de fichier décrites dans l’issue, puis définissez l’option et vérifiez que les noms hiérarchiques sont générés de manière cohérente.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- matplotlib, python
- Domaine
- testing-qa
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 38/100