INTRODUCTIONAUX
TESTS
AUTOMATISÉS:UI
TESTS
SQLI2019
1
SQLI2019
2
PRÉSENTATION
🙋
🏻♂️
William Désécot
Développeur iOS
SQLI2019
3
POURQUOI TESTER AUTOMATIQUEMENT SON APPLICATION ?
LES TYPES DE TESTS AUTOMATISÉS
LES UI TESTS EN IOS
COMMENT CONFIGURER UN PROJET POUR LES METTRE EN PLACE ?
ÉCRIRE LES TESTS
DÉMONSTRATION
SOMMAIRE
SQLI2019
4
PERMET DE VÉRIFIER LE BON FONCTIONNEMENT D’UNE APPLICATION
PERMET DE DÉTECTER LES BUGS
MOINS DE RISQUE DE RÉGRESSION
PLUS COÛTEUX AU DÉPART MAIS TRÈS RENTABLE SUR LE LONG TERME
• Moins de risque d’erreurs que les tests manuels
• Au fur et à mesure, couverture de test très large
• Gain de temps
• Plus de confiance
POURQUOI TESTER AUTOMATIQUEMENT
SON APPLICATION ?
SQLI2019
5
LES TYPES DE TESTS
AUTOMATISÉS
LES TESTS UNITAIRES
• S’exécute de manière indépendante
• Permet de vérifier le bon fonctionnement d’une méthode, d’une classe, d’une portion d’un programme
SQLI2019
6
LES TYPES DE TESTS
AUTOMATISÉSSNAPSHOT TESTING
• Permet de s’assurer que l’UI ne change pas
• Prend des snapshots d’une vue d’un écran et de la comparer avec un snapshot de référence. Si les deux images
ne sont pas les mêmes alors le test échoue.
• Vérifie au pixel prêt que l’écran n’a pas changé
• Librairie : iOSSnapshotTestCase
SQLI2019
7
PERMET DE TESTER L’INTERACTION DE L’UI
SIMULER L’UTILISATION DE L’APPLICATION PAR UN UTILISATEUR
PERMET DE VÉRIFIER QUE
• Tous les éléments d’un écran existent
• La navigation entre les écrans s’effectue correctement
• Les actions des éléments fonctionnent
APPLE INTÈGRE NATIVEMENT UN FRAMEWORK « XCTEST » QUI NOUS PERMET DE
TESTER NOTRE APPLICATION (DEPUIS XCODE 7)
SWIFT / OBJECTIVE-C
LES UI TESTS EN IOS
SQLI2019
8
COMMENT CONFIGURER UN PROJET
POUR METTRE EN PLACE LES UI TEST ?
CRÉER UNE TARGET DE UI
TEST
CRÉATION AUTOMATIQUE DU DOSSIER DE UI
TEST
SQLI2019
9
COMMENT CONFIGURER UN PROJET
POUR METTRE EN PLACE LES UI TEST ?
SQLI2019
10
ÉCRIRE LES TESTS
CONFIGURER LA MÉTHODE SETUP()
AJOUTER UNE FONCTION DE TEST
SQLI2019
11
ÉCRIRE LES TESTS
PLUSIEURS FAÇONS D’ÉCRIRE DES UI TESTS
• Utiliser le recorder
• Écrire à la main
• En s’aidant d’outil comme l’Accessibility Inspector
👨
🏻
SQLI2019
12
Recorder
SQLI2019
13
Accessibility Inspector
SQLI2019
14
UTILISATION DES MÉTHODES
XCTASSERT
ÉCRIRE LES TESTS
SUCCEEDED FAILED
SQLI2019
15
ÉCRIRE LES TESTS
INTERACTION AVEC LES VIEWS
SQLI2019
16
DÉMONSTRATION
SQLI2019
17
THANK
YOU
W W W.SQLI.COM
18

Cocoaheads introduction ui_tests

Notes de l'éditeur

  • #5 Couverture de tests = gage de qualité Gain de temps = Plus rapide que les tests manuels et peuvent être intégré à l’intégration continue pour lancer des tests à chaque push sur develop par exemple
  • #13 Bon exemple car le compiler nous indique des erreurs -> Pas parfait, refacto à faire On peut identifier les élements grâce à leur titre. Pas la solution la plus optimal, si on vient à changer le titre les tests vont échouer. Une autre solution -> Accessibility Identifier
  • #14 Accessibility -> À la base pour les aveugles puis mise en place pour les UI tests