TDD e Testes de Unidade: Testando de Forma Sustentável - Sympla
Fale com o produtor: Robson Castilho
TDD e Testes de Unidade: Testando de Forma Sustentável
21 de outubro de 2017, 09h - 28 de outubro de 2017, 18h30
Lote 2 - Padrã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.
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 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
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.
– 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
– O que é TDD
– Ciclo do TDD
– TDD e sua relação com o design de classes
– Alguns problemas de design
– Padrões do TDD
– O que é refactoring
– O que são code smells
– 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
– Igualdade em código de produção
– Igualdade em código de teste
– Classes de equivalência
– Testes parametrizáveis
– Organização das classes de teste
Testes em software legado
– A dificuldade de testar o legado
– Revisando alguns princípios
– Referências de livros
– Outros conceitos relacionados
16 horas, divididas em 2 sábados de 8 horas.
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