Introducción a PHPUnit
-
Upload
alicantephp -
Category
Documents
-
view
1.541 -
download
0
Transcript of Introducción a PHPUnit
Introducción a PHPUnit
¿Qué es PHPUnit?
> Estándar de-facto para tests unitarios en proyectos PHP.
Nos proporciona un framework para:
> Escribir los tests de una manera sencilla.
> Ejecutarlos con facilidad.
> Analizar los resultados.
Introducción a PHPUnit
¿De dónde viene?
> Pertenece a la familia de frameworks de xUnit (escrito por Kent Beck, @KentBeck - JUnit en Java).
Creador
> Sebastian Bergmann, @s_bergmann
Código
> GitHub → https://github.com/sebastianbergmann/phpunit/
Introducción a PHPUnit
Instalación con PEAR
PHP Extension and Application Repository http://pear.php.net/
> $ pear upgrade PEAR
> $ pear config-set auto_discover 1
> $ pear install pear.phpunit.de/PHPUnit
Introducción a PHPUnit
Instalación con Composer
Dependency Manager for PHP http://getcomposer.org/
> composer.json
{ "require": { "phpunit/phpunit": "3.7.*" }, "config": { "bin-dir": "/usr/local/bin/" } }
> $ composer install|update (php composer.phar install|update)
Introducción a PHPUnit
Instalación con Phar
PHP Compressed files http://php.net/manual/es/book.phar.php
> $ wget http://pear.phpunit.de/get/phpunit.phar > $ chmod +x phpunit.phar
¿Cómo comprobamos que está instalado?
> $ phpunit --version PHPUnit 3.7.18 by Sebastian Bergmann.
Introducción a PHPUnit
Mi primer test
> Creamos una clase MyFirstTest (MyFirstTest.php)
<?php
class MyFirstTest extends PHPUnit_Framework_TestCase {
public function testAlwaysOK() { $this->assertNull(null); }
}
> $ phpunit --colors MyFirstTest
Introducción a PHPUnit
¿Cómo pasar el test?
> $ phpunit MyFirstTest
PHPUnit 3.7.18 by Sebastian Bergmann.
.
Time: 0 seconds, Memory: 1.25Mb
OK (1 test, 1 assertion)
Introducción a PHPUnit
PHPUnit command-line tool
. F E S I
Introducción a PHPUnit
Demo de ejemplo (DemoTest.php)
> Asserts > Anotaciones > Data providers
Introducción a PHPUnit
Test Suite usando configuración XML
> config.xml
<phpunit> <testsuites> <testsuite name="AlicantePHP"> <file>DemoTest.php</file> </testsuite>
<testsuite name="Basic"> <file>MyFirstTest.php</file> </testsuite> </testsuites> </phpunit>
> $ phpunit --configuration config.xml --testsuite AlicantePHP > $ phpunit --configuration config.xml --testsuite Basic
Introducción a PHPUnit
Conclusión
> Testing: buenas prácticas. > Equipos de trabajo grandes.
> Tranquilidad.
> Confianza para hacer cambios.
> Calidad en el código.
> No es gratis, cuesta desarrollar test y cuesta más desarrollar buenos Tests. ...
Introducción a PHPUnit
muchas gracias