nose - gimnasia - respinga nariz sin cirugia
¿Cómo puedo volver a ejecutar la nariz solo las pruebas que han fallado? (1)
Resulta que esto es trivial con la nariz. Primero ejecute el comando e incluya el indicador --with-id
.
# Environment stuff deleted
nosetests python/*Tests.py -v --with-id
nosetests python/*Tests.py -v --failed
Si, por ejemplo, cuatro pruebas fallan, la ejecución con el indicador --failed
ejecutará solo esas cuatro pruebas. Si luego corrige tres, la ejecución con --failed
ejecutará solo la prueba fallida restante.
La ejecución de --with-id
vuelve a restablecer el seguimiento de las pruebas fallidas y ejecuta todas las pruebas encontradas.
Busqué un poco por esto antes de vagar en escribir mi propio complemento. Cuando estaba investigando cómo registrar mi complemento, encontré un código que resultó ser el complemento testídico proporcionado por nose, que proporciona la funcionalidad anterior. Sheesh Estoy documentando esto aquí, esperando salvar a alguien más algún tiempo.
Por supuesto, ahora que lo sé, es tan obvio que se encuentra con:
nosetests --help
Revisé los documentos inicialmente, pero no pensé que fuera tan fácil, así que lo hice a medias.
Tengo algunas pruebas de la GUI de Selenium Webdriver que se ejecutan en cada registro en nuestro entorno de compilación Trac / Bitten. Por varias razones tontas, estas son frágiles y volver a ejecutar la prueba fallida siempre funciona (a menos que no lo haga, y luego tengo una prueba realmente fallida).
¿Cómo puedo volver a ejecutar estas pruebas fallidas? Las pruebas GUI tardan entre 10 y 15 minutos en ejecutarse, por lo que volver a ejecutarlas es un dolor.
Aquí está el paso de compilación:
<step id="guitest" description="Run gui tests">
<sh:exec executable="gui_tests.sh" />
</step>
y gui_tests.sh
# Setup environment stuff deleted
nosetests python/*Tests.py -v
Estamos trabajando para hacer que las pruebas de GUI sean más sólidas, pero entiendo que esto es la vida con las pruebas de GUI.