El conjunto de pruebas de OCI8 está en el directorio ext/oci8/tests. Después de ejecutar las pruebas de OCI8, este directorio también contendrá los registros de cualquier fallo.
Antes de ejecutar las pruebas de PHP, edite details.inc y establezca $user, $password y la cadena de conexión $dbase. El conjunto de pruebas de OCI8 ha sido desarrollado usando la cuenta SYSTEM. Algunas pruebas fallarán si el usuario de las mismas no tiene permisos equivalentes.
Si se está comprobando Oracle Database Resident Connection Pooling,
establezca $test_drcp a TRUE
y asegúrese de que
la cadena de conexión utiliza un servidor de la agrupación DRCP apropiado.
Una alternativa a editar details.inc es el establecimiento de variables de entorno, por ejemplo:
$ export PHP_OCI8_TEST_USER=system $ export PHP_OCI8_TEST_PASS=oracle $ export PHP_OCI8_TEST_DB=localhost/XE $ export PHP_OCI8_TEST_DRCP=FALSE
Lo siguiente es establecer cualquier entorno necesario para la base de datos de Oracle. Con Oracle 10gR2 XE, haga lo siguiente:
$ . /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
Con Oracle 11gR2 XE:
$ . /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh
Para otras versiones de la base de datos de Oracle, haga:
$ . /usr/local/bin/oraenv
Algunas shells requieren que php.ini contenga E en el parámetro variables_order, por ejemplo:
variables_order = "EGPCS"
Ejecute todas las pruebas de PHP con:
$ cd your_php_src_directory $ make test
$ cd your_php_src_directory $ make test TESTS=ext/oci8
Cuando hayan finalizado las pruebas, revise cualquier fallo. En sistemas lentos, algunas pruebas podrían tomar más tiempo que el tiempo de espera de prueba predeterminado de run-tests.php. Para corregir esto, establezca la variable de entorno TEST_TIMEOUT a un número mayor de segundos.
En máquinas rápidas con una base de datos local configurada para una carga ligera (p.ej. Oracle 11gR2 XE), algunas pruebas podrían ocasionar los errores ORA-12516 u ORA-12520. Para evitarlo, aumente el parámetro PROCESSES de la base de datos siguiendo estos pasos:
Conéctese como propietario del software de Oracle:
$ su - oracle
Establezca el entorno de Oracle necesario con oracle_env.sh u oraenv, tal como está descrito arriba.
Inicie la herramienta de línea de comandos SQL*Plus y aumente PROCESSES
$ sqlplus / as sysdba SQL> alter system set processes=100 scope=spfile
Reinicie la base de datos:
SQL> startup force