Outils de développement: Difference between revisions
| Line 125: | Line 125: | ||
* Pour du tuning à la ligne de code près, installer XDebug: | * Pour du tuning à la ligne de code près, installer XDebug: | ||
{{ToTranslate}} | {{ToTranslate}} | ||
=== [[File:Logo_windows.png]] In Windows === | === [[File:Logo_windows.png|24px]] In Windows === | ||
* Download dll file '''php_debug_xxx.dll''' on http://www.xdebug.org and store it in directory /ext of php. Then enable plugin. | * Download dll file '''php_debug_xxx.dll''' on http://www.xdebug.org and store it in directory /ext of php. Then enable plugin. | ||
| Line 141: | Line 141: | ||
</source> | </source> | ||
=== [[File:Logo_ubuntu.png]] In Ubuntu / Linux === | === [[File:Logo_ubuntu.png|24px]] In Ubuntu / Linux === | ||
* Install package '''php-xdebug''': | * Install package '''php-xdebug''': | ||
<source lang="bash"> | <source lang="bash"> | ||
| Line 159: | Line 159: | ||
</source> | </source> | ||
=== [[File:Eclipsephp.jpg]] Eclipse configuration === | === [[File:Eclipsephp.jpg|24px]] Eclipse configuration === | ||
* Open Eclipse. In Window->Preferences->General->Web Browser, select external web browser, and set it to Default system web browser. | * Open Eclipse. In Window->Preferences->General->Web Browser, select external web browser, and set it to Default system web browser. | ||
Revision as of 11:02, 4 December 2010
Tout environnement de développement peut être utilisé. Toutefois voici une liste d'outils fortement recommandés pour leur complétude, leur qualité et la productivité du développement qu'ils apportent. Ils sont utilisés par la plupart des développeurs principaux de Dolibarr. Notons que toutes ces solutions sont gratuites et OpenSource.
Pour tout développeur
Voici le socle de travail recommandé, toutefois tout outil respectant les standards Web, PHP, Mysql peuvent faire l'affaire.
Un serveur AMP
- Apache, Mysql et PHP
Sur Linux: Ces 3 produits sont disponibles dans toutes distributions.
Sur Windows: Installez WampServer 2 (base Mysql, Apache et PHP tout clé en main). Ce serveur WAMP offre le trio MySql+Apache+PHP, avec possibilité de basculer de version pour n'importe lequel de ces composants d'un simple clic).
Firefox et plugins
- Firefox avec les plugins:
- Firebug + Firecookie,
- HTML Validator,
- Phplangeditor et les Dictionnaires des langues si vous compter traduire
- User agent switcher pour simuler des accès depuis un smartphone
- Selenium IDE
- Cert Viewer Plus si vous comptez faire des tests en HTTPS,
- FoxyProxy si vous voulez basculer rapidement votre navigateur vers des utilitaires Proxy (WebScarab)...
A télécharger depuis le site http://www.firefox.com
SquirrelSQL
- SquirrelSQL pour l'administration de base
A télécharger depuis le site http://squirrel-sql.sf.net
Eclipse et plugins
Installation d'Eclipse
Nous recommandons la version suivante d'Eclipse:
Sinon toute version disponible sur le site Eclipse fait l'affaire.
Installation du plugin Eclipse pour PHP: PDT.
Si vous avez installé la version Eclipse ci-dessus, il suffit d'utiliser la procédure Help -> Install new software -> Add -> Archive pour installer le package complémentaire:
https://download.eclipse.org/releases/xxx - xxx = version
Or from the GUI of any Eclipse =>Install New Software =>Work With Kepler => Wait until list display =>General Purpose Tools Check PHP development tools (PDT)=>Install
Configurer Eclipse pour récupérer la version CVS
Une fois qu'Eclipse est installé, vous pouvez vous connecter au repository CVS pour y récupérer la dernière version de développement.
- Créer un nouveau projet : File >> New >> Projects puis sélectionner "Project from CVS" et "Next"
- Sélectionner "Create a new repository location" puis "Next"
- Remplir la fenêtre suivante comme ceci :
- Ensuite remplir le champ Use specified module name : dolibarr ou dolibarrmod pour le modules externes
- Choisir ensuite le nom que le projet aura sur votre machine :
- Cocher Check out as a projet in the workspace
- Project Name : dolibarr ou dolibarrmod pour le modules externes
- Cocher Checkout subfolders
- Ensuite, laisser le chemin par défaut du workspace et "Next"
- Enfin, sélectionner la branche à charger
- HEAD est la version de développement
- Les versions 2.6, 2.7, etc., se trouvent dans Branches
- Cliquer sur "Finish"
Les fichiers devraient être téléchargés sur votre disque dur.
Pour ensuite mettre à jour la version de votre machine, il faut passer en perspective "Team Synchronizing" pour utiliser la fonction "Synchronize CVS", ce qui aura pour effet de télécharger les dernières versions sur votre disque dur. Seuls les fichiers qui ont été modifiés sont téléchargés.
Optionnel
Si vous gérez d'autres projets sous SVN
- 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:
svn checkout svn://svn.forge.objectweb.org/svnroot/acceleo/trunk/modules/community/uml21/dolibarr/trunk/
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 et la commande en ligne cvs si vous préferez les lignes de commandes)
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:
SetEnv DOL_TUNING 1
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:
In Windows
- Download dll file php_debug_xxx.dll on http://www.xdebug.org and store it in directory /ext of php. Then enable plugin.
- Modify php.ini file to add parameters:
[xdebug]
xdebug.remote_enable=on
xdebug.remote_handle=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.profiler_enable=1
xdebug.show_local_vars=off
xdebug.profiler_output_dir=c:/temp
xdebug.profiler_append=0
In Ubuntu / Linux
- Install package php-xdebug:
sudo apt-get install php5-xdebug
- Modify xdebug.ini to add parameters after the line zend_extension=xxx (or similar):
xdebug.remote_enable=on
xdebug.remote_handle=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.profiler_enable=1
xdebug.show_local_vars=off
xdebug.profiler_output_dir=/var/tmp
xdebug.profiler_append=0
Eclipse configuration
- Open Eclipse. In Window->Preferences->General->Web Browser, select external web browser, and set it to Default system web browser.
- Go into the debug section, by Window->Preferences->PHP->Debug, and set the PHP Debugger option to XDebug (by default this is set to the Zend Debugger). Note the chekbox “Break at first line” in this page as well – you can change this later on, as required.
- After you’ve applied your changes, go into the PHP Debug prespective, and go to menu Debug Configurations… Here, make sure the Server Debugger is set to XDebug, and that the PHP server points to http://localhost/ or an appropriate server location. The file section should point to the file to be debugged, relative to your workspace, the relative path maybe something /dolibarr/htdocs/index.php.
- Check the URL section to see whether it points to the correct location – if not, make sure you uncheck the “Auto-Generate” check box, and enter in the correct location. Apply the changes and close the dialog box.
- You should now be ready to debug Dolibarr. Click on Run->Debug or F11 to enable debugging, Eclipse should switch to the Debug View, and the page should start loading in your external browser. If “Break at First Line” checkbox was checked previously, then the program would have “stopped” at the first line. You can step into or step over subsequent lines using the controls on your top left corner. Alternatively, you can place breakpoints at various locations and stop code execution there as well.
- Ensuite pour analyser les fichiers de profiling générés par XDebug, vous pouvez installer KCacheGrind (Linux) ou WinCacheGrind (Windows).
Pour développer ou utiliser les tests PHPUnit
Depuis Eclipse
La meilleure méthode est d'installer les PHP Tools integration pour Eclipse:
http://www.phpsrc.org/eclipse/pti/
En faisant cela, l'installation et l'exécution de tests PHPUnit est directement intégré à votre Eclipse. Modifier la configuration dans Eclipse (Windows-Preferences-PHPTools-PHPUnit) comme sur la copie écran suivante (cliquer pour zoomer):
Sinon, 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 de la version CVS. Reportez vous au fichier README pour connaitre la procédure pour lancer une campagne de tests.
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).
Configuration repository CVS
Si vous êtes un développeur officiel avec accès CVS en écriture, ajouter dans la configuration CVS de votre Eclipse, une entrée CVS.
- :ext:yourlogin@cvs.savannah.nongnu.org:/cvsroot/dolibarr pour la version principale de Dolibarr
- :ext:yourlogin@cvs.savannah.nongnu.org:/cvsroot/dolibarrmod pour les modules externes
Sinon il vous faut récupérer les sources depuis le tarball disponible sur le site web Dolibarr ( http://www.dolibarr.fr ) dans l'espace téléchargement