Skip to content

Testes de Software

Estratégia de testes

Foram definidos algumas estratégias para obter um melhor desempenho:
Níveis de testes
Tipos de testes
Ambientes de testes
Formas de análise


Níveis de testes abordados

Para garantir a confiabilidade do sistema AgroStock, serão realizados testes em três níveis distintos:

Testes Unitários: serão aplicados diretamente nas funções e componentes isolados, principalmente no backend, como validação de lógica de cálculo de validade de flores, verificação de campos obrigatórios e manipulação de dados. Esses testes asseguram que cada bloco individual de código se comporta conforme esperado.

Testes de Integração: serão utilizados para validar o funcionamento conjunto entre diferentes módulos, como a comunicação entre o frontend e o backend durante o cadastro, atualização e visualização de produtos no estoque. O objetivo é garantir que os fluxos de dados entre os componentes estejam corretos.

Testes Manuais: envolvem a simulação de ações completas feitas por um usuário final, como o cadastro de um novo produto, visualização de alertas de validade, geração de relatórios e navegação pelas telas. Esses testes permitem avaliar o comportamento do sistema como um todo, de ponta a ponta e serão feitos por integrantes do grupo.

Essa abordagem por camadas garante que tanto o núcleo da aplicação quanto suas interfaces e integrações estejam bem validadas ao longo do desenvolvimento.


Tipos de testes abordados

A estratégia adotada contempla apenas testes funcionais conforme a natureza das funcionalidades testadas:

Testes Funcionais: são o foco principal e têm o objetivo de verificar se os requisitos levantados foram corretamente implementados. Isso inclui funcionalidades como: cadastro de flores e insumos, alertas de validade, geração de relatórios e controle de movimentações de estoque. Esses testes serão baseados diretamente nas user stories e requisitos do backlog.

Esse teste garante não apenas que o sistema funcione, mas que ofereça uma boa experiência ao usuário.


Ambientes de testes usados

Para garantir segurança, controle e fidelidade ao uso real, os testes serão executados em ambientes distintos, conforme o tipo de teste:

Ambiente de Desenvolvimento (Local): utilizado para testes unitários e experimentações rápidas durante a codificação. Executado localmente pelos desenvolvedores, com simulação de dados.

Ambiente de Homologação: será configurado para execução dos testes de integração e sistema. Esse ambiente simula as condições reais de uso (com banco de dados, autenticação e APIs funcionando) e é acessível a todos os membros da equipe. Ele permite validar a aplicação sem comprometer o ambiente de produção e será com a ferramenta Postman, com dados fictícios para simulação e validação das operações.

Ambiente de Produção: não será utilizado para execução de testes, evitando riscos para os usuários finais e os dados reais do sistema.

O uso de ambientes separados garante segurança, organização dos testes e uma base confiável para tomadas de decisão ao longo do projeto.


Formas de análise dos testes propostos

A análise dos testes será conduzida com base em critérios objetivos e evidências coletadas durante a execução de cada caso de teste. Os principais métodos adotados incluem:

Critérios de Aceitação: cada caso de teste terá um resultado esperado claramente definido, com base nos requisitos do sistema. Um teste será considerado "aprovado" apenas se o comportamento observado for igual ao esperado.

Registros de Evidência: serão coletadas evidências visuais (como capturas de tela) e registros de log (quando aplicável) para cada execução, especialmente nos testes manuais.

Documentação de Falhas e Correções: eventuais erros encontrados durante os testes serão documentados junto com suas respectivas soluções, permitindo rastreabilidade e aprendizado contínuo da equipe.

Métricas de Execução: sempre que possível, serão registradas métricas como número total de testes executados, porcentagem de sucesso, tempo médio de execução e número de ciclos necessários até a aprovação.

Essa abordagem garante que a validação do sistema seja feita de forma controlada, transparente e com dados concretos que justifiquem as decisões tomadas no processo de desenvolvimento.


Roteiro de teste

Para minimizar os riscos no ambiente de teste e preservar a integridade do projeto, todos os testes planejados serão realizados em uma branch dedicada. Essa estratégia garante que possíveis erros ou modificações durante os testes não impactem o código principal do projeto.

Pré-condição para testes: fica determinado fazer na ordem dos códigos, assim, tudo estará pronto para o próximo passo.


ID Teste a ser Realizado Descrição Esperado Definição de Aceito Registros ao Fazer o Teste Reparos Feitos Status
TU1.1 Cadastro de flores Verifica se o serviço cadastra as flores corretamente. Cadastrar uma nova flor. A flor deve entrar no sistema. A começar
TU1.2 Exclusão de flores Verifica se o serviço exclui as flores corretamente. Excluir uma flor existente. A flor deve ser excluída do sistema. A começar
TU2 Consulta Rápida de Produtos Pesquisar produtos pelo nome, tipo, validade ou quantidade. Pesquisar e encontrar o produto. Receber a busca pela flor corretamente. A começar
TI1.1 Registrar Entradas no Estoque Registrar entrada no estoque com data, quantidade, motivo e responsável. Adicionar a flor no estoque. A flor deve entrar no estoque. A começar
TI1.2 Registrar Saídas no Estoque Registrar saída no estoque com data, quantidade, motivo e responsável. Tirar uma flor do estoque. A flor deve sair do estoque. A começar
TI2.1 Controle de Validade e Lote Associar data de validade ao produto e enviar alerta quando próximo do vencimento. Enviar a notificação. Deve haver um sinal de que a notificação foi enviada. A começar
TI2.2 Notificação de Validade Receber o alerta da data de vencimento quando ativada. Receber a notificação. A notificação deve ser recebida. A começar
TI3 Estoque Mínimo e Máximo Definir faixas de estoque por item. Limitar a quantidade de um item. Não deixar ultrapassar a quantidade máxima definida para flores. A começar
TI4 Alerta de Produtos com Baixo Giro Listar produtos parados no estoque por muito tempo. Identificar os produtos parados. Gerar uma lista de produtos com baixo giro. A começar
TM1 Leitura de QR Code Permitir a leitura de QR Code para identificar produtos e lotes. O QR Code deve funcionar corretamente. O testador deve ser direcionado corretamente após a leitura do QR Code. A começar
TM2 Registros Incompletos Tentar registrar de maneira incompleta uma flor ou um usuário. O sistema negar o registro. Dar erro e voltar uma mensagem de erro de maneira adequada. A começar