tutorial descargar python unit-testing

python - descargar - salida coloreada unittest



descargar biopython (7)

Utilizo unittest (en realidad, unittest2 ) para las pruebas de Python, junto con Python Mock para burlar objetos y nose para ejecutar todas las pruebas en una sola pasada.

Echo de menos poder decir qué funciona y qué está mal a simple vista desde las barras verdes / rojas. ¿Hay alguna manera de obtener resultados coloreados de unittest?

(Cambiar el banco de pruebas en este punto no es una opción, y realmente me gusta la prueba de unidad)


Cree una clase que herede unittest.TestResult (por ejemplo, MyResults ) e implemente MyResults métodos. A continuación, MyRunner una clase que herede unittest.TextTestRunner (por ejemplo, MyRunner ) y anule _makeResult() para devolver una instancia de MyResults .

Luego, construya un conjunto de pruebas (que probablemente ya haya empezado a trabajar) y llame a MyRunner().run(suite) .

Puede poner el comportamiento que desee, incluidos los colores, en MyResults .


En python 2.x puedes probar pyrg . Sin embargo, no funciona en Python 3.


Estoy teniendo buenos resultados con nosetest y rednose . Todavía se mantiene en el momento de escribir esto.


Prueba el plugin rudolf para pruebas en la nariz.


Si pudieras cambiar solo la línea de tus importaciones de prueba, podrías usar redgreenunittest . Es un clon que hice de unittest , pero tiene salida coloreada.

Si desea usarlo sin actualizar el contenido de su código, puede usarlo de la siguiente manera:

import redgreenunittest as unittest

No es un clon de unittest2, por lo que no funcionaría con el código de Andrea, pero su fuente está ahí, por lo que una bifurcación unittest2 de redgreenunittest no estaría fuera de discusión.

Además, cualquier comentario de "lo estás haciendo mal" es bienvenido, siempre que contengan algún razonamiento. Me encantaría hacerlo bien en su lugar.


También encontré otro complemento para colorear para nariz: YANC en https://pypi.python.org/pypi/yanc

Funciona para mí con Python 3.5 y nose 1.3.7 (no pude obtener ninguna de las otras opciones para que la nariz listada arriba funcione)


Utilizando un método muy similar a la respuesta de Robert , he lanzado (¡hoy!) Un paquete que permite la salida de color en los resultados de las pruebas de la unittest . Lo he llamado colour-runner .

Para instalarlo, ejecuta:

pip install colour-runner

Luego, donde estaba usando unittest.TextTestRunner , use colour_runner.runner.ColourTextTestRunner en colour_runner.runner.ColourTextTestRunner lugar.

Vea cómo se ve con verbosity=1 ... y verbosity=2