testeando dependencias difíciles – Sin Mock

Hace unos días estuve “intentado” mejorar una librería para poder enviar comandos a Varnish y me encontré con unos cuantos problemillas para poder testar la librerías y así llegar a refactorizarla. Varnish Cache Según la wikipedia Varnish Cache es un acelerador de aplicaciones web, también conocido como caché de proxy HTTP inversa. Se instala delanteSigue leyendo “testeando dependencias difíciles – Sin Mock”

¿Cómo hacer una librería utilizable mediante composer?

Normalmente utilizo composer como gestor de dependencias en los proyectos PHP pero quería aprender como crear una librería/paquete (no se bien como traducirlo) que pudiese ser utilizada en otros proyectos de PHP. En este post vamos a aprender como hacer SimplySlug una pequeña librería para crear slugs, es decir URL’s amigables y legibles por humanos.Sigue leyendo “¿Cómo hacer una librería utilizable mediante composer?”

Mejorando con Mockery – Separando responsabilidades

Hace poco empezamos haciendo nuestra primera kata de código utilizando phpunit. En una primera iteración conseguimos una calculadora totalmente funcional. El código de la kata está en github (http://github.com/jeslopcru/php-coding-dojo). Esta vez vamos a dar un pequeño empujón a la kata, emepzando a utilizar Mockery y sobre todo vamos a seguir aprendiendo buenas prácticas de desarrollo.Sigue leyendo “Mejorando con Mockery – Separando responsabilidades”

El patron singleton en PHP y los test unitarios con PHPUnit

Llevamos una serie de post hablando sobre PHPUnit, sobre como hacer asserts y de patrones para hacer mejores test. Hoy vamos a comentar un poco acerca del patrón/antipatrón Singleton. Según la Wikipedia El patrón de diseño singleton (instancia única) está diseñado para restringir la creación de objetos pertenecientes a una clase o el valor deSigue leyendo “El patron singleton en PHP y los test unitarios con PHPUnit”

patrones test utilizando PHPUnit

Hace unos días vimos algunos patrones para mejorar los tests con PHPUnit, mejorando los assert y/o fixtures. En esta ocasión traemos una serie de patrones para mejorar nuestros tests en PHP. Veremos una serie de técnicas sobre como afrontar los tests, haremos ejemplos, si bien es cierto que estos ejemplos serán en PHP, la teoríaSigue leyendo “patrones test utilizando PHPUnit”

Patrones para mejorar tests con PHP y PHPUnit – TDD

Ya hemos hablado bastantes veces sobre TDD, sobre como instalar PHPUnit, cómo utilizar PHPUnit y Silex para poder hacer Test Driven development, en definitiva ya hemos dado los primeros pasos. Ahora vamos a dar otro pequeño paso, aprenderemos algunos patrones para escribir mejores tests. Hablaremos sobre buenas maneras de escribir assert, formas distintas de estructurar ySigue leyendo “Patrones para mejorar tests con PHP y PHPUnit – TDD”

Haciendo TDD en PHP con Silex y PhpUnit (Parte 2)

Hace unos días hemos empezado a trabajar con TDD y Silex en un proyectos bastante especial, “Como utilizar Tdd con Silex utilizando PhpUnit” para ello ya tenemos configurado todo el entorno par a poder empezar a hacer test, escribir código y refactorizar. Básicamente nuestro proyecto es la API de una calculadora 😉 es decir es una calculadoraSigue leyendo “Haciendo TDD en PHP con Silex y PhpUnit (Parte 2)”

phpunit y Symfony2 en Mac

Con Mac OS X trae por defecto muchas herramientas y instaladas, pero a veces no están del todo a nuestro gusto. Ya vimos antes como instalar RVM, Homebrew, Python en Mac OS X. Ahora seguimos esta serie de post instalando todo el stack de PHP (PHP, PHPUnit, Composer )… Para terminar configurando nuestro entorno conSigue leyendo “phpunit y Symfony2 en Mac”

PHPUnit y buenas prácticas

Hace ya unas semanas realicé unos post sobre como instalar PHPUnit para empezar con TDD. Hace unos días me llegó desde twitter un post sobre “Ser profesional” (http://plqd.blogspot.com.es/2013/07/ser-profesional.html) En el Pepe Doval cuenta experiencias tratando con personas más o menos profesional. Uno de los puntos clave que cuenta Doval es que el mundo de la programaciónSigue leyendo “PHPUnit y buenas prácticas”

Empezando con TDD – Primer ejemplo paso a paso

Ya lo tenemos todo instalado, xammp funcionando, eclipse pdt con el plugin de phpunit y hemos probado que todo funciona correctamente con un pequeño ejemplo. Ahora vamos con lo divertido. Para recordarlo vamos a resumir en un momento esto del TDD Test Driven Development (TDD) TDD es una técnica para desarrollar y diseñar software. ConsisteSigue leyendo “Empezando con TDD – Primer ejemplo paso a paso”