ERP en LOGICIEL LIBRE dédié aux PME-PMI

           Devenez partenaire Principal ou Majeur de Neogia

Ayez l'esprit Libre, partagez vos connaissances!!

Cet espace est communautaire et est basé sur les contributions de chacun. N'hésitez pas a créer de nouveaux documents en suivant les bonnes pratiques.

OFBiz-Neogia-selenium server


Contents

Présentation du Selenium server :

Le Selenium server est, comme son nom l'indique un serveur de test dédié à l'intégration continue d'OFBiz et de Neogia. Il est composé de quatres parties :

Chaque partie à son propre objectif décrit ci-dessous.

Organisation des répertoires du serveur

/var/www/selenium.neogia.org
 |
 |
 + ---- /commonAllSelenium
 |       |
 |       selenium-server.jar
 |       |
 |       +----/seleniumProfile
 |
 + ---- /ofbiz
 |       |
 |       startSeleniumProcess.sh
 |       |
 |       +----/ofbiz
 |       |
 |       +----/tests
 |       |
 |       +----/results
 |
 + ---- /ofbizAddon
 |       |
 |       startSeleniumProcess.sh
 |       |
 |       +----/ofbiz
 |       |
 |       +----/ofbizAddOn
 |       |
 |       +----/scripts
 |       |
 |       +----/tests
 |       |
 |       +----/results
 |
 + ---- /ofbizNeogia.stable
 |       |
 |       startSeleniumProcess.sh
 |       |
 |       +----/ofbizNeogia
 |       |
 |       +----/tests
 |       |
 |       +----/results
 |
 | ---- /junit
 |       |
 |       startProcess.sh
 |       |
 |       +----/results
 index.html
 startSeleniumSequence.sh


OFBiz

Le serveur effectue un test journalier sur la branche principale de développement du projet OFBiz. Ce test est composé de plusieurs seleniums.

Son objectif est de permettre de se rendre compte de l'occurrence d'un problème dans les modifications apportées au projet.

Ainsi un effet de bord causé par l'ajout d'une nouvelle fonctionnalité pourra être décelé, ainsi un travail de recherche pourra être mis en place afin de pouvoir, soit corriger le selenium si l'erreur apparue n'est pas un réel problème, soit soumettre et proposer une solution au problème sur la mailing-list des développeurs d'ofbiz : dev@ofbiz.apache.org

Il est bien sur possible de contribuer au projet par l'ajout de nouveaux tests Seleniums (méthode décrite plus loin)

Neogia

De la même manière qu'il fait des tests sur OFBiz, le serveur effectue un test journalier sur la branche principale de développement du projet Neogia.

Son objectif est le même que pour OFBiz sauf qu'il se destine au projet Neogia. Les propositions de corrections seront donc à poster sur la mailing list des développeur de Neogia : neogia-devel@lists.sourceforge.net

OFBizAddOn

Cette partie teste l'installation des différents Addons Neogia existants sur OFBiz. Ce test journalier permet de se rendre compte de problèmes de compatibilité entre OFBiz et les divers AddOn ceux-ci dus à l'évolution d'OFBiz

junit

Ce répertoire permet de réaliser les tests unitaires d'ofbiz.

Fonctionnement :

Les tests sont planifiés de façon journalière. Le serveur utilise des script shell afin de lancer l'exécution des tests Seleniums et afin de pouvoir analyser les résultats de ces tests.

Le serveur utilise aussi un script Python qui permet de mettre en place l'historique des tests ainsi qu'une fiche de synthèse qui présente les erreurs rencontrées et les tests fonctionnels.

Chaque jour, si une erreur est détectée, un mail est envoyé sur la mailing-list des développeurs Neogia donnant un lien sur le serveur http://selenium.neogia.org/.

On y retrouve donc la fiche de synthèse des tests ainsi que des liens vers les historiques de test.

Cas d'utilisation :

Correction d'une erreur sur un test existant

Si une erreur a été décelée, vous pouvez tenter de la corriger, pour cela il faut:

Maintenant vous avez tous les outils en main afin de débuter la correction d'erreur.

Dans un premier temps, il vous faut reproduire l'erreur afin de l'analyser. Pour cela :

Une fois l'erreur obtenue il vous reste à analyser le type d'erreur :

C'est une erreur qui ne se passe pas au niveau d'ofbiz (message d'erreur apparent), c'est une erreur qui se passe au niveau du selenium (vérification du titre échoue, ne trouve pas le bouton sur lequel cliquer ...)

Ce type d'erreur est le plus facile à corriger, c'est le plus souvent du à un changement de label, titre ou autre dans OFBiz. Il suffit donc de corriger le selenium afin qu'il puisse arriver à faire ce qu'il faisait avant le changement.

(TODO : expliquer le moyen de commiter les modifs / envoi sur la mailing list sinon)

Second type d'erreur, plus compliqué souvent. Un réel problème dans OFBiz a été repéré. Maintenant il faut récupérer le début du message d'erreur apparaissant dans la console où a été lancé OFBiz.

Ensuite pour corriger l'erreur tout dépends du problème, il faut donc analyser ce problème et tenter de le résoudre. Dans tout les cas il ne reste qu'à proposer une solution (ou simplement reporter le problème) en expliquant comment le reproduire et en joignant le message de Log sur la mailing liste associée au projet.

Création d'un nouveau test Selenium

TODO

installation en local

svn co http://svn.apache.org/repos/asf/ofbiz/trunk ofbiz
-#$JAVA $VMARGS -jar ofbiz.jar $* >>$OFBIZ_LOG 2>>$OFBIZ_LOG&
-exec "$JAVA" $VMARGS -jar ofbiz.jar "$@"
+$JAVA $VMARGS -jar ofbiz.jar $* >>$OFBIZ_LOG 2>>$OFBIZ_LOG&
+#exec "$JAVA" $VMARGS -jar ofbiz.jar "$@"
export DISPLAY=:1.