2011-10-19 5 views

Respuesta

3

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 ...

2

Eche un vistazo a Print in terminal with colors using Python?. Debería poder modificar o implementar su propia coloración desde allí.

+0

También hay un paquete que hace esto con bastante facilidad llamada Colorama (http: //pypi.python.org/pypi/colorama) –

1

Encontré una posible solución, llamada pyrg, en este question. Lamentablemente, no funcionó como esperaba.

6

he encontrado pyrg que funciona bastante bien:

pyrg manage.py test 

El comando requerido se puede instalar con pip:

pip install pyrg 
+1

Es una pena que esto no funcione con python 3 ': /' – meshy

0

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.

4

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.

6

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

+0

En realidad, el paquete es redgreenunittest (aunque el git repo tiene una "s"), por lo que querrá ejecutar 'pip install redgreenunittest '. –

Cuestiones relacionadas