Search Header Logo
Introdução ao Test Driven

Introdução ao Test Driven

Assessment

Presentation

Biology

University

Practice Problem

Medium

Created by

Mardoqueu Sousa

Used 1+ times

FREE Resource

30 Slides • 14 Questions

1

Introdução ao Test Driven Development (TDD) com JUnit e Spring Boot

2

Sumário

1. Introdução ao Test Driven Development (TDD) com JUnit e Spring Boot

2. Definindo o Test Driven Development (TDD)

3. Benefícios do TDD

4. Princípios básicos do TDD

3

Sumário

5. Guia passo a passo para implementar o TDD usando JUnit e Spring Boot

Passo 1: Configure o ambiente de desenvolvimento

Passo 2: Escreva um teste com falha

Passo 3: Escreva o código de produção

Passo 4: Execute o teste novamente

Passo 5: Refatore o código

Passo 6: Escreva mais testes

4

Sumário

6. Usando TDD para melhorar a qualidade do código e reduzir o tempo e o custo do desenvolvimento de software

Passo 4: Implemente a funcionalidade

Passo 5: Refatore o código

Passo 6: Repita o processo

7. Benefícios do TDD

8. Conclusão

5

O que é TDD?

  • Abordagem de Desenvolvimento de software

  • Testes de unidade para o código antes do código de produção

6

Objetivo do Treinamento

Ensinar os princípios básicos do Test Driven Development (TDD) e como implementá-lo usando JUnit e Spring Boot, com foco no exemplo prático do sistema de gerenciamento de processos e rotinas jurídicas em escritórios de advocacia e departamentos jurídicos, O JusProcesso.

7

-Martin Fowler

"Testes automatizados são a espinha dorsal do desenvolvimento ágil, incluindo TDD. Eles são o auxílio mais rápido e efetivo que temos para melhorar a qualidade do soft"

8

Multiple Choice

Qual das opções abaixo descreve corretamente o TDD?

1

Uma abordagem de desenvolvimento de software que envolve escrever testes de unidade após escrever o código de produção.

2

Uma abordagem de desenvolvimento de software que envolve escrever testes de unidade antes de escrever o código de produção.

3

Uma abordagem de desenvolvimento de software que não envolve testes automatizados.

9

Ciclo de três passos

  1. Escrever um teste que falhe

  2. Escrever o código de produção mínimo para passar no teste

  3. Refatorar o código para melhorar a qualidade


10

Objetivo

O objetivo do TDD é produzir um código de alta qualidade que seja fácil de manter, escalável e livre de erros. Usando o TDD, os desenvolvedores podem detectar defeitos no início do processo de desenvolvimento e corrigi-los antes que eles se tornem um problema maior.

11

Benefícios do TDD

Maior cobertura de código - Como os desenvolvedores escrevem testes de unidade antes de escrever o código de produção, eles podem ter certeza de que todos os casos de teste são cobertos pelo código. Isso resulta em uma maior cobertura de código e menos erros.

12

Benefícios do TDD

Detecção precoce de defeitos - O TDD ajuda a detectar defeitos no início do processo de desenvolvimento, quando são mais fáceis e menos dispendiosos de corrigir.

13

Benefícios do TDD

Melhor qualidade do código - Como os desenvolvedores são obrigados a escrever testes de unidade para cada recurso, eles são incentivados a escrever um código mais limpo e organizado que é mais fácil de manter.

14

Benefícios do TDD

Redução do tempo e custo do desenvolvimento de software - O TDD ajuda a reduzir o tempo e o custo do desenvolvimento de software, pois os defeitos são detectados mais cedo e o código é de alta qualidade.

15

Multiple Choice

Qual dos benefícios abaixo NÃO é uma vantagem do TDD?

1

Maior cobertura de código

2

Detecção precoce de defeitos

3

Código menos organizado e mais difícil de manter

4

Melhor qualidade do código

16

Princípios básicos do TDD

Para aplicação de novas funcionalidades aplicaremos os seguintes principios

17

Princípios básicos do TDD

  • Escrever testes com falha antes de escrever qualquer código de produção - Os desenvolvedores devem escrever testes de unidade para cada recurso antes de escrever qualquer código de produção.

18

Princípios básicos do TDD

  • Refatoração - Após escrever o código de produção mínimo para passar no teste, os desenvolvedores devem refatorar o código para melhorar sua qualidade e garantir que ele seja fácil de manter.


19

Princípios básicos do TDD

  • Escrever testes para novos recursos - À medida que novos recursos são adicionados ao código, os desenvolvedores devem escrever testes de unidade para esses recursos para garantir que eles funcionem conforme o esperado e não afetem outros recursos.

20

Multiple Choice

Quais são os princípios básicos do TDD?

1

Escrever testes após escrever o código de produção, não refatorar o código e não escrever testes para novos recursos.

2

Escrever testes antes de escrever o código de produção, refatorar o código para melhorar sua qualidade e escrever testes para novos recursos.

3

Não escrever testes para novos recursos, não refatorar o código e escrever testes após escrever o código de produção.

21

TDD usando JUnit e Spring Boot

Guia passo a passo para implementar o TDD usando JUnit e Spring Boot

22

Fill in the Blank

Você já fez alguma implementação usando JUnit e Spring Boot?

23

Guia passo a passo

Passo 1: Configure o ambiente de desenvolvimento

Passo 2: Escreva um teste com falha

24

Guia passo a passo

Comece escrevendo um teste com falha para uma funcionalidade que ainda não existe. Vamos usar o exemplo do JusProcesso, que é um sistema de gerenciamento de processos e rotinas jurídicas em escritórios de advocacia e departamentos jurídicos. Suponha que precisamos implementar a funcionalidade de adicionar um novo processo. Aqui está um exemplo de como escrever um teste com falha para essa funcionalidade:

25

media

26

Multiple Choice

Qual será o output do teste acima?

1

Processo salvo com sucesso

2

Processo de teste

3

123456

4

Irá falhar

27

Guia passo a passo

Observe que estamos testando se o processo foi adicionado com sucesso verificando se podemos encontrar o processo pelo número. O teste irá falhar porque ainda não implementamos a funcionalidade de adicionar um novo processo.


28

Open Ended

Question image

Baseado na criação do teste para adicionar novos processos, implemente um teste para uma Biblioteca que precisa cadastar um livro que tenha o nome do livro e seu ISBN.

29

Guia passo a passo

Passo 3: Escreva o código de produção:

Agora que temos um teste com falha, podemos escrever o código de produção para atender aos requisitos do teste. Aqui está um exemplo de como implementar a funcionalidade de adicionar um novo processo no O JusProcesso:

30

Código de produção

media

31

Passo 4: Execute o teste novamente

Ao executar o teste, ele deve passar porque a funcionalidade de adicionar um novo processo foi implementada corretamente. Ao executar o teste, ele deve passar porque a funcionalidade de adicionar um novo processo foi implementada corretamente.

32

media

33

Passo 5: Refatore o código

  • Remova qualquer código duplicado

  • Divida o código em métodos menores e mais gerenciáveis

  • Use nomes descritivos para variáveis e métodos

  • Remova qualquer código morto ou desnecessário

34

Passo 6: Repita o processo

Com o primeiro teste implementado, é hora de repetir o processo para as outras funcionalidades do sistema. Escreva um novo teste para cada nova funcionalidade, execute-o e implemente a funcionalidade correspondente para fazê-lo passar. Lembre-se de sempre refatorar o código para garantir sua qualidade.

35

Perguntas de 20s

36

Multiple Choice

O que significa TDD?

1

Escrever testes após a implementação do código

2

Escrever testes antes da implementação do código

3

Fazer testes manuais antes da implementação do código

4

Escrever testes antes da implementação do código

37

Multiple Choice

O que é o desenvolvimento guiado por teste?

1

Um tipo de desenvolvimento que não envolve testes

2

Um tipo de desenvolvimento que enfatiza a escrita de testes antes da implementação do código

3

Um tipo de desenvolvimento que não utiliza testes automatizados

38

Multiple Choice

O que é um teste unitário?

1

Um teste que verifica a integração entre diferentes componentes do sistema

2

Um teste que verifica a funcionalidade do sistema como um todo

3

Um teste que verifica a usabilidade do sistema

4

Um teste que verifica a funcionalidade de um único componente do sistema

39

Multiple Choice

O que é o JUnit?

1

Uma ferramenta de gerenciamento de projetos

2

Um framework de testes unitários para Java

3

Um banco de dados relacional

4

Uma linguagem de programação

40

Multiple Choice

Como é feita a validação das informações no JUnit?

1

Utilizando métodos de assert

2

Utilizando comandos de console

3

Utilizando a interface gráfica do usuário

4

Uma linguagem de programaçãoUtilizando um editor de texto

41

Multiple Choice

Qual é a ideia principal do desenvolvimento guiado por teste?

1

Escrever os testes primeiro e, posteriormente, o código

2

Escrever o código primeiro e, posteriormente, os testes

3

Validar o código manualmente antes de escrever os testes

4

Escrever os testes apenas após a implementação completa do código

42

Multiple Choice

Como é definido o ciclo de repetições do TDD?

1

Primeiramente, o código é escrito e, posteriormente, os testes são elaborados e validados.

2

Os testes são elaborados antes da implementação e validação do código.

3

É produzido o código que possa ser validado pelo teste e, em seguida, é refatorado para um código sob padrões aceitáveis.

4

É realizado um teste manual antes de produzir o código e, em seguida, são escritos os testes automatizados.

43

Multiple Choice

Qual é o objetivo do TDD em relação à qualidade do processo de desenvolvimento?

1

Tornar o processo mais lento e burocrático

2

Melhorar a qualidade do software por meio de testes automatizados

3

Aumentar a quantidade de bugs no software

4

Ignorar a importância dos testes na produção de software

44

Conclusão

Usando JUnit e Spring Boot, os desenvolvedores podem implementar facilmente o TDD em seu fluxo de trabalho de desenvolvimento. O exemplo do O JusProcesso mostrou como essa abordagem pode ser aplicada em um projeto real para melhorar a qualidade do código e reduzir o tempo e o custo do desenvolvimento de software.

Introdução ao Test Driven Development (TDD) com JUnit e Spring Boot

Show answer

Auto Play

Slide 1 / 44

SLIDE