Apprendre la programmation concurrente avec Python
Processus et threads
Multithreading : introduction à la programmation multi-tâches
Présentation du module Threading
Instanciation et lancement de threads
Cycle de vie
Priorités
GIL : Global Interpreter Lock
Communication inter-processus, synchronisation
Notion de futures
Traitement asynchrone
Atelier : Implémenation de traitements en multi-threading
Comprendre le processus de tests
Métriques de qualité logicielle
Processus de test dans le cycle de vie d'un projet, types, apports
Pratiques XP (eXtreme Programming), Test Driven Development (TDD) et styles
Tests dans une gestion de projet agile
Refactoring de code
Fixtures, Qualités d'un code de test
Couverture de test
Langage Gherkin, génération de script avec Cucumber
Atelier : rédaction de tests dans un projet
Implémenter des tests unitaires avec unittest
Cas de test, suite de tests
Principe d'assertions
Test de retour des fonctions
Court-circuiter les effets de bord avec unittest.mock
Atelier : implémentation de tests unitaires avec unittest
Réaliser des tests d'IHM web
Frameworks de tests fonctionnels : Selenium vs autres
Envoi des requêtes HTTP
Extraction d'information à partir des données reçues
Parsing HTML, JSON
Atelier : Automatisation de tests avec Selenium