Re: [Python-es] sobre pruebas de caja blanca

2010-05-23 Por tema Olemis Lang
On 5/22/10, lasizoillo lasizoi...@gmail.com wrote:
 El día 22 de mayo de 2010 05:44, Ivette Maria Suarez Muñoz
 immu...@estudiantes.uci.cu escribió:
 Hola tengo que hacer pruebas al codigo y no se en python si existe algun
 modulo o algo que me lo haga mas facil, si alguien sabe algo de esto le
 estare muy agradecida si me responden


Lo primero que debería explicar qué es lo que se prueba (system under
test aka SUT) y qué es lo que pretende con las pruebas . Mientras no
haga eso, sospecho que la respuesta será un poco difícil, porque de
hecho hay múltiples respuestas . Para darse cuenta solo hay que
echarle un vistazo a la taxonomía [1]_ ;o)


 Yo empezaría por hacer pruebas funcionales con nosetests o docutils.

Personalmente no me gusta nose . Yo uso dutest, que es una combinación
mejorada y simple de unittest + doctest ... pero para gustos se han
hecho los colores ;o)

 El primero alguna vez lo he integrado con tests de cobertura.

No es necesario nose para hacer análisis de cobertura . Se puede usar
coverage.py

{{{
#!sh

$ coverage.py cualquier_cosa_hecha_en_py
}}}

C. Titus Brown estaba confeccionando un paquete (SomePackage @ GitHub)
de ejemplo que ilustraba las buenas prácticas para organizar los
módulos y artefactos de pruebas , sobre todo con el fin de hacer algo
más o menos así

{{{
#!sh

$ coverage.py setup.py test
}}}

 Pero
 también te digo que con un 100% de cobertura se pueden tener caminos
 que no estan comprobados (y que sean erroneos).
 http://somethingaboutorange.com/mrl/projects/nose/0.11.3/plugins/cover.html


No es del todo así, y sí es del todo así . coverage.py tiene soporte
para branch coverage. De esta forma se puede confiar más en el reporte
de coverage ;o)

 Existen también algunas herramientas de QA para python que te puede
 ayudar a encontrar errores (uso de variables no declaradas, ...) sin
 necesitar de programar una batería de tests. También valen para
 quejarse de que el código sea feucho.
 * pylint (http://www.logilab.org/857) lento como un dolor y tan
 quisquilloso como tengas la paciencia de configurarlo.
 * pyflakes (http://divmod.org/trac/wiki/DivmodPyflakes) rapido como un
 demonio, pero no tan exhaustivo.


Análisis estático de código . Ver sección en [1]_

 Repetir, repetir, repetir. Cuando tires para atrás un desarrollo y te
 lo den modificado sería interesante hacer la regresión de todos los
 tests y revisar el código midificado. Control de versiones para ver
 los cambios de los entregables y si has automatizado la batería de
 tests volverlos a pasar. Buildout, buildbot, hudson, ... scripts de
 python

Bitten ;o)

 pueden ayudarte mucho para volver a ejecutar los tests y evitar
 que un arreglo estropee una cosa que antes funcionaba.


+1 . Para más detalles acerca de la filosofía, buscar en Google :
Martin Fowler Continuous Integration

 Así en general no se me ocurren más herramientas. Igual entrando en
 detalles concretos aparecen más ideas.


testing-in-pyt...@idyll.org
;o)

.. [1] PythonTestingToolsTaxonomy - Cheesecake - Trac
 (http://pycheesecake.org/wiki/PythonTestingToolsTaxonomy)

-- 
Regards,

Olemis.

Blog ES: http://simelo-es.blogspot.com/
Blog EN: http://simelo-en.blogspot.com/

Featured article:
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] sobre pdf

2010-05-23 Por tema Ivette Maria Suarez Muñoz
Tengo un problema a la hora de cargar el pdf para trabajar con el texto plano, 
con el eclipse no me carga bien el pyPdf, si alguien me puede ayudar se lo 
agradeceré
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/