atdd para times .net com specflow e coded ui test [mvp showcast 2013 - dev - gerenciamento de...

18
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 .NET com Specflow e Coded UI Test Alan Correa Morais Visual Studio ALM ALM Consultant – BR Soluções Integradas @alancmorais

Upload: mvp-showcast

Post on 01-Dec-2014

1.838 views

Category:

Technology


0 download

DESCRIPTION

Palestra: ATDD para times .NET com Specflow e Coded UI Test Palestrante: Alan Correa Morais Realização: 25/11/2013 17h Trilha: Gerenciamento de projetos & Application Lifecycle Management Sessão: Desenvolvimento Evento: MVP ShowCast 2013 Site: http://mvpshowcast.azurewebsites.net

TRANSCRIPT

Page 1: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 2: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 3: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Livros

Page 4: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 5: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Scrum

Page 6: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 7: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 8: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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?!

Page 9: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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.

Page 10: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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”

Page 11: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 12: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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)

Page 13: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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)

Page 14: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 15: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 16: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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

Page 17: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

SESSÃO: DESENVOLVIMENTO TRILHA: GERENCIAMENTO DE PROJETOS & APPLICATION LIFECYCLE MANAGEMENT

© 2013, MVP ShowCast. Evento organizado por MVPs do Brasil com apoio da Microsoft.

Demo

Page 18: ATDD para times .NET com Specflow e Coded UI Test [MVP ShowCast 2013 - DEV - Gerenciamento de projetos & Application Lifecycle Management]

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