convirtiéndome en un unittester necesito motivación para seguir testeando, esa motivación me sirve para mejorar, en el caso de python compito contra el puntaje que me da pylint, en el caso de testing estaba buscando algo para competir y encontré coverage, que es una herramienta que mide cuando código cubren tus tests.
si bien el code coverage no es indicativo que no hay bugs, es una buena forma de intentar superarse y agregar mas pruebas.
acá va una mini receta de como instalarlo y usarlo, en mi caso ubuntu 10.10 pero debería adaptarse fácilmente a otros SO.
instalando lo necesario
sudo apt-get install build-essential python-dev sudo easy_install pip
instalando coverage
sudo pip install coverage
probandolo
yo tengo todos los tests en un directorio llamado test (que original) y en el archivo __main__.py importo todas las clases que heredan de unittest.TestCase y llamo a unittest.main()
para correr coverage ejecuto
coverage run test/__main__.py coverage html --omit="/usr/*"
con el primero se mide la cobertura de código, con el segundo se genera un reporte html, ahora miramos el reporte
firefox htmlcov/index.html
para tener algo mas simple y fácil de correr para medir el avance podemos usar
coverage report --omit="/usr/*"
que nos muestra el reporte en consola, podemos hacerle un watch o un grep para seguir mas de cerca algún modulo
bueno, esta fue la forma de hacer el testing algo mas parecido a una competencia por quien consigue el puntaje mas alto, al menos a mi eso me sirve
No hay comentarios.:
Publicar un comentario