ENGENHARIA DE SOFTWARE - TESTES
1) Defina Teste de software
São técnicas usadas para testar a execução de um programa, tentar encontrar erros, ou seja, é o processo de execução de um produto para determinar se ele atingiu suas especificações e funcionou corretamente no ambiente para qual foi projetado. Contribui para o aumento da confiança das funções especificadas que o software faz.
2) Explique as estratégias de teste de software(Unidade, Integração, Sistema e aceitação)
Teste de Unidade – Tem por objetivo, explorar a menor unidade do projeto e geralmente, é feito pelo próprio programador, procurando provocar falhas ocasionadas por defeitos de lógica e implementação em cada módulo separadamente.
Teste de Integração – Pode ser feito por vários programadores e visa provocar falhas associadas as interfaces entre os módulos quando esses são integrados para construir a estrutura do software que foi estabelecida na fase do projeto.
Teste de Sistema – Feitas preferencialmente por pessoas que não tiveram ligações diretas com o desenvolvimento do sistema, avalia o software em buscas de falhas por meio de utilização do mesmo. Simulando a execução de um usuário final, verifica se o produto satisfaz seus requisitos.
Teste de Aceitação – Feito obrigatoriamente por usuários, simulam operações de rotina do sistema a fim de verificar se seu comportamento está de acordo com o solicitado.
3) Cite Explique os testes de caixa-preta e caixa-branca
Teste Estrutural ou Caixa Branca
Avalia o comportamento interno do componente de software. Trabalha diretamente com código fonte, a fim de avaliar aspectos como teste de condição, fluxo de dados, ciclos e caminhos lógicos.
Teste Funcional ou Caixa Preta
Não considera o comportamento interno do componente de software. Dados de entrada são fornecidos, o teste é executado e o resultado obtido é comparado a um resultado esperado previamente conhecido. Se o resultado obtido for igual ao esperado o sucesso é