Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] [Résolu] Utilisation PHPUnit

Posted by Baelrog on 01/24/2012 11:40

Bonjour !

Pour mon premier message sur ce forum, un "merci" est de rigueur pour le travail fournit sur ce framework !

Pour mon problème: J'ai un soucis avec la version 1.3.1 de Jelix pour utiliser les tests unitaires. J'ai correctement installé phpunit, mais en voulant tenter un essai, j'ai des erreurs sur jConfigCompiler.class.php. J'ai bien placé, dans un dossier tests/ d'un de mes modules une classe en *.pu.php. Du coup, j'envoie un petit >php runtest.php --all-modules, et la c'est le drame, tout se passe comme si le module contenant les tests n'était pas installé.

J'ai tenté un "enableTests = on" dans la config ou un "enableAllModules = on" (suite à la lecture du contenu de jConfigCompiler) mais rien n'y fait. La seule solution pour que ça fonctionne est de dupliquer, dans le fichier installer.ini.php, la configuration pour mon entrypoint [index] sous un autre entrypoint [runtests].

Et donc, ma question, ai-je raté quelque chose ?

Merci d'avance !

  [Opened] Utilisation PHPUnit

Reply #1 Posted by foxmask on 01/24/2012 14:18

Bonjour,

si tout le chapitre de PHPUnit a été suivi comme indiqué ici je ne vois rien qui cloche dans ce qui a été fait là. Donc un oubli double ; dans la doc et dans le code pour ajouter le point d'entrée au fichier de config installer.ini.php

Pour ma part je ferai bien un ticket sur developer.jelix.org (si vous disposez d'un compte) ou sur github.com/jelix/jelix qui explique tout cela.


@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

  [Opened] Re: Utilisation PHPUnit

Reply #2 Posted by Baelrog on 01/24/2012 14:38

Je fais des essais sur l'intégration de tests unitaires sur une application initialement en 1.1. Vu que la migration 1.1 => 1.2 était trop bordélique, j'ai intégré petit à petit mes modules dans une application 1.3 vierge (donc en utilisant un createapp).

Du coup, il fallait peut-être déclarer le point d'entrée runtests.php avant de faire les install de modules pour que ça se fasse automatiquement, d'où ma question pour savoir si j'avais oublié un truc.

Voici l'exception que j'obtenais en lançant un >php runtests.php --all-modules : PHP Fatal error: Uncaught exception 'Exception' with message 'Error in config files, loadClasses: my_module is not a valid or activated module' in /home/www/jelix1.3.1/jelix/core/jConfigCompiler.class.php:169

  [Opened] Re: Utilisation PHPUnit

Reply #3 Posted by foxmask on 01/24/2012 15:44

si la migration a bien été faite ; ca "sent" un bug.


@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

  [Opened] Re: Utilisation PHPUnit

Reply #4 Posted by Baelrog on 01/24/2012 16:11

Vu que Jelix semble considérer le runtests.php comme un point d'entrée "normal" pour gérer ses accès aux modules, je pense qu'il y a bien un soucis la dessus.

En tout cas, merci de tes réponses et bonne journée :)

  [Opened] Re: Utilisation PHPUnit

Reply #5 Posted by foxmask on 01/24/2012 16:24

Oui c'est bien en cela que je proposais d'ouvrir ticket ;)


@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

  [Opened] Utilisation PHPUnit

Reply #6 Posted by Baelrog on 01/24/2012 17:17

Ça marche, mais je n'ai pas encore de compte pour poster un ticket. Je posterais un ticket la dessus en même temps qu'une autre évolution sur la compilation des Dao.

Bye

  [Opened] [Résolu] Utilisation PHPUnit

Reply #7 Posted by laurentj on 01/26/2012 22:14

Bonjour,

Non, runtests n'est pas considéré comme un point d'entrée.

runtests utilise par défaut la configuration du point d'entrée index.php. et on peut indiquer à runtest en ligne de commande, le point d'entrée à utiliser. Si le module en question n'est pas installé ou activé pour le point d'entrée en question, c'est normal que qu'il y ait cette erreur.

Autrement dit : il faut que le module soit installé dans l'appli et pour le point d'entrée que l'on veut tester, pour pouvoir lancer des tests dessus.

 
Page
  1. [Résolu] Utilisation PHPUnit