matplotlib / matplotlib/pytest-mpl
Support hierarchical tests
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 272
- Forks
- 53
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
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.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza localizando el código que deriva los nombres de las imágenes de referencia a partir de las pruebas de pytest, usando el ejemplo Test_Imageutils/test_put_text como caso esperado. Compara los enfoques de carpetas y nombres de archivo descritos en el issue, luego define la opción y verifica que los nombres jerárquicos se generen de forma coherente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- matplotlib, python
- Área
- testing-qa
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 38/100