A execução de testes é de extrema importância em Engenharia de Software. Por isso consta como uma subetapa na maioria dos modelos prescritivos de processo de software, ou até mesmo como uma atividade ou "metaetapa" em metodologias como TDD, ATDD e XP.
Antes de elucidar o significado e características das siglas xDD (que será feito em publicações seguintes), é importante relacionar os principais tipos de testes de software. Eles são executados em diferentes níveis e em paralelo ao desenvolvimento do software:
![]() |
Fonte: Devmedia |
É fortemente indicado que os testes unitários sejam elaborados antes da codificação, pois de forma contrária essa elaboração pode ser tendenciosa; influenciada pelo desenvolvimento da unidade funcional. Já a execução desses testes é feita posteriormente ao desenvolvimento da unidade e com determinada frequência; de preferência quando suas respectivas unidades sofrerem alguma alteração.
O teste de integração constitui o nível seguinte. Através daquele, é possível testar a integração de duas ou mais funcionalidades. Isso pode ser feito gradativamente (de forma incremental; mais recomendado) ou de uma só vez (não incremental ou “big-bang”; menos recomendado).
Considera-se que, a partir desse nível, as unidades funcionais tenham sido testadas exaustivamente, pois a ocorrência de erros de unidades em níveis subsequentes podem custar caro ao desenvolvedor.
O teste de sistema visa ao funcionamento do software como um todo; ou seja, com todas as unidades funcionais trabalhando em conjunto. Ele leva em consideração a validação referente a requisitos funcionais e não funcionais.
Nesse nível, deve haver uma integração dos componentes de software com o ambiente operacional em que ele será efetivamente utilizado.
Nesse nível, deve haver uma integração dos componentes de software com o ambiente operacional em que ele será efetivamente utilizado.
O teste de aceitação é o último nível antes da implantação do software. Por meio dele, o sistema é testado com dados fornecidos pelo usuário (cliente). Desse modo, ainda podem ser encontrados problemas com os requisitos funcionais e não-funcionais, uma vez que os dados reais "exercitam" o sistema de modo diferente dos dados simulados.
Testes de aceitação podem ser classificados em duas categorias: 1) Alfa, quando feitos por usuários, geralmente nas instalações do desenvolvedor ou 2) Beta, quando feitos por usuários, geralmente em suas próprias instalações, sem supervisão do desenvolvedor.
Finalmente, o teste de regressão. Este corresponde, na verdade, mais a uma estratégia do que a um teste propriamente dito. Através dele, são aplicados, a cada novo ciclo (ou versão) do software, todos os testes já aplicados em ciclos (ou versões) anteriores.
Resumidamente, temos:
Para questões de concurso sobre esse tema, clique aqui.
Testes de aceitação podem ser classificados em duas categorias: 1) Alfa, quando feitos por usuários, geralmente nas instalações do desenvolvedor ou 2) Beta, quando feitos por usuários, geralmente em suas próprias instalações, sem supervisão do desenvolvedor.
Finalmente, o teste de regressão. Este corresponde, na verdade, mais a uma estratégia do que a um teste propriamente dito. Através dele, são aplicados, a cada novo ciclo (ou versão) do software, todos os testes já aplicados em ciclos (ou versões) anteriores.
Resumidamente, temos:
![]() |
Fonte: Slideshare |
Para questões de concurso sobre esse tema, clique aqui.
REFERÊNCIAS
[1] PRESSMAN, Roger S. Engenharia de software. 6ª ed. Porto Alegre: Bookman, 2006.
[2] SOMMERVILLE, Ian. Engenharia de software. 8ª ed. São Paulo: Pearson Addison-Wesley, 2007.
[2] http://blog.fasagri.com.br/?p=113
[3] http://www.devmedia.com.br/artigo-engenharia-de-software-introducao-a-teste-de-software/8035
[4] http://www.devmedia.com.br/junit-implementando-testes-unitarios-em-java-parte-i/1432
[1] PRESSMAN, Roger S. Engenharia de software. 6ª ed. Porto Alegre: Bookman, 2006.
[2] SOMMERVILLE, Ian. Engenharia de software. 8ª ed. São Paulo: Pearson Addison-Wesley, 2007.
[2] http://blog.fasagri.com.br/?p=113
[3] http://www.devmedia.com.br/artigo-engenharia-de-software-introducao-a-teste-de-software/8035
[4] http://www.devmedia.com.br/junit-implementando-testes-unitarios-em-java-parte-i/1432
Nenhum comentário:
Postar um comentário