27 mai - 2017 • 09:00 > 10 jun - 2017 • 18:30
27 mai - 2017 • 09:00 > 10 jun - 2017 • 18:30
(ATENÇÃO: Caso queira efetuar o pagamento à vista, faça a inscrição por e-mail e ganhe R$ 50,00 de desconto: falecom@robsoncastilho.com.br)
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, com enfoque nos testes de unidade (unit tests), que formam a base de uma boa 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 boas práticas e técnicas de refactoring.
Todo o conteúdo é ilustrado com exemplos de código e serão realizados 5 labs práticos * para reforçar vários conceitos.
(*) poderão ser oferecidos labs extras, de acordo com o andamento da turma.
EXPERIÊNCIA
PÚBLICO-ALVO
Programadores, arquitetos e testers, em qualquer nível de experiência. Não é preciso ter experiência prévia com os temas abordados.
CONTEÚDO
Dia 1 – Fundamentos
– Por que escrever testes?
– Pirâmide de testes
– O que são testes de unidade
– O que é uma “unidade”
– Características de bons testes de unidade
– Testes de unidade: ferramental essencial
– O que é TDD e seu ciclo de execução
– TDD – Pontos positivos e erros comuns
– O que é refactoring
– O que são code smells
– Testes de estado e testes de interação
– O que são test doubles
– Diferenças entre mocks e stubs
– Usando um framework de mocking
– TDD e sua relação com o design de classes (encapsulamento, coesão e acoplamento)
Dia 2 – Melhores práticas
– Padrões do TDD
– Classes de equivalência
– Por que cuidar da suíte de testes
– Escrevendo testes legíveis e robustos
– DRY (Don’t Repeat Yourself) x DAMP (Descriptive And Meaningful Phrases)
– Melhorando o setup/arrange dos testes com Builders
– Uma DSL (Domain Specific Language) para os testes
– Melhorando o assert dos testes com comparação de objetos
– Comparação de igualdade em código de produção x código de teste
– Testes de unidade e código legado
DATAS
27/05 e 10/06, das 09:00 às 18:30 (total: 16hrs)
NÚMERO DE VAGAS: 8
TECNOLOGIA UTILIZADA
A linguagem base dos exemplos é o C# (e o ferramental correspondente no .Net). No entanto, os conceitos apresentados podem ser assimilados perfeitamente por programadores de qualquer linguagem. (Os labs, inclusive, poderão ser implementados com a linguagem de sua preferência.)
PRÉ-REQUISITOS
Levar notebook com ambiente de desenvolvimento devidamente configurado para realização dos labs (em caso de dúvidas, entre em contato: falecom@robsoncastilho.com.br).
Rua da Paz, 17 Jardim dos Estados
Campo Grande, MS
Robson Castilho
Os dados sensíveis são criptografados e não serão salvos em nossos servidores.
Acessa a nossa Central de Ajuda Sympla ou Fale com o produtor.