unitarias pruebas hacer example con como php phpunit wamp

pruebas - PHPUnit. Error: No hay ningún controlador de cobertura de código disponible.(tener instalado xdebug)



como hacer pruebas unitarias con phpunit (3)

Hay 2 archivos php.ini en la mayoría de las instalaciones de Apache / PHP y definitivamente en WAMPServer

Para corregir el php.ini correcto utilizado por PHP en Apache use los menús

wampmanager->PHP->php.ini

Pero para el archivo php.ini utilizado por la CLI de PHP, tiene que editar manualmente

/wamp/bin/php/php{version}/php.ini

el resultado de un php -v debería tener este aspecto si XDEBUG está configurado en la CLI

php -v PHP 7.0.6 (cli) (built: Apr 27 2016 14:00:40) ( ZTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Xdebug v2.4.0, Copyright (c) 2002-2016, by Derick Rethans

NOTA

El actual WAMPServer 3 es 3.0.4 Las actualizaciones de ADDON se pueden encontrar en SourceForge

La última versión de ADDON PHP es PHP7.0.6 también disponible en SourceForge

Consulte el Foro de WampServer para mantenerse al día con las últimas versiones de PHP / MYSQL / Apache ADDONS para WAMPServer 3.

También :

Es posible que tenga que ajustar los parámetros de configuración de XDEBUG en el php.ini para satisfacer sus necesidades específicas

Hay una respuesta para la pregunta similar Laravel 5: PHPUnit y no hay un controlador de cobertura de código disponible que funcione, pero tengo instalado xdebug.

(Si esto importa, estoy usando: windows7, netbeans8.1, php7, wamp3)

Mostrar la cobertura de código en Netbeans resulta en:

Error: no hay un controlador de cobertura de código disponible

, y la salida es abajo:

"C: / wamp / www / treningPHPUnitSymfony2.8 / bin / phpunit.bat" "--colors" "--log-junit" "C: / Users / chiny / AppData / Local / Temp / nb-phpunit-log. xml "" --coverage-clover "" C: / Users / chiny / AppData / Local / Temp / nb-phpunit-coverage.xml "" C: / Archivos de programa / NetBeans 8.1 / php / phpunit / NetBeansSuite.php "" - "" --run = C: / wamp / www / treningPHPUnitSymfony2.8 / src / TreningBundle / Tests / Controller / RabarbarControllerTest.php "PHPUnit 5.3.4 por Sebastian Bergmann y colaboradores.

Error: no hay un controlador de cobertura de código disponible

.II 3/3 (100%)

Tiempo: 1.13 segundos, Memoria: 4.00MB

OK, pero incompleto, omitido, o pruebas de riesgo! Pruebas: 3, Afirmaciones: 1, Incompleta: 2. Hecho.] (Url)

xdebug conf (C: / wamp / bin / apache / apache2.4.17 / bin / php.ini):

[xdebug] zend_extension ="C:/wamp/bin/php/php7.0.1/zend_ext/php_xdebug-2.4.0rc3-7.0-vc14.dll" xdebug.remote_enable = off xdebug.profiler_enable = off xdebug.profiler_enable_trigger = Off xdebug.profiler_output_name = cachegrind.out.%t.%p xdebug.profiler_output_dir ="C:/wamp/tmp" xdebug.show_local_vars=0

extensiones cargadas

(Tengo netbeans y directorio de proyectos en la misma partición de Windows)


He enfrentado este problema con una nueva instalación de PHP 7.1 y esto es lo que he hecho para que funcione

$ brew install php71-xdebug

$ php -i | grep xdebug $ php -i | grep xdebug // para verificar si xdebug fue instalado

$ phpunit

Después de eso funcionó. Además, así es como parece que mi phpunit.xml he necesitado para incluir en la lista blanca toda la estructura porque es un componente compartido

<?xml version="1.0" encoding="UTF-8"?> <phpunit backupGlobals="false" backupStaticAttributes="false" bootstrap="vendor/autoload.php" colors="true" convertErrorsToExceptions="true" convertNoticesToExceptions="true" convertWarningsToExceptions="true" processIsolation="false" stopOnFailure="false" syntaxCheck="false"> <testsuites> <testsuite name="Tests"> <directory suffix=".php">./Tests/</directory> </testsuite> </testsuites> <logging> <log type="coverage-clover" target="./build/logs/clover.xml"/> </logging> <filter> <whitelist addUncoveredFilesFromWhitelist="true"> <directory>./</directory> </whitelist> </filter> </phpunit>

Esta solución funcionará solo en MacOS; si desea que funcione en Linux, deberá utilizar el administrador de paquetes correspondiente, como apt-get, etc.


Mis configuraciones: (PHP + Xdebug en CLi habilitado)

MAMP 4 PRO / OS X 10.12

PHP 7.0.10 (cli) (built: Aug 25 2016 17:32:10) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Xdebug v2.4.1, Copyright (c) 2002-2016, by Derick Rethans zend_extension="/Applications/MAMP/bin/php/php7.0.10/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so" xdebug.profiler_enable=1 xdebug.profiler_output_dir="/Applications/MAMP/tmp" xdebug.coverage_enable=1

Y la cobertura aún no se realizará: "No hay un controlador de cobertura de código disponible"