DEV Community

Cover image for Programação orientada a testes?!
DevShy for Devs Jequié

Posted on

6

Programação orientada a testes?!

Para começar

Ao construir um projeto, um sistema ou até mesmo um simples código, nos bate aquela dúvida: será que o que eu construi está funcionando corretamente? É ai que surge a necessidade de implementar testes em seu código, como o próprio nome diz, testar se o que você escreveu está retornando o esperado.

Testes unitários e TDD

Agora que já vimos um pouco sobre a importância de termos teste em código, vamos ver a diferença entre Testes unitários e TDD. Testes unitários são trechos de código que vão "exercitar" a entrada, saída e comportamento do seu código, já o Desenvolvimento Orientado a Testes (TDD) é uma forma de pensamento, que consiste em escrever testes primeiro do que o código.

É isso mesmo que vocês leram. Testar antes mesmo de escrever o código.

O grande motivo desse pensamento é que quando criamos os testes para código que até mesmo nem existem ainda, o processo de criação desse código se torna muito mais fácil, pois você já sabe "onde quer chegar" com ele.

O ciclo do TDD

Mesmo sendo mais fácil construir o código tendo seu teste criado, não significa que acertaremos de primeira. Aqui falarei talvez da coisa mais importante da metodologia do TDD, o ciclo de funcionamento dele. O ciclo é formado por três etapas:

  • Escrever um teste e fazer ele falhar (se estamos escrevendo o teste primeiro é claro que ele irá falhar)
  • Escrever o código que será testado pelo seu teste
  • Refatorar o código para algo mais otimizado

Essa imagem representa bem o que quero dizer:

Image description

Para finalizar

E estamos chegando ao fim desse artigo pessoal, ele foi bem curtinho com o intuito de dar apenas novas visões sobre a importância de se fazer teste em nosso código, independentemente da linguagem utilizada. Utilizando o TDD seu código fica mais confiável e legível, pode ser difícil aplicar essa metodologia no começo mas com o tempo fica mais fácil!

Materiais de referência

Sentry image

Hands-on debugging session: instrument, monitor, and fix

Join Lazar for a hands-on session where you’ll build it, break it, debug it, and fix it. You’ll set up Sentry, track errors, use Session Replay and Tracing, and leverage some good ol’ AI to find and fix issues fast.

RSVP here →

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay