/[openfoncier]/trunk/tests/README.txt
ViewVC logotype

Contents of /trunk/tests/README.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1694 - (show annotations)
Mon Apr 15 16:19:17 2013 UTC (11 years, 9 months ago) by fmichon
File MIME type: text/plain
File size: 2339 byte(s)
Suppression du fichier d'exemple

1 Tests fonctionnels
2 ==================
3
4 Installation
5 ------------
6
7 Pour l'enregistrement des tests depuis Firefox, les extensions suivantes doivent
8 être installées :
9
10 * Selenium IDE
11 * Selenium IDE : PHP Formatters
12
13 Pour rejouer les tests en mode autonome :
14
15 Depuis les dépôts
16 * phpunit
17 * phpunit-selenium
18
19 A installer manuellement
20 * Selenium-server : depuis www.seleniumhq.org
21 * copier le .jar dans /opt
22 * depuis /usr/local/bin : echo "java -jar /opt/selenium-server-standalone-X.X.X.jar" > selenium-server && chmod +x selenium-server
23
24
25 Utilisation
26 -----------
27
28 Enregistrer son test et l'exporter en php, ou étendre la classe BaseTestCase
29 depuis base.php.
30
31 Pour le rejouer :
32
33 * lancer selenium-server
34 * ajouter le fichier .php au bon endroit dans le fichier config.xml pour
35 qu'il soit jouer dans la suite
36 * executer : phpunit testMyUseCase.php
37
38 Lorsque qu'on effectue des actions redondantes, les rajouter dans le fichier base.php.
39
40 Pour jouer la suite il suffit de lancer : ::
41
42 phpunit -c config.xml
43
44
45 Convention de nommage
46 ---------------------
47
48 * Un ficher par ticket fonctionnel, une méthode par fonctionnalité
49 * Convention de nommage :
50 * des fichiers : testMonCasDutilisation.php
51 * des classes : MonCasDutilisation
52
53
54
55 API
56 ---
57
58 La structure des tests respecte l'API de PHPUnit (setUp, testMyMethod1, testMyMethod2, [...], tearDown).
59
60
61 Bonnes pratiques (à compléter au fur et à mesure)
62 -------------------------------------------------
63
64 * Privilégier le $this->clickAndWait plutôt qu'un $this->click puis un $this->waitPageToLoad('nnn')
65 * Pour simuler un clic sur un lien dont la valeur est unique dans la page : $this->clickAndWait("link=Mon lien")
66 * Pour simuler un clic sur un bouton (input) : $this->clickAndWait("//input[@value='Modifier']")
67 * Si la commande $this->type() ne fonctionne pas sur un champ, il faut verifier le maxlenght et le size de l'input. Si les attributs sont à -1, utiliser les function setMax et setTaille de la class pour changer les valeurs.
68 * Pour tester l'attribut d'un élèment : $this->verifyAttribute('//Mon élèment[@attribut pour reconnaitre="valeur attr"]@Attribut à tester', 'valeur de l'attribut à tester);
69 par exemple tester l'attribut type de l'input d'id=pwd : $this->verifyAttribute('//input[@id="pwd"]@type', 'hidden');
70
71

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26