Não? Pois bem, aprendi sobre ele esses dias. Pesquisei pela internet para tentar entender sua a real utilização. Vi muita coisa em fóruns. Ah, antes deixe-me comentar uma coisa: valeu pela dica de um colega usuário (não me lembro em qual fórum) que ao ver meu checklist do Projeto Morg, me recomendou em acrescentar o estudo sobre teste unitário (Assert). Isso mesmo! Eu estou falando aqui dos Testes Unitários, que são utilizados somente em modo de desenvolvimento e nunca em fase de produção.
O assunto deste post tem como base o checklist do Projeto Morg, como comentado acima. Conheça mais sobre ele aqui. Então… Vejamos sobre Assert.
Fui realmente entender sobre Assertivas ao ler as páginas 488 e 489 do livro Java Como Programar – 6ª Edição.
A função principal do Assert é retornar uma exceção quando encontrado uma condição falsa. É utilizado para detectar erros de lógica e bugs que passam despercebidos pelo programador.
Sendo mais claro, avalie o código abaixo:
1 2 | Int x = 0; assert (x==0); |
Aqui não é retornado nenhum erro, pois a condição foi verdadeira.
1 2 | Int x = 0; assert (x==1); |
Nesse caso retorna uma exceção (AssertionError) e interrompe a execução do programa imediatamente.
Mas para que serve isso? Simples! Resolva os bugs de seu programa dessa forma, ou seja, se você não sabe onde está exatamente o problema, poderá dizer ao Java que mande encerrar a exceção em um determinado ponto através desse teste unitário. Que tal pensarmos assim: “Sr. Java, se nessa parte não vier um número 10, por favor, gere uma exceção e pare de executar, então me mostre o resultado da variável, dessa forma saberei onde está o problema.”
Vamos traduzir isso em linhas de código:
1 2 3 | for (int x=0;x<=30;x++) { assert (x!=10 : “Opa! Saiu um “ + x + ”, não pode!”); } |
Você pode repetir esta operação em qualquer lugar de seu código para fazer testes unitários. Assim você garante a integridade de seu sistema em qualquer momento do desenvolvimento. A princípio você talvez não consiga encontrar uma necessidade para isso. Mas não desista, o Assert é apenas uma ferramenta para o desenvolvedor. Ele irá ajudá-lo a resolver os bugs que estão quebrando a sua regra.
Habilitando o assert
Para que você consiga usar o assert em seus códigos, precisa avisar ao Java que estará utilizando assertions no meio do código. Para isso basta adicionar os parâmetros –ea na linha de comando do console ao executar seu programa:
java –ea MeuPrograma
Se você usa o Eclipse, basta seguir conforma a imagem abaixo. Chame as propriedades de seu projeto e siga os números.
Um detalhe é muito importante: o Eclipse não vai reconhecer o comando assert se não mudar a versão do nível de compilação para 1.5 ou superior. Para isso, basta entrar novamente nas propriedades do projeto, então na opção Java Compiler, ative a opção “Enable project specific settings” e troque a versão. Veja a imagem abaixo:
Atenção! Comente todos os asserts de seu programa ao enviar para produção, já que a execução com os parâmetros –ea podem ser utilizados por qualquer usuário.

