Creative Commons License
Excepto donde se indique otra cosa, todo el contenido de este lugar está bajo una licencia de Creative Commons.
Taquiones > perl > sites > CPANTESTERS: Test de instalación de módulos Perl

CPANTESTERS: Test de instalación de módulos Perl

http://cpantesters.perl.org

Los probadores de CPAN son un grupo de voluntarios que se dedican a efectuar pruebas sobre módulos Perl, creando informes que son remitidos al autor y almacenados en un lugar centralizado, que puede ser consultado públicamente, además de adjuntarlo como valor añadido a la información que el propio CPAN muestra de cada uno.

Existen dos sitios con información al respecto, por si alguien tiene la idea de unirse al grupo, a pesar de que no parecen estar excesivamente actualizados:

La lista de mis módulos es un poco desastrosa dado que voy aprendiendo sobre la marcha, pero confío en conseguir instalaciones limpias en breve. :-)

Resultados de los tests

Según consta en el wiki del proyecto, los tests de instalación pueden dar alguno de los siguientes resultados.

PASS

La distribución ha sido construída y todos sus test se han ejecutado correctamente, aunque esto no quiere decir que el software sea perfecto; es posible que el autor no haya incluído el suficiente número de test en su paquete, ó que éstos no cubran en su totalidad el buen funcionamiento del mismo. Es más, las advertencias (warnings) que se emiten en los test no se tienen en cuenta y pueden ser síntomas de posteriores fallos.

En este caso el mensaje no se suele enviar al autor, únicamente a la lista CPAN-Testers para que conste.

FAIL

Si la distribución falla en uno ó más test ó en algún punto del proceso de construcción (perl Makefile.PL, make ó make test por ejemplo) adquiere el estatus de fallida y el informe se envía tanto al autor como a la lista.

UNKNOWN

En esta categoría entran aquellas distribuciones que no incluyen un paquete de tests, ó el resultado de estos es ambiguo para los entornos de prueba (Test::Harness y similares).

En este caso el informe se envía al autor y a la lista, y se añaden algunos párrafos animando al autor a incluir dichos tests en la distribución, dado que algunos tests son mejores que ninguno. Además se incluye un test de ejemplo y se le remite al tutorial de Michael G. Schwern para usarlo como base.

NA

NA es el acrónimo de no aplicable (Not Applicable) y aparece cuando la versión de Perl instalada no está soportada en la plataforma en la que vamos a efectuar el test. Los informes deben enviarse a la lista y no al autor.

Como ejemplos de cuándo una distribución entra en esta categoría podemos citar a Win32::OLE y Mac::Glue, puesto que no se espera que puedan probarse en otras plataformas. También están las que solicitan una versión concreta de Perl, dado que ésta ó las siguientes incluyen soporte que otras más antiguas no, como el Unicode.

Problemas de dependencias

Cuando una dependencia falla, cualquier parte dependiente, incluyendo la distribución que instiga el test, pasa a estar retenida (on hold) hasta que el problema se resuelva, y no se debería enviar informe alguno. Una vez arreglado el problema las partes dependientes pueden ser probadas de nuevo y el informe completado.

Si una dependencia tiene el estatus NA todos los componentes dependientes lo adquieren inmediatamente y se crea un informe para enviar a la lista.

Formato de informes de test

No existe aún un formato completamente unificado de informes de error, aunque se está trabajando en ello.

Cada mensaje de correo debe incluir en la línea Asunto la siguiente información:

<class> <distribution name>-<distribution-version> <platform>

donde class puede ser PASS, FAIL, UNKNOWN ó NA, y la distribución debe contener nombre y versión, pero no la extensión del archivo que la contiene:

FAIL Module-Build-PM_Filter-1.0.0 i686-linux 2.4.27-3-686

Por otra parte, el cuerpo del mensaje debe llevar esto:

  • Una introducción para el autor, advirtiéndole de que es un informe automatizado.
  • Si el resultado es FAIL, UNKNOWN ó NA se añadirá la salida de los tests.
  • Por contra, si el resultado es PASS se debería también incluir dicha salida sólo en el caso de que haya aparecido algún aviso.
  • Comentarios del testador opcionales.
  • El resultado de ejecutar perl -V

Como extras tendría que contener también una lista de los prerequisitos y las versiones instaladas en el sistema de prueba.