Article image
Thiago Sampaio
Thiago Sampaio24/10/2021 20:57
Compartilhe

8 Benefícios de Testes Automatizados

  • #Testes unitários
  • #TDD
  • #QA

Neste artigo, vamos conhecer os 8 Benefícios de Testes Automatizados.

1 - Os testes são os exemplos de código do nosso sistema.

Você já pulou uma resposta no StackOverflow porque ele não continha uma amostra de código?

Os exemplos de código nos ajudam a entender como as coisas funcionam.

Um sistema de software é mais fácil de entender se tiver testes automatizados em funcionamento.

2 - Os testes são especificações executáveis do comportamento do sistema.

Os documentos escritos tornam-se facilmente obsoletos e frequentemente mentem. Eles especificam o que o sistema deve fazer, não o que ele faz.

Os testes especificam o que o sistema realmente faz e estão sempre atualizados.

3 - Os testes fornecem os primeiros usuários do seu código.

Ao escrever testes, você se torna um usuário de seu próprio código.

Se o design for ruim, você será o primeiro a ter o problema.

Isso faz com que você se esforce mais na refatoração.

Os testes automatizados levam a um código mais limpo.

4 - Os testes fornecem feedback imediato sobre erros de tempo de execução.

Você já sentiu o prazer de digitar um nome de variável incorretamente e obter feedback imediato de seu IDE?

Você pode obter o mesmo tipo de feedback sobre erros de tempo de execução, se executar os testes com frequência suficiente.

5 - Os testes evitam a ocorrência de bugs.

Ao escrever testes, você está especificando o comportamento do sistema.

Enquanto os testes estiverem lá, esse comportamento será preservado.

Se, em algum momento no futuro, você alterar esse comportamento sem querer, os testes detectarão o erro.

6 - Os testes fornecem uma rede de segurança.

Com uma rede de segurança de testes, você pode refatorar com confiança, de maneira semelhante aos trapezistas que atuam sem medo.

Quanto mais abrangente for o conjunto de testes, melhor, porque comportamentos não testados são buracos nessa rede por onde você pode cair.

7 - Os testes têm implicações arquitetônicas positivas.

Para testar uma unidade de código corretamente, você deve isolá-la, "mockando" suas dependências.

Quanto mais fracamente acoplado for um sistema, mais fácil será testá-lo.

Testes automatizados levam a baixo acoplamento.

8 - Todos os benefícios acima juntos têm uma consequência importante:

Teste automatizado aumenta a qualidade do software

E alta qualidade é a única maneira que podemos ter:

  • Grande economia de tempo e dinheiro.
  • Clientes satisfeitos.
  • Uma equipe de desenvolvimento motivada.

Referência:

Tweet original em inglês: @macerub

Vídeo em português: Testes Automatizados | 8 benefícios!

Compartilhe
Comentários (5)
André França
André França - 06/12/2022 11:04

Excelente viu.

Paula Rodrigues
Paula Rodrigues - 11/11/2022 23:45

Ótimo, Thiago!

Obrigada!

:)

Felipe Bozz
Felipe Bozz - 24/10/2021 21:03

Thiago! Super válido.

Sempre é bom relembrar a importância dos testes para fixar e introjetar no cotidiano.


Você possui dica de estudo prático voltado à testes?


Abraço.

MM

Marcelo Mora - 25/10/2021 15:15

Valeu Thiago, artigo bem detalhado.

ítalo Lobo
ítalo Lobo - 24/10/2021 21:14

Muito Bom ,principalmente para quem está iniciando, se você tiver alguma dica de rotina de estudos ficarei agradecido.


Forte Abraço.