¿Cómo impedir que Python unittest imprima la cadena de documentación de prueba?

He notado que, cuando mis pruebas unitarias de Python contienen documentación en la parte superior de la función, a veces el marco las imprime en la salida de la prueba. Normalmente, la salida de prueba contiene una prueba por línea:

 ... ok 

Si la prueba tiene una cadena documental del formulario.

 """ test that so and so happens """ 

que todo esta bien Pero si la prueba tiene una cadena de documentación en una sola línea:

 """test that so and so happens""" 

luego, la salida de prueba toma más de una línea e incluye el documento de esta manera:

  test that so and so happens ... ok 

No puedo encontrar donde se documenta este comportamiento. ¿Hay alguna forma de apagar esto?

Se utiliza la primera línea de la cadena de documentación; el método responsable es TestCase.shortDescription() , que puede anular en sus testcases:

 class MyTests(unittest.TestCase): # .... def shortDescription(self): return None 

Al devolver siempre None se desactiva la función por completo. Si desea formatear la cadena de documentos de manera diferente, está disponible como self._testMethodDoc .

Después de leer esto hice un plugin para las pruebas de la nariz para evitar la repetición.

https://github.com/MarechJ/nosenodocstrings