¿Hay alguna manera de colorear la salida de prueba de Django? Básicamente un factor Rojo/Verde para un pase o resultados fallidos?Coloreando la salida de las pruebas de Django
Estoy en Mac OS X usando Terminal.app
.
¿Hay alguna manera de colorear la salida de prueba de Django? Básicamente un factor Rojo/Verde para un pase o resultados fallidos?Coloreando la salida de las pruebas de Django
Estoy en Mac OS X usando Terminal.app
.
Si ya está utilizando la tela para su despliegue, se puede utilizar este fragmento de @codeinthehole's blog post:
from fabric.colors import _wrap_with
green_bg = _wrap_with('42')
red_bg = _wrap_with('41')
# Set the list of apps to test
env.test_apps = "app1 app2"
def test():
with settings(warn_only=True):
result = local('./manage.py test %(test_apps)s --settings=settings_test -v 2 --failfast' % env, capture=False)
if result.failed:
print red_bg("Some tests failed")
else:
print green_bg("All tests passed - have a banana!")
No COLORISE las salidas de prueba individuales, pero sí le dará inmediata rojo/verde satisfacción ...
Eche un vistazo a Print in terminal with colors using Python?. Debería poder modificar o implementar su propia coloración desde allí.
Si usted no está utilizando la tela, que le gustaría redgreenunittest
. Básicamente, que acaba de poner en el lugar apropiado en su proyecto (probablemente en su entorno virtual), y luego hacer referencia a ella como su TEST_RUNNER
en la configuración de la siguiente manera:
TEST_RUNNER="redgreenunittest.django.simple.RedGreenTestSuiteRunner"
Si sólo está utilizando ayudante prueba de Django código (sobre todo django.test.TestCase), entonces eso debería hacerlo. de lo contrario puede que tenga que hacer referencia a redgreenunittest
directamente así:
import redgreenunittest as unittest
A continuación, sólo ejecutar las pruebas. Y ellos tendrán colores. Como magia.
Sé que esta es una pregunta anterior, pero django-rainbowtests tiene como objetivo hacer esto. Las fallas y los errores son rojos, el éxito es verde y resalta el código de su proyecto en trazas de pila más grandes.
redgreenunittests es la solución más simple y funciona muy bien con 3.x pitón
instalarlo
pip install redgreenunittest
añadir la siguiente línea en settings.py
TEST_RUNNER = "redgreenunittest.django.runner.RedGreenDiscoverRunner"
y no olvide t O disfrutar :)
./manage test
En realidad, el paquete es redgreenunittest (aunque el git repo tiene una "s"), por lo que querrá ejecutar 'pip install redgreenunittest '. –
También hay un paquete que hace esto con bastante facilidad llamada Colorama (http: //pypi.python.org/pypi/colorama) –