TDD e Testes de Unidade: Testando de Forma Sustentável

Evento online
21 de outubro de 2017, 09h - 28 de outubro de 2017, 18h30

Compartilhar:

Inscrição

Lote 2 - Padrão
R$ 450,00
Inscrições até 20/10/2017
Encerrado
Lote 1 - Promocional
R$ 395,00
Inscrições até 16/10/2017
Encerrado

Descrição do evento

ATENÇÃO:

» É imprescindível que você informe um e-mail válido no momento da inscrição para que possa receber todas as informações necessárias para realização do workshop.

» Será utilizada a ferramenta GoToMeeting (gotomeeting.com) para a transmissão online AO VIVO, a qual permite interagir por texto e áudio.

» A transmissão será gravada e os vídeos ficarão disponíveis online para os alunos por um período de 30 dias.

Em caso de quaisquer dúvidas, entrar em contato pelo link ao final desta página.
____________________________

SOBRE

No cenário atual, é imprescindível para um bom profissional trabalhar com testes automatizados. Software bem testado é sinônimo de qualidade, pois reduz o risco de introdução de bugs na fase de desenvolvimento e após sua implantação.

Software bem testado é capaz de ser evoluído de forma mais ágil, pois os testes formam uma rede de segurança ao se alterar o código de produção.

Este workshop irá lhe apresentar os testes automatizados, por meio de seu tipo mais fundamental, os testes de unidade (unit tests), que formam a base de uma suíte de testes.

Você aprenderá a escrever código testável – fazendo uso da prática conhecida como Test-Driven Development (TDD), um dos pilares do Extreme Programming (XP) – e a manter seu código de teste com qualidade, aplicando técnicas de refactoring.

Todo o conteúdo é ilustrado com exemplos de código e serão demonstrados exercícios ao vivo (*) para reforçar vários conceitos (os alunos poderão fazer os exercícios acompanhando o instrutor).

(*) a princípio, são 5 exercícios, mas o número poderá variar de acordo com o andamento da turma.

EXPERIÊNCIA

  • Experiência prática em projetos reais com TDD e Testes de Unidade desde 2010.
  • Testes de unidade no backend com C#/NUnit/MSTest/XUnit.Net e no frontend com Javascript/Typescript/Jasmine, com pequena familiaridade com testes em Ruby e Python.
  • Fui um dos primeiros do Mato Grosso do Sul a falar sobre TDD no evento Maré de Agilidade – Edição Pantanal, realizado em Campo Grande, em 2011.
  • Currículo: www.linkedin.com/in/robsoncastilho

PÚBLICO-ALVO

Desenvolvedores de qualquer linguagem e em qualquer nível de experiência que queiram iniciar com TDD ou aperfeiçoar a escrita de seus testes para trazer maior qualidade para seu código e evoluir como profissional.

Embora não obrigatório, profissionais com melhor entendimento de princípios básicos de Orientação a Objetos poderão assimilar melhor determinadas práticas.

CONTEÚDO

Automação de Testes
– Por que escrever testes?
– Custos com automação de testes
– Características de bons testes
– Estrutura de um teste e conceitos básicos
– Pirâmide de testes
– O que é um “teste de unidade”?
– Tipos de ferramentas

Test-Driven Development
– O que é TDD
– Ciclo do TDD
– Pontos positivos
– Erros comuns
– TDD e sua relação com o design de classes
Alguns problemas de design
– Padrões do TDD

Refactoring
– O que é refactoring
– O que são code smells

Test Doubles
– O que são test doubles e seus tipos
– Testes de estado e testes de interação
– Diferença entre mocks e stubs
– Usando um framework de mock

Refatorando código de teste
– Testes legíveis e robustos
– Exemplo de teste complexo e sua versão refatorada

Melhorando o setup dos testes
– Técnicas mais comuns
– Builders com interface fluente
– Evitando repetição/informação irrelevante com os builders
– Criando uma DSL com builders

Melhorando a verificação de resultados
– Técnicas mais comuns
– Igualdade em código de produção
– Igualdade em código de teste

Outras melhorias
– Classes de equivalência
– Testes parametrizáveis
– Organização das classes de teste

Testes em software legado
– A dificuldade de testar o legado
– Dicas gerais

Encerramento
– Revisando alguns princípios
– Referências de livros
– Outros conceitos relacionados

CARGA HORÁRIA

16 horas, divididas em 2 sábados de 8 horas.

NÚMERO DE VAGAS

15

TECNOLOGIA UTILIZADA

A linguagem utilizada nos exemplos é o C#, assim como todo o ferramental é da plataforma .Net. No entanto, os conceitos apresentados podem ser assimilados perfeitamente por programadores de qualquer linguagem.

Ficaram dúvidas? Fique à vontade para entrar em contato pelo link abaixo ou pelo e-mail falecom@robsoncastilho.com.br

Sobre o produtor

Robson Castilho

Comentários

Login

Esqueceu sua senha? Clique aqui.

Recuperar senha

Confira seu e-mail

O endereço indicado receberá um e-mail com instruções de como criar uma nova senha.

Criar conta

Ao me cadastrar, concordo com os Termos de uso e Política de privacidade da Sympla

Confira seu e-mail

Acesse seu e-mail e clique no link de confirmação.