SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
MVP ShowCast 2013
ATDD para times .NETcom Specflow e Coded UI Test
Alan Correa Morais
Visual Studio ALM
ALM Consultant – BR Soluções Integradas
@alancmorais
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Agenda
♦Testes Ágeis
♦Especificação por Exemplos
♦Especificação x Testes
♦ATDD, BDD, SBE
♦Processo
♦Ferramentas
♦Demo
♦Discussões
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Livros
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Manifesto Ágil
♦Indivíduos e interação entre eles mais que processos e ferramentas
♦Software em funcionamento mais que documentação abrangente
♦Colaboração com o cliente mais que negociação de contratos
♦Responder a mudanças mais que seguir um plano
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Scrum
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Testes Ágeis
♦Agile testing é um prática de teste de software que segue os princípios do desenvolvimento ágil
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Tester em um time Ágil
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Crise da Documentação de software
♦Para que criar uma especificação de requisitos em WORD de 150 páginas se ninguém lê e antes de terminar de ser escrita ela já obsoleta?
♦Fábricas de software e clientes usam a especificação de requisitos para se protegerem
♦Em desenvolvimento ágil não se documenta nada?! E quando eu precisar explicar um regra de negócio para alguém que não é desenvolvedor?!
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Especificação por Exemplos
♦Documentação viva: A documentação deixa de ser um arquivoestático e passa a estar ligado com o código fonte e o código fonte a ela. Uma alteração no código impacta na documentação e a documentação no código
♦Colaboração: Clientes, Times, Testers podem colaborar para discutir a regra de negócio do sistema, conversando em uma mesma linguagem
♦Test first: Utilizar especificação por exemplos facilita o processo de orientar o desenvolvimento a testes. A própria especificação podeser o caso de testes.
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
“Exemplo” de especificação por exemplos
♦DADO que estou no cadastro de Matriz
♦E clico no botão novo
♦E preencho o CNPJ com 12345678901234
♦E preencho a Razao Social com “Cliente Teste”
♦QUANDO Clico no botão salvar
♦ENTÃO Recebo a mensagem “Registro salvo com Sucesso”
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Siglas
♦ATDD: Acceptance Driven Development (desenvolvimento orientado à testes de aceitação)
♦TDD: Test Driven Development (desenvolvimento orientado à testes)
♦BDD: Behavior Driven Development (orientado a comportamento). Abstração do TDD e do ATDD.
♦SBE: Specification By Example
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Processo
Criar a UserHistory
Detalhar os cenários da User History
Automatizar Testes
Funcionais
TDD
Build!!! (Integração Contínua)
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Processo
Criar a UserHistory
Detalhar os cenários da User History
Automatizar Testes
Funcionais
TDD
Build!!! (Integração Contínua)
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Ferramentas
♦SpecFlow
♦Mspec
♦NSpec
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Ferramentas – Automatização de Testes Funcionais
♦Coded UI Test: Automatização de aplicações Web e Desktop Windows (WinForms, WPF, Win32 ...)
♦Watir (Open Source): Automatização de Testes Web
♦Selenium (Open Source): Automatização de Testes Web
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
SpecFlow + Coded UI Test
♦Possibilidade de integração que permite utilizar ATDD para testes funcionais automatizados de aplicativos Web e Desktop tudo integrado no Visual Studio 2010, 2012 ou 2013
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Demo
SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT
© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.
Perguntas & Respostas