Testes de Software



Os Testes de Software têm como objetivo investigar a qualidade do sistema desenvolvido em relação a seus requisitos e ao ambiente em que ele deve operar.


Apesar de ainda ser comum que alguns relacionem a qualidade de um sistema exclusivamente à qualidade do dos testes de software, é fundamental que esse processo esteja devidamente integrado aos demais processos de desenvolvimento de software, com especial destaque para aqueles relacionados à Engenharia de Requisitos, para que sejam obtidos resultados mais satisfatórios e consistentes.


O planejamento dos Testes de Software de um determinado projeto deve especificar as Técnicas (Testes de "Caixa Branca", "Caixa Preta", "Caixa Cinza"), Estratégias (Testes de Unidade, Integração, Sistema, Aceitação, Regressão, etc.) e demais atividades a serem realizadas e suas respectivas responsabilidades.


O processo de Testes de Software está diretamente relacionado aos processos de Verificação e Validação, que normalmente são executados em conjunto, sendo muito difícil identificar onde um processo começa e onde o outro termina. De uma maneira geral, a verificação se preocupa em avaliar se o produto está sendo desenvolvido corretamente, enquanto a validação visa assegurar que se está desenvolvendo o produto correto, isto é, o produto que o cliente deseja [BOEHM, 1981].


De acordo com a norma internacional ISO/IEC 12207 [ISO/IEC, 2008], a verificação refere-se ao processo de examinar o resultado de uma atividade para determinar sua conformidade com os requisitos estabelecidos para a mesma atividade, enquanto a validação se refere ao processo de examinar um produto para determinar sua conformidade com as necessidades do usuário. Esta norma define que a validação é feita normalmente no produto final sob condições de operação definidas, podendo, contudo, tornar-se necessária em fases anteriores.


Principais referências utilizadas pela ASR nos serviços de consultoria, assessoria técnica e treinamento em Testes de Software: