Outils de développement: Difference between revisions

Jump to navigation Jump to search
Line 54: Line 54:


= [[File:Computer.png]] Optionnel =
= [[File:Computer.png]] Optionnel =
 
Vous pouvez aussi installe des composants optionnels pour avoir le support de technologies suplémentaires.
== Si vous gérez d'autres projets sous SVN ==
Voir la page [[Outils de développement - Composants optionnels]].
* Installation du plugin SVN pour Eclipse: SubClipse.
Pour cela, utiliser la procédure '''Find And Install''' et ajouter l'URL de mise à jour:
 
http://subclipse.tigris.org/install.html
 
ou bien
* Installation du plugin SVN pour Eclipse: Subversive
http://community.polarion.com/projects/subversive/download/eclipse/2.0/ganymede-site/ - [required] Subversive SVN Connectors
 
http://community.polarion.com/projects/subversive/download/integrations/ganymede-site/ - [optional] Subversive Integrations
 
== Si vous désirez faire des scripts en Perl ==
* Installation du plugin Eclipse pour Perl: EPIC
Pour cela, utiliser la procédure '''Find And Install''' et ajouter l'URL de mise à jour: http://e-p-i-c.sourceforge.net/updates
 
== Si vous désirez développer des modules avec le générateur UML2Dolibarr ==
 
Une méthode pour générer un module fonctionnel depuis l'UML est en cours de mise au point.
Plus d'informations sur la page [[UML2Dolibarr - Générer un module par MDA]].
Pour l'utiliser, vous devez installer les composants suivants (si vous avez installé la version d'Eclipse recommandé plus haut, tout ceci est déjà fait):
 
* Installation de TopCased 1.4 ou +: http://www.topcased.org
 
* Installation d'acceleo 2.2.1 ou +: Pour cela, utiliser la procédure '''Find And Install''' et ajouter l'URL de mise à jour: http://www.acceleo.org/update/
 
* Installation d'UML2Dolibarr
Pour cela, récupérer les projets par la commande:
<source lang="bash">
svn checkout svn://svn.forge.objectweb.org/svnroot/acceleo/trunk/modules/community/uml21/dolibarr/trunk/
</source>
et les importer dans Eclipse.
 
== Si vous êtes sous Windows ==
 
* Notepad++ (pour ceux qui ne supportent pas java ou utilisent un vieux coucou trop faible pour Eclipse).
 
* WinMerge (pour la comparaison de fichiers ou répertoires)
 
* CygWin (pour la commande patch si vous préferez les lignes de commandes)
 
A noter que Netbeans-PHP fonctionne efficacement avec Dolibarr.
 
== Si vous désirez faire du debuggage pas à pas ou du tunning (XDebug) ==
 
* Pour ajouter des infos de tuning page sur la barre d'état du navigateur, ajouter la variable d'environnement DOL_TUNING à 1 dans Apache. Pour cela, inclure la ligne suivante dans votre fichier apache.conf:
<source lang="ini">
SetEnv DOL_TUNING 1
</source>
Enuite, vérifier que votre navigateur n'a pas d'option pour bloquer la modification de la barre de tache par le javasscript.
 
* Pour du tuning à la ligne de code près, installer XDebug:
=== [[File:Logo_windows.png|24px]] In Windows ===
* Télécharger le fichier dll '''php_debug_xxx.dll''' sur http://www.xdebug.org et stocker le dans le répertoire /ext de php. Ensuite activer le plugin.
 
* Modifier le ficiher php.ini ou xdebug.ini pour ajouter le paramètres suivant:
<source lang="ini">
[xdebug]
xdebug.remote_enable=on
xdebug.remote_handle=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.show_local_vars=off
xdebug.profiler_output_dir=c:/temp
xdebug.profiler_append=0
xdebug.profiler_enable=0
xdebug.profiler_enable_trigger=1
</source>
 
=== [[File:Logo_ubuntu.png|24px]] In Ubuntu / Linux ===
* Installer le package '''php-xdebug''':
<source lang="bash">
sudo apt-get install php5-xdebug
</source>
 
* Modifier xdebug.ini pour ajouter les parmètres suivants après les lignes de type zend_extension=xxx (ou similaire):
<source lang="ini">
; With xdebug 2.1 and more
xdebug.remote_enable=on
xdebug.remote_handle=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.show_local_vars=off
xdebug.profiler_output_dir=/var/tmp
xdebug.profiler_append=0
xdebug.profiler_enable=0
xdebug.profiler_enable_trigger=1
; Add also this for xdebug 2.2 and more
xdebug.show_mem_delta=1
xdebug.trace_output_dir=/var/tmp
xdebug.auto_trace=0
xdebug.trace_enable_trigger=1
</source>
 
=== [[File:Eclipsephp.jpg|24px]] Eclipse configuration ===
* Ouvrir Eclipse. Dans Window->Preferences->General->Web Browser, sélectionner navigateur externe, et choisir le navigateur par défaut de votre système.
 
* Aller dans la rubrique Window->Preferences->PHP->Debug, et positionner les options PHP Debugger à XDebug. Remarquer que la case “Stop a la première ligne” sur cette page doit également être active. Vous pourrez la modifier plus tard.
 
* Après avoir validé les changements, aller dans la vue PHP Debug prespective, puis aller dans le menu Debug Configurations… Ici, vérifier que le Server Debugger est positionné à XDebug, et que votre server PHP pointe sur http://localhost/ ou le chemin approprié au serveur. La zone de localisation des fichiers doit de plus pointer sur le fichier à débugger, relativement à votre workspace. Ce chemin doit être quelquechose comme /dolibarr/htdocs/index.php.
 
* Vérifiez la section URL pour voir si elle pointe correctement – si non, vérifier que la case “Auto-Generate” est bien décochée, et entrer manuellement le bon chemin. Appliquer les changement et fermer la fenêtre de dialogue.
 
* Vous devriez maintenant être prêt pour lancer du debug de Dolibarr. Cliquer sur Run->Debug ou F11 pour activer le debug, Eclipse devrait basculer sur la vue Debug, et la page devrait commencer à se charger dans le navigateur externe. Si la case “Break at First Line” a bien été cochée précédemment, alors le programme aura stoppé à la première ligne. Vous pouvez alors faire du pas à pas sur les lignes de code successives en utilisant les boutons de la barre de Debug d'Eclipse. Eventuellement, vous pouvez placer des point d'arrêts à différents endroits du code pour y stopper l'exécution du code.
 
 
Ensuite pour analyser les fichiers de profiling générés par XDebug, il faut appeler l'url avec XDEBUG_PROFILE=1 pour générer le fichier profiling puis installer KCacheGrind (Linux) ou WinCacheGrind (Windows) pour l'analyser.
 
== Pour développer ou utiliser les contrôles Qualité (PHPUnit, PHPCodeSniffer, PHPCpd, PHPDepends) ==
=== Depuis Eclipse ===
La meilleure méthode est d'installer les PHP Tools integration (PTI) pour Eclipse, en utilisant l'URL suivante via l'interface d'installation de plugins Eclipse:
 
http://www.phpsrc.org/eclipse/pti/
 
En faisant cela, l'installation et l'exécution de tests PHPUnit ou des autres outils est directement intégré à votre Eclipse.
 
Modifier la configuration dans Eclipse (Windows-Preferences-PHPTools-PHPCodeSniffer) pour ajouter un répertoire de standard vers '''dev/codesniffer'''.
 
Modifier la configuration dans Eclipse (Windows-Preferences-PHPTools-PHPUnit) comme sur la copie écran suivante (cliquer pour zoomer):
 
[[File:Eclipse setup PHPUnit.png|100px]]
 
Si vous n'installez pas PTI, il faut réaliser une installation et exécution en manuel en ligne de commande.
 
=== En ligne de commande manuelle ===
==== Installer PHPUnit ====
* Télécharger l'archive de la version sur http://pear.phpunit.de/get/ et dézipper le contenu dans un répertoire inclus dans le paramètre include_path de votre fichier de configuration php.ini.
* Préparer le script phpunit:
** Sur Linux: Renommer le script phpunit.php script en phpunit et remplacer la chaine @php_bin@ dans ce fichier avec le chemin complet de la ligne de commande de l'interpréteur PHP (en général /usr/bin/php).
** Sur Windows: Remplacer la chaine @php_bin@ dans le fichier phpunit.bat avec le chemin complet de la ligne de commande de l'interpréteur PHP et remplacer la chaine @bin_dir@ avec le répertoire de PHPUnit.
** Modifier votre PATH pour inclure le répertoire contenant phpunit.
** Donner les permissions de s'exécuter (chmod +x phpunit sur Linux).
* Préparer le script PHPUnit/Util/PHP.php:
** Remplacer la chaine @php_bin@ dans ce fichier avec le chemin complet de la ligne de commande de l'interpréteur PHP (en général /usr/bin/php).
* Le module xdebug est également requis si vous voulez faire du reporting de couverture de tests.
 
==== Exécuter les tests PHPUnit ====
* Aller dans le répertoire '''/test''' des sources. Reportez vous au fichier '''README''' pour connaitre la procédure pour lancer une campagne de tests.
 
==== Installer les autres outils ====
* Référez vous à la documentation des différents outils (PHPCodeSniffer, PHPCpd, PHPDepends) pour leur installation et utilisation en ligne de commande.
 
== Pour développer ou utiliser les tests Selenium ==
=== Depuis Firefox ===
==== Installer le plugin pour Firefox Selenium IDE ====
* Télécharger le fichier du plugin Selenium IDE pour Firefox.
* L'ajouter dans Outils - Modules complémentaires de Firefox.
 
==== Exécuter les tests Selenium ====
* Aller dans le menu Outils - Selinum IDE de firefox.
* Ouvrir le fichier de tests xml
* Executer le test.
 
== Pour générer la documentation Doxygen ==
* Installer Doxygen disponible sur http://www.doxygen.org (ou par le package doxygen sous Ubuntu).
* Installer le plugin Eclipse en ajoutant l'url source http://download.gna.org/eclox/update/ dans l'outil de mise à jour Eclipse puis configurer Eclipse pour indiquer l'emplacement de Doxygen (Window-Preferences-Doxygen).

Navigation menu