2011-09-04 9 views

Respuesta

4

La prueba de lógica y las pruebas nunca deben formar parte de "producción" (la producción puede significar el uso por usted, liberado al cliente, etc.) código. Por lo tanto, es una mala idea tenerlos en cualquier lugar dentro de su secuencia de comandos.

Lo ideal es tenerlos en archivos separados.

+1

¿Por qué ???????????? –

+0

Por favor, justifique. –

+0

Soy un nuevo programador y encuentro esta pregunta poco informativa – RodericDay

0

Supongo que no, de hecho, vi una gran cantidad de scripts de Python (en su mayoría complementos de otra aplicación) escritos de esa manera.

3

La mejor práctica es poner las pruebas en unidades separadas que utilizan el módulo unittest. Esta separación le permite mantener limpio el código principal (sin necesidad de muchas pruebas de funciones auxiliares) y lo alienta a escribir buenas pruebas exhaustivas, ya que no se ve inhibido por el desorden del código principal.

5

Realmente depende de su código y los propósitos de su secuencia de comandos. Para proyectos grandes y complejos, seguramente tendrá que poner todas sus pruebas en un lugar separado.

Pero mientras trabajas en algo pequeño, puede ser una buena solución tener pruebas junto con el código: es la idea principal de doctest (es un gran módulo de Python que te permite escribir pruebas en las cadenas de documentos). En este caso, su if __name__ == '__main__' será parecida:

if __name__ == "__main__": 
    import doctest 
    doctest.testmod() 

me resulta agradable y limpio.

Cuestiones relacionadas