Formation Tests avec Ruby on Rails

Ecrivez des tests RSpec lisibles, maintenables et rapides pour vos applications Ruby on Rails

Formation Tests avec Ruby on Rails

En 1994, Kent Beck jetait les bases du premier framework de tests unitaires. 10 ans plus tard, un jeune danois surnommé "DHH" partageait Ruby on Rails, dont chaque application contenait un mystérieux répertoire nommé "tests". Nous sommes en 2012, la culture des tests dans la Communauté Rails s'est enracinée et les projets open-source sans tests ne sont pas pris au sérieux. La plupart des projets utilisent le framework de tests RSpec, écrit et maintenu par des vétérans des Communautés Agile et ruby.

A la fin de cette journée de formation, vous serez à même de tester avec RSpec votre application Rails sous toutes les coutures: librairies, modèles, tests d'intégration, mocks, mailers, routes, contrôleurs et helpers.

Des prérequis d'une ou deux années de programmation en Ruby et Ruby on Rails ainsi qu'une connaissance des bases de données sont conseillés. Vous serez régulièrement invité à mettre en pratique les concepts enseignés grâce à des exercices tout au long de la formation.

Les objectifs

  • Ecrire des Tests lisibles, maintenables et rapides
  • Apprendre à utiliser et configurer le framework de tests RSpec
  • Etre capable d'identifier les classes et couches applicatives à tester en priorité
  • Connaître les principes du Développement Piloté par les Tests (TDD en anglais)

Pré-requis

  • Developpement avec Ruby et Ruby on Rails
  • Ordinateur portable à apporter

Le programme de la formation Tests avec Ruby on Rails

Jour 1

  • Introduction aux tests
    • Comprendre la valeur des Tests Unitaires et pourquoi en écrire
    • Connaître la différence entre Tests Unitaires et Tests d'Acceptance (cucumber)
  • Introduction au Framework de Tests RSpec
    • Apprendre les qualités d’un bon Test Unitaire
    • Configurer les "Hooks" (before, after) pour chaque suite de tests et/ou test
    • Apprendre les assertions d'égalité: equal, eql, eq
    • Apprendre les assertions raise_error
    • Découvrir le sucre syntaxique de RSpec
  • Découverte du Développement Piloté par les Tests (TDD)
  • Boite à outils
    • Speeder l'exécution de tests avec Zeus
    • Automatiser l'exécution de tests avec Guard
    • Vérifier la couverture de tests avec SimpleCov
  • Tester les librairies (lib)
  • Tester les Modèles
    • Configurer usetransactionalfixtures
    • Construire des données de test avec FactoryGirl
    • Garder une DB de tests "clean" avec DatabaseCleaner
    • Tester la logique métier de votre application
    • Tester les named scope et finders

Jour 2

  • Tests d'intégration avec capybara
    • Tester les Pages sans javascript avec le driver rack_test
    • Tester votre application web 2.0 Ajax avec le driver webkit
    • Déboguer avec capybara
  • Introduction aux Mocks objects avec rspec-mock
    • Comprendre la différence entre "Stubs", "Mocks" et "Test Doubles"
    • Stubber un service de géo-localisation
    • Stubber les dates et heures
    • Stubber avec FactoryGirl
    • Vérifier le comportement d'une dépendance de la classe testée avec les Mocks
  • Tester les Mailers avec email_spec
  • Tester les routes
  • Tester les Controlleurs
  • Tester les Helpers

Le programme complet de la formation Tests avec Ruby on Rails au format PDF

Le(s) formateur(s)

formateur Ingénieur développeur Ruby, Jean-Michel possède 10 ans d'expériences en Tests Unitaires et 7 ans en TDD.
Il a donné de nombreuses conférences sur le sujet : Conferencia Rails 2006 (Madrid), XP Days France 2008, Continous Integration and Testing conference Amsterdam 2008, Paris on Rails 2007 et 2008 ainsi que Ruby Camp Lyon 2009 et 2010.

5 témoignages

I asked Jean-Michel to train me as I wanted to improve my programming skills regarding RSpec and Test Driven approaches in Ruby. His workshop was rich and covered a lot of relevant topics. More importantly, it gaves us the necessary tools to pursue our own training.

( 5 / 5 )

Excellente formation, très humaine et chaleureuse. Un formateur et des collègues sympas, une ambiance comme à la maison ! On en ressort en ayant appris beaucoup et passé un très bon moment. Très fortement conseillé

( 5 / 5 )

Formation très intéressante dans une ambiance détendue ! Suivre une formation dans un canapé avec un formateur en chausson, c'est seulement chez Human Coders !

( 5 / 5 )

On s'amuse et on code, c'est presque comme le week-end

( 5 / 5 )

Excellente formation, dans une ambiance chaleureuse. On discute, on échange, on apprend, et on repart avec plein de choses en tête qu'on a hâte d'appliquer.

( 5 / 5 )