Closed dbourdette closed 12 years ago
Je m'excuse pour cet enorme commit ! mais je retrouve plus le .gitignore !!
Voici ce que j'ai fait :
git rm -r .settings
git rm -r target-eclipse
git add .gitignore
git commit -m "removed .settings and target-eclipse"
puis
git rm .classpath
git commit -m "removed .classpath"
Vous risquez donc de ne plus avoir votre projet eclipse au prochain pull. Ce ne devrait pas être trop grave.
On peut voir ce que j'ai fait dans l'historique
> git log
commit 0598fad928788c241c5a180b298e316d611685ff
Author: damien bourdette <dbourdette@gmail.com>
Date: Sat Oct 6 19:25:50 2012 +0200
removed .classpath
commit 49a26539f85fe47b0a6515bbe1332228ecd7e94e
Author: damien bourdette <dbourdette@gmail.com>
Date: Sat Oct 6 19:24:47 2012 +0200
removed .settings and target-eclipse
commit d545da90ccc620cb6adc4f08d9a10a95acc8c70c
Author: boutayna <boutayna@ubuntu.(none)>
Date: Sat Oct 6 17:24:10 2012 +0200
use the plugin geb and add a test for home page to check action and recommandation (ticket #14)
commit 9ea2c6c735b560f403b1d1f6d6791aede5000e0a
Author: Thomas Brien <thomas.brien@centrale-marseille.fr>
Date: Fri Oct 5 13:40:31 2012 +0200
add a class SubRecommendationFacade to prepare unplug the legacy facade (start #13)
A ce propos, vous devriez changer votre nom et email pour les commit git.
Maintenant afin de voir les différences utiles, je peux faire
> git diff 0598fad9287 9ea2c6c735b
Cela permet de voir les différences entre l'état après mon dernier commit et l'état apres le commit de thomas.
Je regarderai ca un peu plus tard.
J'ai corrigé BuildConfig.groovy en applicant ce que je vois dans la doc de Geb.
Pour la version de selenium, il faut prendre la dernière disponible sur le repository central
C'est en partie la que grails va chercher les dépendances (mavenCentral() dans BuildConfig.groovy)
Est ce que cela règle le problème d'import ?
Cela semble pas mal.
Chez moi, les tests ne se lancent pas au travers de mon IDE. Du coup la ligne de commande est :
grails test-app functional:
Reste donc le dernier test à faire.
Une remarque aussi sur viewAllButton de HomePage :
class : "btn btn-warning pull-right"
La règle est un peu compliquée et repose sur des éléments qui peuvent facilement bouger. Il serait sans doute préférable d'utiliser un classe supplémentaire ou un id (viewActions ?) ajouté spécifiquement pour ce besoin. Il y a sans doute même d'autres techniques plus adaptées.
Je suis bloquée à ce niveau là !
Pas facile de tester l'affichage de données dynamiques.
J'ai essayé de mon coté de tester l'apparition d'une chaine de caractères. C'est un peu court mais suffisant pour le moment.
Les 3 tests passent.
Par contre, il ne passent pas sous firefox. Pas trop le temps de regarder pourquoi.
Le but de ce ticket était de vous montrer qu'il est possible et peu compliqué de tester une interface web de façon automatique. Nous reviendrons sur ces tests pu plus tard. Si le résultat vous semble bon, on peut fermer ce ticket.
Au passage, on peut noter que les sélecteurs de geb sont très proches des sélecteurs de jquery qui sont eux mêmes inspirés des sélecteurs css w3c.
C'est une mécanique très puissante et malgré tout simple. Reste à avoir un arbre dom exploitable.
La librairie Geb (une parmi d'autres) permet d'écrire des tests en se plaçant derrière un navigateur.
Les détails sur l'intégration avec grails sont sur la doc de Geb
On utilise plutôt geb-junit4.
A faire :
On pourra ainsi facilement rajouter des tests par la suite.