2010-07-15 8 views
7

Esto parece una obviedad, y dudo en admitir que he pasado aproximadamente dos horas tratando de encontrar la respuesta, pero no puedo encontrar la forma de ejecutar pruebas a nivel de proyecto para un proyecto django.¿Cómo puedo ejecutar las pruebas de nivel de proyecto de Django?

Para que quede claro, ejecutar pruebas para las aplicaciones en el proyecto no es un problema. Entiendo './manage.py test', pero no encuentra las pruebas de nivel de proyecto que he escrito.

Intenté poner las pruebas a nivel de proyecto en 'my-django-project/tests.py' y 'my-django-project/tests/testcode.py' pero estas pruebas no se encuentran. ¿Qué me estoy perdiendo?

Respuesta

1

Si bien no hay algo integrado en Django, Django-nose encuentra y ejecuta pruebas a nivel de proyecto, así como a cualquier subdirectorio. Desafortunadamente, no encuentra pruebas para las aplicaciones instaladas que no están ubicadas en un subdirectorio del directorio del proyecto.

Las instrucciones de instalación se pueden encontrar en: http://pypi.python.org/pypi/django-nose/0.1

2

No existe tal cosa. Pon todas tus pruebas en una aplicación.

1

./manage.py test puede utilizarse para ejecutar código arbitrario de Python, lo que significa que puede hacer que se ejecute pruebas de todo el proyecto si lo desea. Una subclase de DjangoTestSuiteRunner que encuentre las pruebas de todo el proyecto y las ejecute también debería funcionar. Si esas pruebas de todo el proyecto incluyen modelos, probablemente desee colocarlos en una de las aplicaciones correspondientes.

https://docs.djangoproject.com/en/dev/topics/testing/advanced/#using-different-testing-frameworks

EDIT: Django 1.6 puede descubrir pruebas en cualquier lugar. https://docs.djangoproject.com/en/dev/releases/1.6/#discovery-of-tests-in-any-test-module

Cuestiones relacionadas