Estoy trabajando en pruebas para una aplicación web escrita en python.Pruebas de nariz Python omitan ciertas pruebas
Supongamos que tengo 5 pruebas en mi módulo test_login.py.
Cada prueba individual es una clase.
A menudo hay una prueba base que extiende la clase TestFlow, que es nuestra clase de prueba predefinida.
Y luego otras pruebas en este módulo extienden esa prueba de base.
Por ejemplo:
#The base test
TestLogin(TestFlow):
#do login_test_stuff_here
#Another test in the same module
TestAccountDetails(TestLogin)
#do account_details_test_stuff_here
...
En realidad es bastante útil, porque a fin de probar, por ejemplo, AccountDetails usuario tiene que estar conectado, por lo que sólo puede heredar de prueba TESTLOGIN y estoy listo para probar otra funcionalidad como un usuario registrado
Todas las pruebas se encuentran en la carpeta Proyecto/proyecto/pruebas.
Usamos nosetests con opción --with-pylons para ejecutar pruebas.
Y mi pregunta es si hay una manera de marcar ciertos TestClass como "No probar este".
Porque no quiero perder el tiempo para ejecutar estas "pruebas base" directamente, porque se ejecutarán por otras pruebas que hereden de ellas.
Probablemente habrá tonos de estas pruebas y quiero guardar cada segundo donde sea posible.
ya he encontrado algo así como Skip, SkipTest o @nottest, pero éstos sólo trabajo para test_methods dentro de un ceratin TestClass, así que no creo que vaya a trabajar aquí, fueron tengo una sola clase para cada caso de prueba.
Tenga en cuenta que la coincidencia de correspondencia no es la única puerta para la inclusión - * nose también cargará las pruebas de unittest.TestCase subclasses *. Parece hacer esto por cualquier cosa que importe también. Tengo una prueba llamada 'FooMixin' en un módulo llamado' foo_helpers.py' que se está tratando como una prueba simplemente porque se deriva de 'unittest.TestCase'. –