Testing Tricks
Fixtures
Reflection
Test Naming
Makes your life easier
testGetItemsThrowExceptionOnInvalidArgs()
Mockery
Mockery Vs PHPUnit
Usa la aserción correcta
Guzzle
PHPUnit assertions
Focus on Easy mocking
Mocking con PHPUnit
SetUp & TearDown
Hace cosas que otros no pueden
Partial Mocks: Mocks desde instancias
Fluent interface definition
Respuestas en secuencia
$this->get('router')
$this->get('my.service')
Pero
TypeHinting
Test Smells
SetUp demasiado complejo
new
Dependency
Injection
Mas de una expectación
en un test
% Unit Tests Bajo
Mocking Framework
Quién soy?
Apasionado por Symfony 2
In #Rigor We Trust
Evangelizador Testing
Deslumbrado por Erlang
Backend Developer en SocialPoint
@marcos_quesada
marcos.quesadas@gmail.com
Testing
We are Hiring!
deSymfony 2o12
Escribiendo código fácil de testear de Álvaro Videla
Smells
Introducción
Unit Testing
Code Quality
Single Failure
Single Responsability
Scopes
ABSTRACCION
Tests Integración
VALOR DEL TEST === UTILIDAD
"Don't trust your colaborators..."
ABSTRACCION?
Conclusiones
Functional Tests
Cual es mi App?
Kernel?
ABSTRACCION?
Toda la app
Repositorio de ejemplo
Symfony2ErlangBundle
clone it!
TDD
Thank you!
Feedback: http://joind.in/talk/view/8839
Testing Services
Twitter: @marcos_quesada
Linkedin: marcosquesada
marcos.quesadas@gmail.com
Consecuencias
Extra!
Cambio de Foco
Que debe hacer
Vs
Como va a ser usado
Testing Listeners
RECAPITULAMOS
Buenas Herramientas
Testing FeedBack
TDD
Quick Refactor
Te obliga a diseñar antes
de escribir código
"Eat your own dog food"
Testing Extensions
Dependence Injecton
Testing Aplicado
WebTestCase
Bundles en SRC
Entonces
config_test.yml
Is using our appKernel
Abstracción del Test
Utilidad del Test
TDD
Code Quality
Using WebTestCase
Vendor Implementation
Compiling container
Cual es el valor de un test?
Testing Container
"Think twice before writing a test"
Planificar la TestSuite
"Assert just what you need"
Evitar el lastre
de explotación
Reconsidera tus tests al
terminar tu 'feature'
Los Tests son herramientas
Tranquilidad de desarrollo
Test Feedback: Code Smells
complexity === EVIL
Acompañan
el desarrollo
Imagen de la charla "Escribiendo código fácil de testear" de Álvaro Videla en el deSymfony 2012
VALOR DEL TEST === UTILIDAD
Testing Commands
Testing Aplicado
en Symfony 2
#deSymfony 2013
@marcos_quesada