<div dir="ltr"><div><div>Moltes gràcies pel resum/blogpost!<br><br></div>Doncs si, la veritat és que sembla una jornada molt interssant, una pena perdre-m'ho...<br><br>Això em fa pensar... s'ha començat a parlar del workshop? aquest any per dates ho puc tenir molt complicat, però amb temps es pot intentar..<br><br></div><div>Salut!<br><br></div><div>Marc. <br></div></div><div class="gmail_extra"><br><div class="gmail_quote">El dia 2 de juliol de 2016, 12:22, Daniel Ribes <span dir="ltr"><<a href="mailto:daniel@danielribes.com" target="_blank">daniel@danielribes.com</a>></span> ha escrit:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Que interessant, llastima no haver pogut ser-hi! :(<br>
<br>
Gràcies pel resum Alex.<br>
<br>
Daniel.<br>
<br>
<br>
El 2/7/16 a les 12:29, Alex Muntada ha escrit:<div class="HOEnZb"><div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Marc Egea i Sala:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Si surt alguna cosa interessant, si us plau passeu-la a la llista<br>
</blockquote>
Després de les presentacions corresponents (teníem cares noves)<br>
vam explicar diferents casos amb què ens trobem que cal introduir<br>
tests, sobretot d'integració, en sistemes «legacy». Vam posar<br>
com a exemples els següents:<br>
<br>
* Introduir tests en un sistema no modularitzat per a fer les<br>
   altes d'usuaris als serveis del meu departament. És un codi<br>
   que originalment es va fer per resoldre un problema concret<br>
   i que ha anat creixent de forma descontrolada (un script per<br>
   cada servei) i sense tests.<br>
<br>
* Introduir tests en una eina per automatitzar els pull requests<br>
   als upstreams dels mòduls de Perl que empaquetem a Debian. Ja<br>
   tenim una forma d'enviar les diferències dels canvis que hem<br>
   de fer per generar els paquets a Debian, però per als upstream<br>
   que tenen els repositoris a GitHub volem crear directament els<br>
   pull requests.<br>
<br>
* Com fer tests d'integració en un sistema que utilitza serveis<br>
   d'AWS sense replicar tot l'entorn de producció.<br>
<br>
En aquest punt vam fer una petita explicació de les diferències<br>
entre els tests funcionals o unitaris i els d'integració. També<br>
vam parlar de mocking i de com evitar-lo tenint diferents entorns<br>
per a producció i testing.<br>
<br>
Tot seguit, vam comentar com amb refactorings petits que vagin<br>
afegint una capa d'abstracció als serveis d'AWS es podrien fer<br>
els tests més fàcilment: aquest middleware primer cridaria<br>
exactament als serveis d'AWS (assegurant així que no s'introdueix<br>
cap canvi de disseny que afecti al funcionament) i que després<br>
gradualment es podria anar evolucionant fins que permeti fer<br>
tests sense tocar els serveis d'AWS. Vam comparar-ho amb el patró<br>
Model-View-Controller i amb altres middlewares com DBIC.<br>
<br>
Després vam fer una mica de teràpia de grup parlant dels motius<br>
pels quals no es fan els tests i la qualitat del codi no és la<br>
que hom desitjaria. Vam parlar del triangle de ferro (recursos,<br>
abast, temps i qualitat) i de la versió «pick two»:<br>
<br>
<a href="https://en.wikipedia.org/wiki/Project_management_triangle" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/Project_management_triangle</a><br>
<br>
Finalment, ja quan estàvem a la porta a punt de marxar va sorgir<br>
el tema del Behaviour Driven Development i vam comentar molt<br>
ràpidament què fa i quina diferències té respecte al Test Driven<br>
Development: BDD està orientat a negoci i TDD a desenvolupament.<br>
<br>
Us recomano aquest parell de llibres:<br>
<br>
* Perl Testing: A Developer's Notebook (antic però vàlid)<br>
   <a href="http://shop.oreilly.com/product/9780596100926.do" rel="noreferrer" target="_blank">http://shop.oreilly.com/product/9780596100926.do</a><br>
* Refactoring (1ed: Java, 2ed: Ruby)<br>
   <a href="http://refactoring.com/" rel="noreferrer" target="_blank">http://refactoring.com/</a><br>
<br>
També podeu trobar interessant aquest vídeo sobre l'economia<br>
del refactoring (no estic d'acord amb tot el que diu però<br>
el trobo igualment interessant) d'en Xavi Gost a la CAS2014:<br>
<br>
<a href="https://www.youtube.com/watch?v=mqjvkL2h3_I" rel="noreferrer" target="_blank">https://www.youtube.com/watch?v=mqjvkL2h3_I</a><br>
<br>
Salut i Perl!<br>
Alex<br>
_______________________________________________<br>
llista dels Barcelona-pm<br>
<a href="mailto:Barcelona-pm@pm.org" target="_blank">Barcelona-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/barcelona-pm" rel="noreferrer" target="_blank">http://mail.pm.org/mailman/listinfo/barcelona-pm</a><br>
BCN Perl Mongers: <a href="http://barcelona.pm.org" rel="noreferrer" target="_blank">http://barcelona.pm.org</a><br>
</blockquote>
<br>
_______________________________________________<br>
llista dels Barcelona-pm<br>
<a href="mailto:Barcelona-pm@pm.org" target="_blank">Barcelona-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/barcelona-pm" rel="noreferrer" target="_blank">http://mail.pm.org/mailman/listinfo/barcelona-pm</a><br>
BCN Perl Mongers: <a href="http://barcelona.pm.org" rel="noreferrer" target="_blank">http://barcelona.pm.org</a></div></div></blockquote></div><br></div>