Category Archives: Testes

Teste – Excitante!

A Saga

O que nós ganhamos!

O que é?

Unit Tests, Unidades menores, que iremos juntar. Eles servem para verificar o funcionamento de um trecho de código e são a base do desenvolvimento orientado a testes.

Os Unit-Tests é uma forma de automatizar os testes das aplicações. Ou seja, eles são classes criadas para testar nossos métodos. O código de um Unit-Test deve validar todas as possíveis entradas (parâmetros) e saídas (retornos) de um método, atestando de uma forma automática a eficiência do método.

O teste unitário pode ser extremamente útil no desenvolvimento front-end.

TDD é uma evolução da maneira como programamos. Consiste em se escrever o teste antes mesmo de ter um código a ser testado. Isto força que as especificações dos requisitos sejam bem feitas porque os testes serão escritos a partir destes.

Veja algumas vantagens que convencem qualquer um que a prática de automatizar unit-tests é válida. Ou seja, os benefícios que compensam a adoção da prática trazendo benefícios práticos que “podem” ajudar no desenvolvimento.

Reusabilidade

UnitTests, uma vez escrito poderá ser executado a qualquer momento, por qualquer pessoa ou script e em qualquer ambiente.

É comum, pessoas que automatizam o processo de build, que a cada compilação os unittests sejam executados novamente para garantir que nada saiu errado.

Manutenibilidade

UnitTests, por terem uma estrutura e uma lógica-padrão facilmente aprendidas, eles podem ser entendidos, executados e mantidos por qualquer desenvolvedor, assim como o código original do app.

Visibilidade

UnitTests, aliados a uma ferramenta de code coverage dão visibilidade da quantidade real de código-fonte que foi testada em um app.

Documentação Complementar

UnitTests, automatizados servem como complemento à documentação da classe. Um test unit bem escrito apresenta exemplos práticos de como utilizar a classe, o comportamento esperado de seus métodos e possíveis exceções que podem ser “levantadas”. Isso facilita bastante a utilização destas classes por outros desenvolvedores.

Confiabilidade

UnitTests, aumenta a confiança para alterarmos um trecho do código, seja para consertar um defeito como implementar uma nova funcionalidade ou para melhorar um trecho mal escrito. A possibilidade de a qualquer momento testar uma classe.

Encoraja

Esta metodologia está ligada também com as metodologias ágeis.

UnitTests, é a base fundamental para outras práticas ágeis, como refactoring, automatização de builds, collective ownership e outras, devido à confiabilidade que ele proporciona.

Next stop Test. Disambark on the left.

#01 – Teste – Dia-a-Dia – Live Unit Test 

Chega de teoria! #1 – Impactos

Saga M&M (Mundo Mobile)

Este recurso define quais unit tests sofrerão impactos por alterações no código e apenas executa novamente esse conjunto.

Ele atualiza ícones no editor para indicar o status do código.

Permite também inclução/exclusão de testes específicos, projetos de teste ou classes.

2017_01_live_unit_test

Também podemos executá-lo pelo modo de economia de bateria, em Tools/Options/Live Unit Testing.

Para ativá-lo, Test/Live Unit Testing/Start. A janela Outupt também é um bom local para diagnosticar por que o Live Unit Testing não está sendo executado.

Pronto! Já temos um Projeto de Teste criado!

Missão cumprida!