2008-08-31 42 views

Respuesta

3

Hay testoob que es en suite muy completa de test.Also xUnit-es decir, y tiene una buena opción de informe

0

Existe también PyUnit que podría ser lo estas buscando.

2

@ Greg: PyUnit está incluido en la librería estándar como unittest

2

Considere py.test. No exactamente análogo a NUnit, pero muy bueno, con características agradables que incluyen autodetección de prueba y un "Mire las pruebas y el código: cuando algo cambia, vuelva a ejecutar las pruebas que fallaron la última vez. Tan pronto como pasen todas las pruebas, cambie a ejecutar todas las pruebas cada vez que algo cambia ". opción.

0

Nunca utilicé xUnit, así que no puedo decir si los marcos son buenos/malos comparativamente, pero here es un script que escribí usando el framework unittest (para comprobar que la API funciona como debería) y el doctest (para comprobar los ejemplos que he dado trabajo)

Mi único problema es comprobar que algo plantea una excepción es un poco intrincado (hay que pasarle una función/lambda que plantea la excepción, en lugar de solo el comando en sí, como el resto del framework). Aparte de eso, hace lo que debería, de manera confiable, y se ha incluido en la distribución predeterminada de python durante bastante tiempo.

9

Recomiendo nose.

Es el más pitthonic de los marcos de prueba de la unidad. El corredor de prueba ejecuta tanto pruebas documentales como pruebas unitarias, por lo que puede usar el estilo de prueba que desee.

+0

El enlace a la nariz está muerto. – pefu

+1

Se ha actualizado el enlace – codeape

+0

Muchas gracias. – pefu

1

Recomiendo Nose.

Después de la instalación simple y razonable, solo tiene que ejecutar "pruebas de nariz" en la carpeta del proyecto y Nariz encontrará todas sus pruebas y las ejecutará. También me gusta la colección de complementos (cobertura, GAE, etc.) y la capacidad de llamar a Nose directamente desde mis scripts de Python.

0

nariz parece ser la mejor combinación de flexibilidad y conveniencia. Ejecuta pruebas unitarias, doctests, cobertura (con una extensión) y pruebas py.test-like de un marco y lo hace admirablemente. Tiene suficiente popularidad como para que Komodo Edit haya realizado alguna integración IDE y no me sorprendería verlo en otro lado también.

Me gusta por una buena razón: casi siempre doctest antes de escribir pruebas más extensas en otro marco. Esto se debe a que, para las pruebas básicas, los doctests matan dos pájaros de un tiro. Obtendrá pruebas ejecutables (aunque son un poco torpes para escribir bien a veces), así como documentación de API y documentación interactiva al mismo tiempo. nose ejecutará estos con la extensión doctest incluida cuando use una opción de línea de comandos (--with-doctest).

Digo que esto ha venido de py.test como mi favorito anterior. Si bien es genial, las pruebas de nariz son lo suficientemente similares a mí que no me lo pierdo, y me gusta la integración de las diversas metodologías de prueba bajo un mismo techo, por así decirlo. YMMV, pero recomiendo echarle un buen vistazo a la nariz antes de elegir otra. Si no está familiarizado con las pruebas de py.test, debe verlas también. Los encuentro excelentes porque generalmente están escritos de tal manera que se pueden depurar fácilmente sin el marco de prueba, lo que hace que un sistema menos complicado participe en la sesión de depuración. Me parece valioso por sí solo, mientras que, en mi opinión, también son más fáciles de escribir que las pruebas unittest.