Junior
O que é o teste baseado em cenários de uso?
sobes.tech IA
Resposta da IA
Os testes baseados em cenários de uso (testes de casos de uso) são uma técnica de design de testes que consiste em desenvolver casos de teste (test-cases) a partir de descrições de interações do utilizador com o sistema. Concentram-se na verificação da funcionalidade do sistema do ponto de vista do utilizador final, simulando as sequências típicas de ações que o utilizador realiza para atingir um objetivo específico.
Características principais:
- Base: Cenários de uso (use cases) ou histórias de utilizador (user stories).
- Objetivo: Verificar se o sistema cumpre os requisitos funcionais descritos nos cenários de uso.
- Foco: Na interação do utilizador com o sistema e nos fluxos de dados.
- Resultado: Um conjunto de casos de teste que cobre tanto os fluxos principais ("caminho feliz") como os alternativos e excecionais.
Etapas:
- Identificação dos cenários de uso.
- Desenvolvimento das descrições dos cenários (pré-condições, passos, pós-condições).
- Definição dos fluxos principais, alternativos e excecionais.
- Desenvolvimento de casos de teste para cada fluxo.
- Execução dos casos de teste e análise dos resultados.
Exemplo (fragmento do cenário "Login do utilizador"):
| Passo | Ação | Sistema |
|---|---|---|
| 1 | O utilizador abre a página de login. | Aparece o formulário de entrada de login e senha. |
| 2 | O utilizador insere um login correto. | |
| 3 | O utilizador insere uma senha correta. | |
| 4 | O utilizador clica no botão "Entrar". | O sistema verifica as credenciais. |
| 5 | Redireciona o utilizador para a página principal. |
Tipos de fluxos:
- Fluxo principal (Main Flow): Sequência ideal de ações em caso de sucesso do cenário.
- Fluxo alternativo (Alternative Flow): Variação do fluxo principal que leva ao sucesso, mas através de outros passos (por exemplo, login através de redes sociais).
- Fluxo excecional (Exceptional Flow): Situação em que a execução do cenário termina com um erro ou resultado incompleto (por exemplo, senha incorreta).
Vantagens:
- Foco nas necessidades do utilizador.
- Cobertura abrangente da funcionalidade.
- Ajuda a identificar erros na interação entre componentes.
- Os casos de teste são fáceis de entender e usar por todos os participantes do projeto.