xUnit é o nome genérico para qualquer estrutura de testes automáticos unitários. O teste unitário ou de unidade é um processo que consiste na verificação da menor unidade do projecto de software.

Em sistemas construídos com uso de linguagens orientadas a objetos, um teste envia uma mensagem a um método, uma classe ou mesmo um objeto e verifica se tem o retorno previsto.

O teste unitário é da responsabilidade do próprio programador durante a implementação, isto é, após codificar uma classe, por exemplo, seria executado o teste de unidade.

Geralmente, um teste de unidade executa um método individualmente e compara uma saída conhecida após o processamento da mesma. O teste unitário é considerado o primeiro de uma cadeia de testes à qual um software pode ser submetido, nesta fase, não se pretende testar toda a funcionalidade de uma aplicação.

Sendo  um  processo  fundamental  no  desenvolvimento  de  uma  aplicação,  o  teste  de  software  para  ser  considerado  tem  de  apresentar  características  tais  como:  ser  operável,  observável,  controlável,  ter  decomposição,  simplicidade,  estabilidade  e  compreensão, um bom  teste é aquele que  tem uma elevada probabilidade de  revelar  um  erro,  e  um  teste  para  ser  bem  sucedido  é  aquele  que  revele  erros  ainda  não  revelados.  Estes testes têm de ser sempre documentados e reproduzíveis.  A  vantagem  deste  tipo  de  testes  é  que  é  feito  sobre  um módulo  (classe). Após  a  escrita  do  código  escreve-­se  o  teste,  ou,  primeiro  o  teste  e  depois  o  código,  dependendo  do  programador.  Esta  técnica  permite  que  o  teste  encontre erros mais  facilmente, visto que testa por classes, em vez de o fazer ao código completo.  O  tempo  de debug  tem  tendência  a  decrescer,  o  trabalho  também,  o que  implica a  redução do custo total de desenvolvimento do software.  A  importância  do  xUnit  na  engenharia  de  software  é  elevada,  pois  com  esta  ferramenta podemos efectuar  testes de melhor qualidade, comparados com os  testes  convencionais,  isto  é,  podemos  observar mais  facilmente  os  erros,  e  verificar  com  melhor fiabilidade os valores das nossas variáveis e funções. Este tipo de ferramentas  tem  como  objectivo  fazer  testes  para  que  se  possa  confirmar  a  boa  qualidade  do  projecto, de forma a obter maior confiança no final. 

Referências editar

BRANDÃO, H. A.; CAMPOS, J. T. M.; FREITAS, T. M.; GUERREIRO, J. M.; OLIVEIRA, V. M.; PINTO, J. M. M. xUnit – Testes Unitários Automatizados. 2005. Disponível em: <https://web.archive.org/web/20070703074113/http://paginas.fe.up.pt/~aaguiar/es/artigos%20finais/es_final_6.pdf>. Acesso em: 7 out 2006, 00:15:00.