La estructura de directorio muy común, incluso para un módulo Python simple, parece ser separar las pruebas unitarias en su propio test
directorio:
new_project/
antigravity/
antigravity.py
test/
test_antigravity.py
setup.py
etc.
por ejemplo, vea este tutorial sobre proyectos de Python .
Mi pregunta es simplemente ¿Cuál es la forma habitual de ejecutar realmente las pruebas? Sospecho que esto es obvio para todos, excepto para mí, pero no puede simplemente ejecutar python test_antigravity.py
desde el directorio de prueba ya import antigravity
que fallará ya que el módulo no está en la ruta.
Sé que podría modificar PYTHONPATH y otros trucos relacionados con la ruta de búsqueda, pero no puedo creer que sea la forma más simple: está bien si usted es el desarrollador, pero no es realista esperar que sus usuarios lo usen si solo quieren verificar si las pruebas son paso.
La otra alternativa es simplemente copiar el archivo de prueba en el otro directorio, pero parece un poco tonto y pierde el punto de tenerlos en un directorio separado para comenzar.
Entonces, si acabara de descargar la fuente a mi nuevo proyecto, ¿cómo ejecutaría las pruebas unitarias? Prefiero una respuesta que me permita decirles a mis usuarios: "Para ejecutar las pruebas unitarias, haga X".
unittest
interfaz de línea de comandos como se describe en mi respuesta a continuación para que no tenga que agregar el directorio a la ruta.