Todo o desenvolvedor Ruby precisa saber testar suas aplicações. Ruby é, sem dúvida, uma das linguagens mais produtivas que existem e, quando aliada ao poderoso framework Rails, nos permite criar aplicações complexas de forma muito rápida. Porém, é preciso garantir que essas aplicações continuem de fácil manutenção com o passar do tempo e que tenhamos um código de qualidade. Por isso, é primordial que qualquer rubista saiba testar suas aplicações.
*O Cucumber e o RSpec fornecem ao desenvolvedor as ferramentas necessárias para criar uma aplicação robusta e bem testada, onde você pode seguir tanto o TDD como o BDD. Neste livro, Hugo Baraúna, experiente desenvolvedor Ruby, ensina como você pode criar suas aplicações Ruby de forma testável e sem complicações.
1 - Visão geral sobre TDD
1.1 - TDD e sua história
1.2 - E por qual motivo eu deveria usar TDD?
2 - Primeiros passos com RSpec e Cucumber
2.1 - Olá RSpec
2.2 - Olá Cucumber
2.3 - O que é BDD?
3 - Introdução ao básico do RSpec
3.1 - Aprendendo a estrutura básica de um teste com RSpec
3.2 - Por que existem tantos matchers no RSpec
3.3 - Conhecendo os RSpec built-in matchers
3.4 - Custom matchers
3.5 - Entendendo o protocolo interno de matcher do RSpec
3.6 - Pontos-chave deste capítulo
4 - Organização, refatoração e reuso de testes com o RSpec
4.1 - Reduzindo duplicação com hooks do RSpec
4.2 - DRY versus clareza nos testes
4.3 - After hook
4.4 - Around hook
4.5 - Organizando seus testes
4.6 - Reuso de testes
4.7 - Pontos-chave deste capítulo
5 - Mocks e stubs
5.1 - Por que preciso de mocks?
5.2 - Conhecendo o conceito de test doubles
5.3 - Usando stubs com RSpec
5.4 - Escrevendo mock expectations com RSpec
5.5 - Quando usar mock e quando usar stub
5.6 - Usando o método double para fazer testes isolados
5.7 - Pontos-chave deste capítulo
6 - Conhecendo o Cucumber
6.1 - Por que usar cucumber?
6.2 - Cucumber como estímulo de conversa sobre os requisitos
6.3 - Cucumber: especificação e testes juntos!
6.4 - Cucumber para construir uma documentação viva
6.5 - Visão geral de cucumber
6.6 - Pontos-chave deste capítulo
7 - Especificando funcionalidades com Cucumber
7.1 - Instalando e fazendo setup do Cucumber
7.2 - Estrutura de uma feature com cucumber
7.3 - Escrevendo um cenário
7.4 - Escrevendo cenários expressivos com Cucumber
7.5 - Pontos-chave deste capítulo
8 - Automatizando especificações com cucumber
8.1 - Escrevendo os primeiros step definitions
8.2 - Escrevendo step definitions para cenários expressivos
8.3 - Support code
8.4 - Cucumber World
8.5 - Usando Cucumber hooks
8.6 - Pontos-chave deste capítulo
9 - Boas práticas no uso de Cucumber
9.1 - Use e abuse das descrições da funcionalidade e dos cenários
9.2 - Evite detalhes desnecessários
9.3 - Cenários imperativos VS cenários declarativos
9.4 - Organizando os arquivos da minha especificação executável
9.5 - Pontos-chave deste capítulo
10 - BDD na prática, começando um projeto com BDD
10.1 - Definindo o escopo da nossa aplicação: Jogo da Forca
10.2 - Especificando uma funcionalidade com Cucumber
10.3 - Usando RSpec no nosso primeiro teste
10.4 - Usando Aruba para testar uma aplicação CLI
10.5 - Reutilizando step definitions de um modo melhor
10.6 - Pontos-chave deste capítulo
11 - Começando o segundo cenário
11.1 - Definindo o segundo cenário
11.2 - Reduza duplicação através de support code
11.3 - Implementando o fluxo do jogo no binário
11.4 - Modificando nosso cenário para receber o feedback correto
11.5 - Usando subject e let do RSpec para evitar duplicação nos testes
11.6 - Refatorando o código para poder implementar o segundo cenário
11.7 - Extraindo uma classe através de refatoração
11.8 - Possibilitando ao jogador terminar o jogo no meio
11.9 - Pontos-chave deste capítulo
12 - Finalizando a primeira funcionalidade
12.1 - Deixando o segundo cenário no verde
12.2 - Finalizando a primeira funcionalidade
12.3 - Pontos-chave deste capítulo
13 - Refatorando nosso código
13.1 - Identificado os pontos a serem refatorados
13.2 - Extraindo uma classe de um método privado
13.3 - Distribuindo responsabilidades para outras classes
13.4 - Pontos-chave deste capítulo
14 - Especificando a segunda funcionalidade
14.1 - Documentando especificação e critério de aceite com Cucumber
14.2 - Definindo o teste de aceitação do primeiro cenário
14.3 - Melhore a testabilidade do seu software
14.4 - Pontos-chave deste capítulo
15 - Finalizando a segunda funcionalidade
15.1 - Refatorando nosso jogo para ter uma máquina de estados
15.2 - Refatorando o fluxo do jogo para usar a máquina de estados
15.3 - Organizando seus testes otimizando para leitura
15.4 - Interface discovery utilizando test doubles
15.5 - Finalizando a funcionalidade Adivinhar letra
15.6 - Pontos-chave deste capítulo
16 - Finalizando nosso jogo
16.1 - Especificando o fim do jogo
16.2 - Jogador vence o jogo
16.3 - Jogador perde o jogo
16.4 - Próximos passos
Título: Cucumber e RSpec: Construa aplicações Ruby com testes e especificações
Nome do Autor: Hugo Baraúna
Gênero: Informática e/ou Técnicos
Ano de Lançamento: 2013
Editora: Casa do Código
Nº de Páginas/Horas: 412
Tamanho: 1.3 Mb´s
Formato: PDF
Idioma: Português