matplotlib / matplotlib/pytest-mpl

How to deal with multiple valid test results

Abierto
#149 12 comentarios 0 reacciones 0 asignados Ver en GitHub

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

Depending on the version of matplotlib, the way it was installed, the way other dependencies were installed and a bunch of other random factors, the results of our image comparison tests can vary slightly.
Enough to fall way out of the tolerance window, but still being perfectly valid results.

So we have a set of multiple valid baseline images for most of our tests, but don't really have a good way to actually test if any of them matches.

Right now, we are using our own fork of pytest-mpl, which does support testing against multiple baselines: https://github.com/OGGM/pytest-mpl
But maintaining that has been a consistent pain, and it's getting harder the more upstream pytest-mpl evolves.

This must be a general issue not only we have. What is the proper way to deal with it?

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Empieza leyendo el comportamiento existente de comparación de imágenes de pytest-mpl y el fork enlazado de OGGM/pytest-mpl que admite múltiples baselines. Aclara cómo deben seleccionarse las baselines candidatas y qué constituye una coincidencia; se considerará terminado cuando exista un enfoque documentado y mantenible que pruebe contra varias imágenes válidas sin depender del fork.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
testing-qa
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.