Tests unitaires iOS en pratique avec John Sundell

Rejoignez John Sundell, créateur de Swift by Sundell, pour une formation d'une journée sur les tests unitaires.

Apprenez les principes fondamentaux du framework de tests unitaires d'Apple, XCTest, ainsi que de
nombreuses techniques pratiques pour refactoriser le code afin qu'il devienne testable, organiser les
suites de tests, rendre les tests robustes et faciles à maintenir, tester l'asynchrone et bien
plus encore.

L'objectif de cet atelier est de vous préparer à utiliser les tests unitaires lors de votre travail quotidien
de développement d'applications iOS. Il est principalement conçu pour les développeur·se·s ayant peu ou pas
d'expérience avec les tests unitaires et XCTest, et couvrira à la fois des techniques de base et avancées.

Notez que cet atelier ne tentera pas de vous convaincre de commencer à utiliser le « Test-Driven
Development » ou de changer complètement votre façon de travailler. Au lieu de cela, il se concentrera à
100% sur vous en donnant des conseils pratiques sur la façon dont vous pouvez commencer à tirer parti des
tests unitaires en tant qu'outil dans le cadre de nouveaux projets ou de projets existants.

Si vous aimez le site web, les podcasts et vidéos de Swift by Sundell, vous allez adorer cette formation !

Cette formation est organisée par Swift Paris Trainings (aka Greg Lhotellier) en partenariat avec
Delicious Insights.

Objectifs

La formation Tests unitaires iOS en pratique vise à permettre aux apprenant·e·s de :

  • mettre en place des tests unitaires à l'aide du framework XCTest d'Apple ;

  • écrire des suites de tests unitaires complètes et robustes, axées sur des cas d'utilisation spécifiques à iOS ;

  • rendre le code facile à tester et refactoriser le code existant dans cette optique ;

  • utiliser diverses techniques d'injection de dépendances pour configurer des environnements de test prévisibles ;

  • comprendre et exploiter le fonctionnement des mocks et le stubbing, et repérer quand ces techniques peuvent être utiles lors de la rédaction de tests ;

  • utiliser async/wait pour tester du code asynchrone ;

  • appliquer ces techniques pour tester unitairement le code lié à l'interface utilisateur.

Besoins matériels & logiciels

  • Disposer d'un ordinateur de performance suffisante, correctement configuré (notamment selon l’éventuel guide d’installation associé à la formation et indiqué au plus tard en convocation)
  • Cet ordinateur doit être équipé d'une webcam, d'un micro et d'une sortie audio
  • Disposer d'une connexion internet avec un débit minimal descendant/montant de 1Mbps, et idéalement au moins 5Mbps (tester ici)
  • Pouvoir exécuter Zoom, soit en tant que logiciel installé, soit via le client 100% web. Le bon fonctionnement du client installé peut être testé ici.
    Chaque apprenant·e doit par ailleurs utiliser :

  • Un Macbook capable d’exécuter les outils de développement Apple avec un niveau de performance raisonnable.

  • La dernière version de Xcode (hors bêta) installée.

Programme

Tour d’horizon

  • Présentation de XCTest, le framework de test unitaire intégré d'Apple

  • Objectifs de l'écriture de tests unitaires

  • Relations entre tests unitaires, tests d'intégration et tests d'interface utilisateur

Scénarios et tests individuels

  • Cycle de vie d’un scénario de test

  • Définition de tests unitaires individuels dans un scénario de test

  • Bonnes pratiques pour du code facile à tester

  • Refactorisation de code existant pour en faciliter les tests

Isoler nos tests unitaires

  • Injection de dépendances, mocks et stubbing

  • Définir des données de test

  • Simuler les appels réseau

Bonnes pratiques d’écriture de tests

  • Assertions pour nos tests

  • Rédiger des tests faciles à diagnostiquer en cas d'échec

  • Vérification des cas extrêmes, des corrections de bugs et du code de gestion des erreurs

Code asynchrone

  • Utiliser async/await pour des tests unitaires de code asynchrone

  • Autres mécanismes de concurrence

Tester l’interface utilisateur

  • Le problème du couplage aux vues et contrôleurs réels

  • Tester l'interface utilisateur en isolation

Moyens pédagogiques et techniques, suivi et appréciation

Les apprenant·e·s travaillent au long de la formation avec divers supports :

  • Projets Xcode d’exemple pour chaque exercice.

  • Slides et démonstrations en direct par John.

À l’issue de la formation, ils reçoivent une copie de l’ensemble des supports.

L’évaluation des acquis se fait en cours de formation, au moyen de la réussite des exercices interactifs.

Nous sommes désolés, aucune session n’est disponible pour cette formation

Tarifs indicatifs

Apprenant·e·s de la conventionTarif unitaire
1 à 2 personnes1 000 € HT
3 à 4 personnes850 € HT
À partir de 5 personnes700 € HT

Vous souhaitez une formation intra entreprise ou sur mesure ?

Pour une formation personnalisée, en accord avec vos besoins, dans vos locaux ou dans nos locaux.

Demander ma formation intra / sur mesure