Correr tests automáticos

Hola buen día! Estoy empezando a investigar como funcionan los test automatizados en guaraní para poder luego aplicarlos a nuestras personalizaciones. Revisando el código, vi que ya existen varios creados y me propuse a correrlos de la siguiente manera

toba test automaticos -p guarani

Al ejecutar lo anterior, el resultado fue el siguiente error:


PHP Strict standards:  Non-static method guarani_db_nucleo::consultar_fila() should not be called statically, assuming $this from incompatible context in /srv/guarani_3.10/php/nucleo/administracion/parametros/co_parametros.php on line 423
PHP Stack trace:
PHP   1. {main}() /srv/guarani_3.10/lib/toba/php/consola/run.php:0
PHP   2. consola->run() /srv/guarani_3.10/lib/toba/php/consola/run.php:32
PHP   3. consola->invocar_comando() /srv/guarani_3.10/lib/toba/php/consola/consola.php:51
PHP   4. comando->procesar() /srv/guarani_3.10/lib/toba/php/consola/consola.php:74
PHP   5. comando->ejecutar_opcion() /srv/guarani_3.10/lib/toba/php/consola/comando.php:54
PHP   6. comando_test->opcion__automaticos() /srv/guarani_3.10/lib/toba/php/consola/comando.php:60
PHP   7. toba_nucleo->iniciar_contexto_desde_consola() /srv/guarani_3.10/lib/toba/php/consola/comandos/comando_test.php:43
PHP   8. toba_nucleo->iniciar_contexto_ejecucion() /srv/guarani_3.10/lib/toba/php/nucleo/toba_nucleo.php:207
PHP   9. contexto_ejecucion->conf__inicial() /srv/guarani_3.10/lib/toba/php/nucleo/toba_nucleo.php:302
PHP  10. co_parametros->get_version_app_base() /srv/guarani_3.10/php/extension_toba/contexto_ejecucion.php:21
PHP Fatal error:  Cannot make static method toba_test::get_descripcion() non static in class test_guarani in /srv/guarani_3.10/php/testing/test_guarani.php on line 7
PHP Stack trace:
PHP   1. {main}() /srv/guarani_3.10/lib/toba/php/consola/run.php:0
PHP   2. consola->run() /srv/guarani_3.10/lib/toba/php/consola/run.php:32
PHP   3. consola->invocar_comando() /srv/guarani_3.10/lib/toba/php/consola/consola.php:51
PHP   4. comando->procesar() /srv/guarani_3.10/lib/toba/php/consola/consola.php:74
PHP   5. comando->ejecutar_opcion() /srv/guarani_3.10/lib/toba/php/consola/comando.php:54
PHP   6. comando_test->opcion__automaticos() /srv/guarani_3.10/lib/toba/php/consola/comando.php:60
PHP   7. toba_test_lista_casos::get_casos() /srv/guarani_3.10/lib/toba/php/consola/comandos/comando_test.php:73
PHP   8. require_once() /srv/guarani_3.10/lib/toba/php/modelo/lib/testing_unitario/toba_test_lista_casos.php:103
PHP   9. include() /srv/guarani_3.10/php/testing/test_toba.php:2

Todo indicaría que es un error por la versión de PHP. Guaraní sugiere en sus requisitos usar PHP 5.4 o superior.
He probado con 5.4 y con 5.5, obteniendo los mismos resultados.
Estoy haciendo las pruebas en un guarani 3.10.0.
Gracias!

Hola

Podes hacer que el php pase por alto los E_STRICT.
Pero es bueno que lo marquen para que se vaya corrigiendo.
No hay otra forma gratuita de detectarlo que esa.

Emilio

Hola, qué tal? No me preocupa demasiado el warning de strict standars, pegué todo porque fue el output que me tiró. Lo que no me deja seguir es el fatal error que tira después. Saludos!

En guaraní parece solucionarse sacandole el static a la función get_descripcion en lib/toba/php/modelo/lib/testing_unitario/toba_test.php
No sé si esto entraría en conflicto con los tests creados para otros proyectos de Toba. Saludos

Hola Pablo:

   Los test que estás intentando correr, fueron desarrollados para una versión previa y quedaron desactualizados, los iremos actualizando para próximas versiones. Lo que si hay, son unos test que se desarrollaron recientemente, que tienen que ver con el testing de APIs REST. El testeo automatizado se basa en la librería PHPUnit. Para correr estos tests se deben ejecutar por medio de un archivo de configuración como sigue:

<PATH DE LA APLICACION>$ phpunit -c php/testing/php/php-unit.xml

Espero sea de utilidad
Saludos
Sergio