Présentation
๏ Pierre-Yves JAIR
๏ Coach et Formateur technico Agile
๏ Développeur ... un peu quand même
๏ J’aime qu’un plan se déroule sans accroc
3
Tester une IHM ?
๏ Cahier de recette
๏ Coûts dédiés
๏ Coûts grandissant
๏ Tests régressions
๏ Tests nouveautés
๏ Lassant
5
Rappel ou pas ?
9
http://seleniumhq.org/
Selenium IDE Selenium RCRemote Control
Selenium Grid
API
Selenium WebDriver
API
15
selenium.open("/"); verifyTrue(selenium.isTextPresent("Agilité, Java EE, .NET et plus si affinités")); selenium.click("//ul[@id='navigation']/li[2]/a/span"); selenium.waitForPageToLoad("30000"); for (int second = 0;; second++) { if (second >= 60) fail("timeout"); try { if ("Créé en 2000, So@t s’impose progressivement dans le paysage de l’ingénierie et du conseil en informatique.".equals(selenium.getText("//div[@id='post-2']/div/p[2]"))) break; } catch (Exception e) {} Thread.sleep(1000); }
selenium.click("//ul[@id='navigation']/li[3]/ul/li/a/span"); selenium.waitForPageToLoad("30000"); selenium.click("css=a.fadeThis.sf-with-ul; span.title"); selenium.waitForPageToLoad("30000");
API & IDE
๏ Isolation des parties
๏Absence de communication
๏Avantages et Inconvénients
๏Utilisation
17
Fluidifier les relations
๏Pouvons-nous éviter des aller-retours inutiles ?
๏Créer une dynamique commune de test ?
21
Challenges
๏ Sécuriser au plus tôt les développements
๏Détecter au plus tôt la régression
๏Mise en place de tests adaptés
๏Création de tests rapides et simples
๏Tests robustes et génériques
22
Organisation
23
Validation automatique
Développement terminé
Mise en place d’un scénario
HTML
Partage des ressources
HTML JAVA / C# / ...
Selenium
Custom
Approche ATDD
25
Given I have selected adress areaWhen I select Country where i liveAnd select the zip codeThen define the differents street
Acceptance Test Driven Development
Remarque
๏ ... résistance au changement
๏Faire travailler les gens ensemble
๏Former les équipes
๏Une nouvelle philosophie de travail
28