• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
BDD com Cucumber, Selenium e Rails
 

BDD com Cucumber, Selenium e Rails

on

  • 3,773 views

Slides da palestra BDD on Rails no terceiro encontro XPCE

Slides da palestra BDD on Rails no terceiro encontro XPCE

Statistics

Views

Total Views
3,773
Views on SlideShare
2,887
Embed Views
886

Actions

Likes
1
Downloads
43
Comments
0

8 Embeds 886

http://www.xpce.org 697
http://www.milfont.org 148
http://coderwall.com 20
http://www.slideshare.net 16
http://translate.googleusercontent.com 2
http://www.fast-gate.co.cc 1
http://webcache.googleusercontent.com 1
http://www.infoblogs.com.br 1
More...

Accessibility

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Anos 80 - década Code-and-Fix. Ausência de metodologias de desenvolvimento. Programação procedural e estruturada. Evolução da programação linear. Programas são: sequência, decisão e iteração. Dificuldade de simular relações entre entidades em processos de negócios.
  • Contar história do analista pedreiro Critérios de aceitação devem ser executáveis UML fracassou em ser uma linguagem de modelagem por provocar um gap entre o modelo e a execução.
  • A story card with notes providing additional detail.
  • A story card with notes providing additional detail.
  • A story card with notes providing additional detail.
  • In a paper called “Simple Smalltalk Testing: With Patterns,”1 Kent Beck described how to write Object Tests using Smalltalk. This paper presented the evolution of a simple testing framework that became known as SUnit. Kent teamed up with Erich Gamma to port the framework to Java and called the result JUnit. Since 1999, Fearless programming
  • Three Rules of TDD Só escreve codigo depois de passar em todas as verificações possiveis
  • Arrange = Create an object Act = Invoke a method Assert = Check a result
  • Arrange = Create an object Act = Invoke a method Assert = Check a result
  • Arrange = Create an object Act = Invoke a method Assert = Check a result
  • Arrange = Create an object Act = Invoke a method Assert = Check a result

BDD com Cucumber, Selenium e Rails BDD com Cucumber, Selenium e Rails Presentation Transcript

  • BDD on Rails Cucumber, Selenium, Rspec e compahia Christiano Milfont Terceiro encontro 2009 Copyright 2009 Milfont.org
      • Christiano Milfont
      • http://www.milfont.org
    Palestrante
  • Release Plan
    • “ A good plan violently executed now is better than a perfect plan executed next week.”
    • “ Um bom plano executado violentamente agora é melhor que um plano perfeito executado na próxima semana.
    • General George S. Patton
  • Master Story List ID Criticidade Item Iteração Estimativa Restando 1 Altíssimo Registrar exercicio 1 2 0 2 Baixo Convidar amigos 1 8 ? 3 Baixo ? ? ? 4 Médio Aprovar parceiro 1 2 ? 5 Alto Controlar idade 1 4 0 6 Baixo Cadastrar status ? ? ? 7 Baixo Inserir fotos ? ? ? 8 baixo Cadastro treinador ? ? ?
    • User Story
        • Card [cartão]
        • Conversation [conversação]
        • Confirmation [confirmação]
    • “ Ron Jeffries, 2001”
    Behaviour Driven Development
  • Behaviour Driven Development Story Card 2 pontos Funcionalidade Atletas precisam registrar exercícios detalhes: Tipo de exercício, tempo de inicio, tempo de término e frequência cardíaca
  • Behaviour Driven Development Story Card 2 pontos Funcionalidade Atletas precisam registrar exercícios Propriedades Não obrigatórios: frequência cardíaca. Obrigatórios: tipo de exercício e período
  • Hands on
  • Test Driven Development
    • “ Desenvolvimento guiado por testes é um caminho de gerenciamento do medo durante a programação.”
    • Kent Beck - Test Driven
    • Development by Example
  • Test Driven Development
    • RED - GREEN - REFACTOR
    • Escreva um teste que não funciona.
    • Escreva o código e faço-o funcionar.
    • Refatore e elimine o código repetitivo.
  • Test Driven Development
    • O ritmo em 3 A’s
    • Arrange [Criar um objeto]
    • Act [Invocar um método]
    • Assert [Verificar o resultado]
    • Refactoring Workbook, Bill Wake
  • Test Driven Development
    • def idade(data)
    • idade_ano = (Date.today.year - data.year)
    • if Date.today.month > data.month
    • idade_ano
    • elsif Date.today.month == data.month && Date.today.day == data.day
    • idade_ano
    • elsif Date.today.month < data.month
    • idade_ano - 1
    • elsif Date.today.month == data.month && Date.today.day < data.day
    • idade_ano - 1
    • elsif Date.today.month == data.month && Date.today.day > data.day
    • idade_ano
    • end
    • end
    • Estágio 1 - Refactoring
  • Test Driven Development
    • def idade(data)
    • if data
    • idade_ano = (Date.today.year - data.year)
    • if Date.today.month > data.month ||
    • Date.today.month == data.month && Date.today.day > data.day ||
    • Date.today.month == data.month && Date.today.day == data.day
    • idade_ano
    • elsif Date.today.month < data.month ||
    • Date.today.month == data.month && Date.today.day < data.day
    • idade_ano - 1
    • end
    • end
    • end
    • Estágio 2 - Refactoring
  • Test Driven Development
    • def idade(data)
    • if data
    • idade_ano = (Date.today.year - data.year)
    • idade_ano = idade_ano - 1 if (Date.today.month <= data.month) &&
    • (Date.today.day < data.day)
    • idade_ano
    • end
    • end
    • Estágio 3 - Refactoring
  • http://www.xpce.org