BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Receitas de Desenvolvimento Orientado a Estórias com Cucumber

Receitas de Desenvolvimento Orientado a Estórias com Cucumber

A popularidade do Behavior Driven Development (BDD) não pode ser negada. É uma resposta ao Test Driven Development (TDD) e foi introduzido por Dan North em 2003. BDD encoraja a colaboração entre as várias partes envolvidas em um projeto de software: desenvolvedores, QA e analistas não técnicos ou de negócio.

A fácil criação e uso de DSLs em Ruby permitiu o nacimento do muitos frameworks BDD, tais como RSpec. O Cucumber, escrito por Aslak Hellesøy é um outro exemplo, que pode também ser usado para testar código Java, .NET e Flex. Ele pode ser executar documentos de texto puro como testes funcionais automatizados.

Aqui está um típico cenário de exemplo (do Wiki do projeto):

Feature: Search courses
  In order to ensure better utilization of courses
  Potential students should be able to search for courses

  Scenario: Search by topic
    Given there are 240 courses where neither has the topic "biology"
    And there are 3 courses A,B,C that each have "biology" as one of the topics
    When I search for "biology"
    Then I should see a the following courses:
      | title |
      | A     |
      | B     |
      | C     |

Então você pode implementar código que esta receita descreve e iterar como falhas do teste até obter sucesso. O Cucumber suporta o destaque de partes que falhas ou de sucesso do cenário (Imagem do website do Cucumber):

Tests failure

O formato usado para escrever receitas Cucumber é a linguagem Gherkin, que pode ser adaptada a diferentes lingauges naturais, como por exemplo, palavras chave como "Given", "And", etc podem também ser escritas em linguagens como Francês, Português, Alemão, etc. O texto da linguagem natural à direita das palavras chaves é interpretado por uma definição programática, por exemplo, executa código para realizar este passo.

Há muitos usos diferentes para o Cucumber tais como testes de integração de aplicações Web para sysadmins ou para integrar sistemas distribuídos e testar messageria ou testes de escrita de PDF.

A versão 0.1.16 do Cucumber está disponível como um Ruby Gem e a 0.1.99.10 está disponível no GitHub.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT