Imersão BDD On Rails

O que vamos aprender? (por Lucas Húngaro)

Vamos entender as motivações que levaram ao desenvolvimento das técnicas do TDD e BDD, seus objetivos e personagens principais dessa história.

O entendimento das motivações e objetivos é extremamente importante para que possamos prosseguir e, então, iniciar o aprendizado do RSpec, primeiro de forma separada do Rails, passando pela sintaxe básica e avançando gradualmente pelas capacidades do framework, como a estrututação das especificações em contextos, criação de custom matchers e objetos dublês (como mocks e stubs).

Após isso passaremos para a integração do RSpec com o Rails e, então, para o tópico de Planejamento Ágil, envolvendo ferramentas de especificação em nível mais alto, como Cucumber, Selenium e Webrat.

Encerraremos o curso com dicas e truques, indicação de ferramentas adicionais (factory-girl, Machinist, FakeWeb, FakeFS etc) e uma perspectiva para o cenário de BDD no Rails 3.

Grade detalhada

  1. Introdução teórica
    1. História
    2. Filosofia
    3. Personagens
  2. RSpec
    1. Sintaxe e uso básico
    2. Matchers
    3. Setup/Teardown
    4. Especificações pendentes
    5. Estruturando especificações
    6. Custom Matchers
    7. Executando
    8. Mocks/Stubs
      1. Built-in
      2. Mocha
  1. RSpec on Rails
    1. Models
    2. Controllers
    3. Views
    4. Helpers
  2. Planejamento Ágil
    1. Cucumber
    2. Webrat
    3. Selenium
    4. Dicas e truques
    5. Perspectivas para o Rails 3
    6. Outras ferramentas