Tengo un archivo llamado test_web.py que contiene una clase TestWeb y muchos métodos llamados test_something ().
Puedo ejecutar todas las pruebas en la clase así:
$ nosetests test_web.py
...
======================================================================
FAIL: checkout test
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/me/path/here/test_web.py", line 187, in test_checkout
...
Pero parece que no puedo ejecutar pruebas individuales. Estos me dan errores de "No existe tal prueba" cuando se ejecutan en la misma PWD:
$ nosetests test_web.py:test_checkout
$ nosetests TestWeb:test_checkout
¿Qué podría estar mal aquí?

Respuestas:
Debe especificarlo así:,
nosetests <file>:<Test_Case>.<test_method>oVer los documentos
fuente
También puede especificar un módulo:
fuente
nosetestso qué, pero esa sintaxis falla. Lo que hace el trabajo, sin embargo, es:nosetests tests/test_integration:IntegrationTests.test_user_search_returns_users, que significa - como archivos de referencia de archivos, no módulos de Python, utilizando/en lugar de.testsno es un módulo en su configuración?__init__.pyen eltestsdirectorio. ¡Bien hecho! GraciasEspecificar nombres en la línea de comando como sugieren las otras respuestas funciona y es útil. Sin embargo, cuando estoy escribiendo pruebas, a menudo encuentro que quiero ejecutar solo la prueba en la que estoy trabajando, y los nombres que tendría que escribir en la línea de comandos se vuelven bastante largos y engorrosos de escribir. . En tal caso, prefiero usar un decorador y una bandera personalizados.
Defino
wipd("decorador de trabajo en progreso") así:Esto define un decorador
@wipdque establecerá elwipatributo en los objetos que decora. Por ejemplo:Luego
-a wipse puede usar en la línea de comando para limitar la ejecución de la prueba a las marcadas con@wipd.Nota sobre los nombres ...
Estoy usando el nombre
@wipddel decorador en lugar de@wipevitar este tipo de problema:El decorador
importconvertirá alwipdecorador en miembro de la clase y se seleccionarán todas las pruebas de la clase. Elattribcomplemento verifica la clase principal de un método de prueba para ver si el atributo seleccionado también existe allí, y los atributos que se crean y pruebanattribno existen en un espacio segregado. Entonces, si prueba con-a fooy su clase contienefoo = "platypus", el complemento seleccionará todas las pruebas de la clase.fuente
Para ejecutar varias pruebas específicas, puede agregarlas a la línea de comando, separadas por un espacio.
fuente
En mis pruebas, especificar pruebas con nombres de módulo no funciona
Debe especificar la ruta real a
.py:Esto con
nose==1.3.7fuente
Mi requisito era ejecutar una sola prueba en un archivo de prueba que estaba en otro directorio de Windows ; esto se hizo desde el símbolo del sistema de anaconda de la siguiente manera:
realizó pruebas de nariz de:
pero test_MyTestFile.py y methodsFile.py estaban en:
Ejecute una prueba única incluyendo la ruta con comillas de la siguiente manera:
test_MyTestFile.py tenía este aspecto:
MethodFile.py se veía así:
fuente