Cette formation couvre la majorité des méthodes dont vous avez besoin pour tester efficacement le code d'un "vrai" projet. L'objectif est de devenir opérationnel sur nos projets du quotidien.
Le participant à cette formation aura acquis des bases solides pour travailler en TDD, et en particulier :
Cette formation vise les développeurs confirmés ayant une bonne maîtrise d’au moins un langage de programmation (orienté objet ou fonctionnel), en terme de syntaxe, environnement de travail (nous pouvons vous aider sur Java, JS/TS, C#, PHP et Python).
La formation contient une part importante de pratique. Les sessions sont réalisées avec un maximum de 10 personnes (6 en remote), pour nous permettre d’adapter le déroulement de la formation et de contextualiser les exercices, en fonction des participants et de leurs spécificités, tout en garantissant l'acquisition des compétences visées par la formation.
Les participants devront être équipés d’un PC (non fourni) et avoir installé Git et leurs IDEs dans leurs dernières versions.
En début de formation, une autoévaluation est effectuée pour évaluer le niveau, ainsi que les attentes de chaque participant. Ainsi nous pouvons organiser au mieux les différents groupes de travail.
Par la suite, le formateur effectue une évaluation continue à l'aide des nombreux exercices pratiques.
En fin de formation, la progression et les acquis sont autoévalués par chacun des participants. Le formateur fournit à chacun des participants une évaluation, ainsi que les axes d'amélioration.
En option, un accompagnement postformation peut être effectué. Cela fera l'objet d'un devis complémentaire.
Commençons par la base de la pratique.
Comment ne pas tout changer les tests quand il y a des nouvelles fonctionnalités? C'est quoi un test bien écrit, lisible?
Apprendre à manipuler un framework de mocks pour tester avec dépendances et tester des méthodes "void".
Bonnes pratiques de mocking et les pièges du mocking
Architecturer pour la testabilité et la production. Etablir une stratégie des tests pour rester performant avec les tests.
Présentation de l'architecture hexagonale.
Une première séance de développement, puis discussion des problématiques rencontrés et élaboration d'une stratégie de testabilité. Suivi de la mise en épreuve de la stratégie, y compris:
Johan Martinsson est un développeur freelance qui se passionne entre autres pour le design du code. Avec 20 ans d’expérience professionnel, il a passé les 11 dernières années à aider des équipes de maîtriser le développement accompagné de tests dans de multiples langages. Les entreprises apprécient particulièrement sa capacité à exploiter les synergies entre besoin business et approche qualité dans le code.
Régulièrement il trouve des (bonnes) excuses pour aller montrer un peu de code dans des conférences en France et à l'international. Johan est un serial-kata creator, ayant crée de nombreux katas pour s'entraîner.
Johan est instigateur ou co-organisateur de nombreux cercles et évènements communautaires, tels que des coding dojo, meetups craftsmanship, code-retreats, les rencontres européennes SoftDevGang, Agile Grenoble, Snowcamp et le tout dernier AlpesCraft.
Nicolas a toujours aimé les systèmes (engrenages, mécanique) et les casse-têtes. Il est tombé dans l'informatique depuis qu'il compose des commandes avec Linux. Assembler des commandes, des objets, des composants, des pipelines, c'est comme jouer aux Légo pour lui !
Aujourd'hui, il fait de ses activités de conseil et d'accompagnement en édition de logiciels son coeur de métier. Ses interventions en audits, conceptions de solution, et accompagnements, vont du code du logiciel lui-même à l'organisation des équipes qui produisent ce code, en passant par leurs outils de travail.
Il ne se limite pas au management ou au pilotage de la mise en oeuvre. Il contribue en montrant l'exemple comme un mentor ou un responsable technique.
Eric est développeur depuis 2003, après une formation d'ingénieur à Centrale Lille. Après un début de carrière en société de services informatique, il est passé indépendant en 2016.
Spécialisé sur la plateforme Java et l'écosystème Spring / Tanzu, il intervient pour ses clients en audit / conseil, en tant que formateur et en tant que développeur / expert / lead technique / architecte technique, mais également en tant que Scrum Master ou Coach Agile/Craft.
Eric a notamment animé plusieurs cursus de formation longue de reconversion au métier de développeur lors desquels il s'est fait une priorité de transmettre les bonnes pratiques du métier de développeur, méthodes pédagogiques orientées vers l'apprentissage par la pratique qu'il applique sur les formations HackYourJob.
Il a également par le passé donné des formations en entreprises au travers d'autres organismes de formation et partage régulièrement ses connaissances (BBL, Webinaire, conférence, etc.).