Recientemente instalé phpunit en mi servidor a través del instalador de pear.
Cuando voy a ejecutar una prueba, aparece el siguiente error:
Advertencia de PHP: require_once (PHPUnit / Util / Filter.php): no se pudo abrir la secuencia: no existe ese archivo o directorio en / usr / bin / phpunit en la línea 44
Error fatal de PHP: require_once (): Falló la apertura requerida 'PHPUnit / Util / Filter.php' (include_path = '.: / Usr / bin / php') en / usr / bin / phpunit en la línea 44
Después de buscar, intenté hacer algunas modificaciones en include_path en mi archivo php.ini en el servidor. Pero eso no ha hecho nada.
¿Alguna idea de lo que podría estar causando esto?
ERROR: Unknown Role class: "PEAR_Installer_Role_Pear_Installer_role_php" ERROR: Unknown Role class: "PEAR_Installer_Role_Pear_Installer_role_data"
error en el último paso./etc/php5/apache2/php.ini
,/etc/php5/cli/php.ini
, y tuvo que hacer que incluye los padres y subdirectorios:include_path = ".:/usr/share/php:/usr/share/php/PEAR"
sudo pear channel-discover pear.symfony.com
y luego losudo pear install --alldeps phpunit/PHPUnit
You have installed PHPUnit via PEAR. This installation method is no longer supported and http://pear.phpunit.de/ will be shut down no later than December, 31 2014.
... lo que invalidará esta respuesta.Tuve este problema en OS X. Lo solucioné con los siguientes comandos que obligan a reinstalar todas las dependencias de php, que incluían un par de paquetes de otros canales que aún no estaban configurados:
fuente
PHP Fatal error: Call to undefined method PHP_CodeCoverage_Filter::getInstance() in /usr/share/php/PHPUnit/Framework.php on line 46
channel-discover pear.phpunit.de
poder instalar phpunit / phpunit, y luego aparece elrequire_once(PHPUnit/Util/Filter.php)
error ... el archivo no está en ninguna parte de mi sistema de archivos.You have installed PHPUnit via PEAR. This installation method is no longer supported and http://pear.phpunit.de/ will be shut down no later than December, 31 2014.
... lo que invalidará esta respuesta.https://bugs.launchpad.net/ubuntu/+source/phpunit/+bug/701544
y especialmente este comentario para ubuntu 11.04 y puede ser también para algunos otros
a pesar de que hice estos pasos como se recomendó anteriormente, no logré que funcionara, pero después de actualizar pear de 1.9.1 a 1.9.2, está funcionando perfectamente, solo haz esto
speshu @ speshu-laptop: ~ $ sudo pear actualización pear
downloading PEAR-1.9.2.tgz ... Starting to download PEAR-1.9.2.tgz (295,120 bytes) .....................................................done: 295,120 bytes upgrade ok: channel://pear.php.net/PEAR-1.9.2 PEAR: Optional feature webinstaller available (PEAR's web-based installer) PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer) PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer) PEAR: To install optional features use "pear install pear/PEAR#featurename"
fuente
Si es la primera vez que utiliza PEAR, es posible que no haya configurado correctamente la ruta de inclusión. Eche un vistazo a la sección correspondiente del manual de PEAR .
fuente
https://github.com/sebastianbergmann/php-code-coverage
sb@ubuntu ~ % pear channel-discover pear.phpunit.de Adding Channel "pear.phpunit.de" succeeded Discovery of channel "pear.phpunit.de" succeeded sb@ubuntu ~ % pear channel-discover components.ez.no Adding Channel "components.ez.no" succeeded Discovery of channel "components.ez.no" succeeded sb@vmware ~ % pear install phpunit/PHP_CodeCoverage downloading PHP_CodeCoverage-0.9.0.tgz ... Starting to download PHP_CodeCoverage-0.9.0.tgz (108,376 bytes) .........................done: 108,376 bytes install ok: channel://pear.phpunit.de/PHP_CodeCoverage-0.9.0
fuente
¿Estás seguro de que lo agregaste a include_path?
También podría ayudar si viéramos su archivo ini y el fragmento include_path en él ...
fuente
¡Lo encontré!
Parece que PEAR instaló PHPUnit en / usr / share / pear. No estoy seguro de por qué, pero ahí es donde está. Debe ser una cosa (mt).
De todos modos, estoy listo. Gracias por la ayuda.
fuente
Esto también es lo que sucede si tiene una instalación de PHPUnit desactualizada o incompleta. Tenga en cuenta que después de configurar PEAR, debe agregar el canal PHPUnit.de para obtener un paquete actualizado.
fuente
En mi caso, lo resolví agregando
/usr/share/php/PEAR
al archivoinclude_path
.Estoy usando Ubuntu 10.04.2.
fuente
Si tiene problemas para acceder a los componentes, intente de otra manera.
Instalar pera
Instale
phpunit
usando pear.pear config-set auto_discover 1 pear install pear.phpunit.de/PHPUnit
Instalar
phpunit
/ Selenium, pero primero debe instalar elcurl
módulofuente
Estaba teniendo el mismo problema. Netbeans informaba que la versión de phpunit era demasiado antigua (que no lo era). La ejecución del script phpunit mostró directamente los mensajes anteriores.
Lo resolví agregando:
include_path=".:/usr/share/php"
Para /etc/php5/cli/php.ini
¡TENGA EN CUENTA que el archivo php.ini es el de php CLI (comando), no el php.ini usado para apache!
fuente
Mi problema original era que no podía obtener la versión de línea de comandos de php (yum install php o yum install php-cli) para actualizar a => php5.2.7 Estaba atascado en la versión 5.1
Ya había compilado php 5.3.3 para usar con apache. Así que configuro un enlace simbólico desde / usr / bin / php (la línea de comando predeterminada) a mi versión compilada en / var / php5 / bin / php para obtener la línea de comando php reportando 5.3.3
Luego volví a seguir los pasos de instalación de pear para phpunit
Pero todavía necesitaba las cosas de cobertura de código cuando ejecuté phpunit.
Así que busqué la cobertura del código en / var / php5 / lib / php / PHP / CodeCoverage y lo agregué a la ruta de inclusión en php.ini include_path = ".: / Var / php5 / lib / php /"
Asegúrese de agregarlo a la ruta de inclusión sin / PHP porque phpunit comienza en PHP / (mayúsculas de aviso) buscando Cobertura de código Error de apertura requerida 'PHP / CodeCoverage / Filter.php'
fuente
Tuve este problema. Estaba desarrollando un sitio de marco zend. Finalmente, me las arreglo para resolverlo eliminando la instalación de zend y eliminando / comentando la ruta de inclusión en los archivos bath php.ini en apache y cli. Para desarrollar un sitio con zend no necesitamos tener zend instalado. Insted podemos copiar la biblioteca a la carpeta de nuestro sitio
fuente
Para mí, me ayudó dividir las pruebas en varios lotes.
fuente
Puede resolver este problema redefiniendo las variables de entorno en PEAR. Así es como resolví el problema y usé Ubuntu 12.10
http://rkrants.blogspot.in/2013/01/installing-phpunitpear-in-ubuntu-1210.html
En resumen, define las rutas y luego reinstala phpunit
fuente
Ubuntu 12.04:
fuente
Tuve el mismo problema con Windows 8 Similar a la respuesta principal, necesitaba iniciar la línea de comando, sin embargo, asegúrese de ejecutar cmd.exe como administrador . Entonces los dos comandos
pear config-set auto_discover 1 pear install pear.phpunit.de/PHPUnit
fuente