deSymfony 2012

Escribiendo código fácil de testear

Álvaro Videla  · 

Presentación

Vídeo

Transcripción

Extracto de la transcripción automática del vídeo realizada por YouTube.

bueno buenas tardes o buenos medio días o como sea que se dice esta charla es sobre escribir código fácil de testear y bueno muchas gracias por atender a la charla y al mismo tiempo gracias a la organización de symphony por por haber aceptado mi ponencia aquí

tenemos los patrocinadores que en particular sus trabajos en live que es una empresa de suiza y bueno ellos gracias a ellos que como ya saben la conferencia se puede llevar a cabo bueno yo trabajo en zúrich la empresa ya malí pague ese es el blog y el twitter

para los que me quieran han followers soy de por ahí soy coautor del libro este de davydenko si algo aprendí de él del catalán y al final de la de la charla vamos a estar regalando unos ejemplares y también creo unos pósters de symphony y también vamos estar

sorteando eso y bueno ese descuento para los que quieren comprar libro lo ha dado manning con este código se puede ordenar con el 38% descuento si no les funciona me mandan un mail con su nombre o lo que sea supongo que va a funcionar pero en caso de que no

funcione y yo le hago el forward a la gente de manning para que lo puedan usar y no no si ya compraron el libro ya fuera no se puede bueno yendo al tema de la charla primero que nada como usted ya saben estamos basando el ac de un pdf entonces yo tenía más

pensado mostrar el código de mi laptop entonces quizás hayan algunos errores no estoy acostumbrado a presentar esta forma así que sepan disculpar bueno empezando a la charla lo que yo no soy no soy un gurú del testeo de aplicaciones capaz con tiene la u y

tampoco soy un abogado del té o sea si han venido a esperar cuál es hablar de td testing en particular no la charla es cómo lograr el código que sea fácil de testear y no como textil para eso ya tuvimos una muy buena charla de de jacobo que acaba de entrar

y ahí han habido varias charlas que van a ayudar a la idea que yo quiero presentar pero más que nada a mí me gustaría esto que fuera una discusión entre nosotros sino una discusión mental para nosotros mi objetivo final es que digamos bueno las prácticas que

yo hago a diario son tan así están así como se debería programar como debería ser no hay otra manera diferente etc etc mi idea es esa es como una más como una reflexión y no es un dogma hay que hacer tal cosa pero por favor que no vaya a ver ningún tweet diciendo

fulanito dijo que ahora se te esté así porque él dijo hay muchas cosas que se hicieron porque alguien dijo y no van muy bien este bueno que es el único testing ayer le pedía a juan carlos copy-paste que me diera una mano fui al wikipedia y juan carlos me tuvo

me trajo esto el gol hacia el objetivo del 1 y del este unitario es aislar cada una de las partes de un programa y mostrar que esas partes individuales son correctas o sea para empezar con una definición a qué le llamamos este unitario y la versión en español

bueno que las habladas pruebas unitarias solo prueban las unidades por sí solas por lo tanto no descubrirán errores de integración problemas de rendimiento y otros problemas que afectan a todo el sistema en su conjunto la versión en catalán o el apego porque

es la versión en inglés traducida catalán así que no hay mucho que agregar en silo en principal acá que a veces yo siento que se olvida sobre todo ayer cuando jordi presentaba su uso cuando yo representaba lo que ellos hacen en su empresa y él dijo nosotros

nos estábamos cristianos el cual es tal manera que estábamos lo que a nosotros nos sirve viva y empezó pero como que no te esté así y un tomate por allá y no sé qué digo no no por favor el test unitario de éste a unidades individuales de código si yo quiero

testear un login no sé cómo cabe eso dentro de definición de bing y texting y yo puedo hacer una suerte de tal cosa pero no para mí no sé si estoy equivocado porque no sé mucho la charla del colega que va a estar después mía dvd es mucho más adecuada para

testear loggins por ejemplo o ver cómo funciona esta aplicación o tests funcionales etcétera etcétera pero el test unitario que esté a una sola parte aislada de la aplicación y en sí una función cometido comunicáramos anal por ende a mí me gustaría también

que nosotros nos planteamos la pregunta del dogma versus realidad o sea es muy lindo lo que dice el libro pero yo tengo que comer básicamente lo que lo que me gustó el punto de jordi esto no funciona y punto y quien es uno para decirle que no funciona el caso

concreto lamentablemente lo tengo que traer a colación es chelsea versus barcelona el fútbol del chelsea es muy feo de mirar o sea tengo una línea de 10 de defensa no sé en qué estrategia futbolística se utiliza eso pero en chelsea se utiliza aparece y el

fútbol del barça es muy lindo y mirar qué tocan acá que no sé qué buenísimo pero en los resultados del nos dice cómo se llama el entrenador del chelsea y le dio resultados salieron campeones de la champions junto a ellos eso más feo linda lo que sea les dio

resultado y si el barça quizás gano mucho y es muy buen equipo nadie discute la calidad de esto de su manera de andar pero en un caso particular a estos otros les sirvió tal otra cosa y ahí tenemos como en la vida real nos muestran que el que no todo es hay

opiniones y cada cual algo les sirve y algo no les sirve y lo que nosotros siempre nos olvidamos es de la realidad o si hay un contexto en un contexto que tengo es que tengo mis usuarios que están protestando porque el del sitio se cayó y estaba tirando errores

pero que tengo que hacer un test unitario para delante del error no por favor pero arreglarme el sitio y el united si todos los 50 libro que leíste de dogma o sea es no para mí yo quiero que gestionen el sitio porque nosotros como programadores nos olvidamos

que hay usuarios del otro lado no hay una persona no hay un computer sciences del otro lado no está aunque el bot martín usando nuestro sitio capaz de una vez pero no siempre entonces a él yo creo que también cuando él usa amazon quiere comprarse un libro

no quiere ver si le aparece la barrita gris de los tests entonces hay que tener en cuenta eso me parece veamos que sigue porque no puedo ese tiempo que viene y claro todo esto que se ha hablado de síntesis en inglés y c-32 en español supongo que serán compromisos

o no sé cómo se dice pero el caso concreto así es o sea quieres programar en php y después picar código como si se bastante rápido y tiene un sitio andando pero capaces pesadas mucha velocidad para un algoritmo pero particular y bueno está ce java o lo que

sea que queramos hacer que antes de rápido etcétera etcétera etcétera hay que entender que cuando hay una solución por algo se tomó esa solución o sea muchas veces alguien presenta x solución para su problema y uno en hacker news es muy común pero por qué

no usaste tal cosa porque en mi problema resulta que con esto me servía y no el nivel en mi empresa quizá no encuentro programadores haskell entonces buenísimo el hack el de fuerte el aplauso algo que crear un hacker pero no consigo ni un promo -hasta entonces

php me sirve esos son los 32 es una cosa es el dogma y otra cosa es la realidad lo mismo se aplica el lyon y test veamos que sigue entonces bueno la pregunta que siempre viene es que testear porque si nosotros queremos escribir códigos fácil de testear obviamente

tenemos que tener un propósito no no puedes ir a testear y decidir voy a testear de todo hay que saber qué es lo que voy a testear en base a eso voy a organizar como acabo de decir antes site trade off siempre cada decisión que uno toma tiene que estar en

base a un contexto sí si no tengo la más idea de lo que estoy haciendo bueno lee un libro y may veo que yo lo recomendado obviamente va sobre decisiones en la n se doblan esa teoría pero siempre aplicada a un contexto muy particular continuamos y también está

la pregunta de cuánto test y'all bueno quien quien es el creador o el que arrancó con el movimiento te debe estar si es alto quien ve que dijo el señor quien ve eso dijo el señor que él ve que a mí me pagan por código que funciona no por test mi filosofía

es testear lo menor posible para alcanzar un nivel suficiente de confianza punto final y término eso es lo que nosotros nos olvidamos vamos como yo que si vamos a una conferencia nos dan en la charla de texto de factoring o de rabbit en que visitamos todos

[ ... ]

Nota: se han omitido las otras 4.046 palabras de la transcripción completa para cumplir con las normas de «uso razonable» de YouTube.