Zend Z-Ray

La compañía Rougue Wave Software ofrece un servidor PHP comercial llamado Zend Server.
Una de las características sobresalientes de Zend Server es su extensión Z-Ray. Aparentemente análogo a la funcionalidad de rastreo y creación de perfiles de Xdebug, Z-Ray ofrece captura integral de información y una experiencia de usuario mejorada. La información capturada varía desde la ejecución, tiempos, errores y advertencias, consultas de bases de datos y llamadas a funciones para solicitar información.

Continuar leyendo «Zend Z-Ray»

Xdebug

Xdebug es una extensión de PHP que proporciona capacidades de depuración, rastreo y creación de perfiles. El componente depurador utiliza el protocolo de depuración DBGp para establecer la comunicación entre un motor de secuencias de comandos PHP y un IDE depurador. Hay varios IDEs y editores de texto que soportan el protocolo de depuración DBGp los siguientes son solo algunos de los más populares:

Continuar leyendo «Xdebug»

jMeter

Apache jMeter es una aplicación gratuita y de código abierto diseñada para pruebas de carga y rendimiento. La funcionalidad de jMeter se extiende a través de muchas aplicaciones, servidores y tipos de protocolos diferentes. En el contexto de las aplicaciones web, podríamos sentir la tentación de compararlo con el navegador. Sin embargo, jMeter funciona con HTTP y https a nivel de protocolo. No representa HTML ni ejecuta JavaScript. Aunque jMeter es principalmente una aplicación GUI, se puede instalar fácilmente y ejecutar sus pruebas en modo consola. Esto lo convierte en una herramienta conveniente de elección para construir rápidamente nuestras pruebas en modo GUI y luego ejecutarlas en una consola del servidor más adelante.

Continuar leyendo «jMeter»

phpspec

Al igual que Behat, phpspec es un marco de prueba de código abierto y gratuito basado en la noción de BDD. Sin embargo, su enfoque para las pruebas es bastante diferente al de Behat; incluso podemos decir que se encuentra en algún lugar en el medio de PHPUnit y Behat. A diferencia de Behat, phpspec no usa las historias en formato Gherkin para describir sus pruebas. Al hacerlo, phpspec cambia su enfoque en el comportamiento de la aplicación interna, en lugar de la externa. Al igual que PHPUnit, phpspec nos permite instanciar objetos, llamar a sus métodos y realizar varias afirmaciones sobre los resultados. La parte en la que difiere es en su enfoque de «pensar en la especificación» y no en el de «pensar en la prueba».

Continuar leyendo «phpspec»

Behat

Behat es un marco de prueba de código abierto y gratuito basado en una noción de desarrollo basado en el comportamiento (BDD). El gran beneficio de los marcos de BDD, incluido Behat, es que una parte importante de la documentación funcional se vierte en las historias de usuarios reales terminamos probando. Es decir, hasta cierto punto, la documentación misma se convierte en una prueba.

Continuar leyendo «Behat»

PHPUnit

PHPUnit es un representante de los marcos de pruebas unitarias, cuya idea general es proporcionar un contrato estricto sobre un fragmento de código aislado que debe cumplirse. Este fragmento de código es lo que llamamos unidad, que se traduce en la clase y sus métodos en PHP. Usando la funcionalidad de aserciones, el marco PHPUnit verifica que estas unidades se comporten como se esperaba. El beneficio de las pruebas unitarias es que su detección temprana de problemas ayuda a mitigar los errores compuestos o en la línea que podrían no ser evidentes inicialmente. Cuantas más rutas posibles de un programa cubra la prueba unitaria, mejor.

Continuar leyendo «PHPUnit»

Probar los bits importantes en PHP

Escribir software de calidad es una actividad técnicamente desafiante y costosa. La parte técnicamente desafiante proviene de la necesidad de comprender e implementar más de un tipo de prueba de aplicaciones. Considerando que, la parte costosa proviene del hecho de que las pruebas adecuadas generalmente produce más código que el código que estamos probando, lo que se traduce en más tiempo necesario para hacer el trabajo.

Continuar leyendo «Probar los bits importantes en PHP»

Entendiendo Composer

Composer es un administrador de paquetes por proyecto para PHP. Originalmente lanzado en 2011, se puso al día rápidamente y se convirtió en un administrador de paquetes favorito entre los desarrolladores de PHP. Con solo mirar sus estadísticas de GitHub, podemos ver que el proyecto está siendo desarrollado activamente por la comunidad:

Continuar leyendo «Entendiendo Composer»

Mitigar el problema común de la inyección de dependencia en PHP

La inyección de dependencias es una técnica de software bien establecida que trata el problema de las dependencias de los objetos, lo que nos permite escribir clases poco acopladas. Si bien el patrón en sí ha existido durante bastante tiempo, el ecosistema PHP realmente no lo ha elegido hasta que los principales frameworks como Symfony comenzaron a implementarlo.

Continuar leyendo «Mitigar el problema común de la inyección de dependencia en PHP»

Consulta a la base de datos MYSQL a través de la extensión del controlador MySQLi en PHP

Hay varias extensiones de controladores que nos permiten consultar MySQL. MySQLi es uno de ellos.
Para usar MySQLi en la consola, debemos asegurarnos de tener instalada la CLI de PHP y la extensión del controlador mysql:

sudo apt-get -y install php7.0-cli php7.0-mysql

Continuar leyendo «Consulta a la base de datos MYSQL a través de la extensión del controlador MySQLi en PHP»