Skip to main content

Estratégia de Testes

Histórico de Revisão

DataVersãoDescriçãoAutor
23/06/20231.0Definição da Estratégia de TestesPedro Eduardo Santos Sousa
30/06/20231.1Aprimoração da Estratégia de TestesPedro Eduardo Santos Sousa
09/07/20231.2Objetivos e perspectivasPedro Eduardo Santos Sousa
10/07/20231.3Atualização das estratégiasPedro Eduardo Santos Sousa
12/07/20231.4Adição da técnica automática nos testes funcionais de integraçãoPedro Eduardo Santos Sousa
13/07/20231.5Atualização das estratégiasPedro Eduardo Santos Sousa
17/07/20231.6Adição dos resultados dos testesPedro Eduardo Santos Sousa
18/07/20231.7Correção da tabelaPedro Eduardo Santos Sousa

Introdução

Nessa seção se encontra a estratégia de testes que deverá ser seguida pela equipe.

Tipos de teste

  • Funcional: A equipe deve para garantir que o produto está funcionando de acordo com os requisitos definidos e seus respectivos critérios de aceitação.
  • Usabilidade: O cliente precisa entender e usar o produto da forma como foi acordado com a equipe, também seguindo os requisitos, user stories e seus respectivos critérios de aceitação

Níveis de Teste

  • Unitário: Obrigatório implementar as funções e classes mais importantes considerando somente os critérios de aceitação. O backend é prioridade, mas também serão feitos alguns testes de frontend. A biblioteca de teste usada pela equipe será o Jest.
  • Integração: Será testado a integração entre os componentes, no caso, o será necessário testar se o front está chamando corretamente as funções do back. Será considerado a user story como um todo.
  • Sistema: Será necessário verificar o sistema como um todo do ponto de vista técnico, ou seja, todas as funcionalidades definidas pelas user stories e passar por todos os critérios de aceitação, além dos requisitos não funcionais. A principal ferramenta usada para testar a integração é o postman.
  • Aceitação: O cliente precisa experimentar o software e validar todo o produto de acordo com sua experiência e do que era esperado e acordado com a equipe.

Técnicas de teste

  • Caixa Branca: Deve-se testar as funcionalidades considerando a estrutura do código, se está seguindo os padrões de codificação definidos pela equipe e se o resultado esperado não tiver passado pela técnica da caixa preta.
  • Caixa Preta: Deve-se verificar se as entradas e saídas correspondem com o esperado, sem considerar o código. Será útil para economizar tempo, sabendo como o código está implementado. Se não passar nessa técnica, será utilizado o método caixa branca
  • Manual: Todo desenvolvedor deverá testar o código manualmente na sua máquina e o usuário de testar o produto quando este for entregue.
  • Automática: A cada integração, será chamada a Actions do github para rodar os testes do backend e frontend, verificando se não há nenhum teste unitário falhando em alguma parte de todo o projeto.

Tabelas de Estratégia de Testes para cada MVP

MVP1/MVP 2

TipoNívelTécnicaObjetivoPerspectiva
FuncionalUnitárioAutomática, Caixa BrancaQualidade InternaTécnica
FuncionalIntegraçãoAutomática, Caixa Branca, ManualQualidade InternaTécnica
UsabilidadeSistemaCaixa Preta, ManualQualidade ExternaTécnica
UsabilidadeAceitaçãoManualQualidade ExternaNegócio

Tabelas de resultados

A seguir se encontra os resutados das quatro estratégias para cada user story.

RequisitoEstratégia de teste 1Estratégia de teste 2Estratégia de teste 3Estratégia de teste 4
US01PASSOUPASSOUPASSOUPASSOU
US02PASSOUPASSOUPASSOUPASSOU
US03PASSOUPASSOUPASSOUPASSOU
US04PASSOUPASSOUPASSOUANDAMENTO
US05PASSOUPASSOUPASSOUPASSOU
US06PASSOUPASSOUPASSOUANDAMENTO
US07PASSOUPASSOUPASSOUANDAMENTO
US08PASSOUPASSOUPASSOUANDAMENTO
US09PASSOUPASSOUPASSOUPASSOU
US11PASSOUPASSOUPASSOUPASSOU
US12PASSOUPASSOUPASSOUANDAMENTO
US13PASSOUPASSOUPASSOUPASSOU
US14PASSOUPASSOUPASSOUPASSOU
US16PASSOUPASSOUPASSOUPASSOU
US17FALHOUPASSOUPASSOUPASSOU
US18FALHOUPASSOUPASSOUPASSOU
US19FALHOUPASSOUPASSOUPASSOU
US21PASSOUPASSOUPASSOUANDAMENTO
US22PASSOUPASSOUPASSOUANDAMENTO
US23PASSOUPASSOUPASSOUANDAMENTO
US24PASSOUPASSOUPASSOUANDAMENTO
US29PASSOUPASSOUPASSOUANDAMENTO
US32PASSOUPASSOUPASSOUANDAMENTO
US33PASSOUPASSOUPASSOUANDAMENTO
US34PASSOUPASSOUPASSOUANDAMENTO
US35PASSOUPASSOUPASSOUANDAMENTO

Referências

  • Material do moodle da disciplina