21 out - 2017 • 09:00 > 28 out - 2017 • 18:30
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
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
Selecione o evento desejado e toque no botão acessar evento
Pronto! O link de acesso também será enviado para você por email.
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.