O que é teste estático?
O teste estático é uma técnica de teste de software usada para verificar defeitos no aplicativo de software sem executar o código. O teste estático é feito para evitar erros em um estágio inicial de desenvolvimento, pois é mais fácil identificá-los e resolvê-los. Também ajuda a localizar erros que podem não ser encontrados pelo Teste Dinâmico.
Sua contraparte é o Teste Dinâmico, que verifica um aplicativo quando o código é executado. Consulte este tutorial para obter uma diferença detalhada entre testes estáticos e dinâmicos.
Os dois principais tipos de técnicas de teste estático são
- Exames manuais : os exames manuais incluem a análise de código feita manualmente, também conhecida como REVIEWS.
- Análise automatizada usando ferramentas: análises automatizadas são basicamente análises estáticas que são feitas usando ferramentas.
Neste tutorial, você aprenderá-
- O que é teste estático?
- O que é revisão de teste?
- Por que teste estático?
- O que é testado em testes estáticos
- Como o teste estático é realizado
- Técnicas de teste estático
- Ferramentas usadas para testes estáticos
- Dicas para um processo de teste estático bem-sucedido
O que é revisão de teste?
Uma revisão em um teste estático é um processo ou reunião conduzida para encontrar os defeitos potenciais no design de qualquer programa. Outro significado da revisão é que todos os membros da equipe ficam sabendo do andamento do projeto e, às vezes, a diversidade de pensamentos pode resultar em excelentes sugestões. Os documentos são examinados diretamente pelas pessoas e as discrepâncias são resolvidas.
Os comentários podem ser classificados em quatro partes:
- Críticas informais
- Passo a passo
- Revisao Tecnica
- Inspeções
Durante o processo de revisão, quatro tipos de participantes que participam do teste são:
- Moderador : Executa verificação de entrada, acompanha retrabalho, membro da equipe de coaching, agenda a reunião
- Autor : Responsabiliza-se pela correção do defeito encontrado e melhora a qualidade do documento
- Escriba : faz o registro do defeito durante uma revisão e participa da reunião de revisão
- Revisor : Verifique se há defeitos no material e inspeções
- Gerente : Decide sobre a execução das revisões e garante que os objetivos do processo de revisão sejam atendidos.
Os tipos de defeitos que podem ser mais fáceis de encontrar durante o teste estático são:
- Desvios dos padrões
- Código não sustentável
- Defeitos de design
- Requisitos ausentes
- Especificações de interface inconsistentes
Normalmente, o defeito descoberto durante o teste estático é devido a vulnerabilidades de segurança, variáveis não declaradas, violações de limites, violações de sintaxe, interface inconsistente, etc.
Por que teste estático?
O teste estático é realizado devido aos seguintes motivos
- Detecção e correção antecipada de defeitos
- Prazos de desenvolvimento reduzidos
- Custo e tempo de teste reduzidos
- Para melhoria da produtividade do desenvolvimento
- Para obter menos defeitos em um estágio posterior de teste
O que é testado em testes estáticos
No teste estático, os itens a seguir são testados
- Casos de teste de unidade
- Documento de Requisitos de Negócios (BRD)
- Casos de Uso
- Requisitos do sistema / funcionais
- Protótipo
- Documento de Especificação de Protótipo
- Planilha de dicionário de campos do banco de dados
- Dados de teste
- Documento de matriz de rastreabilidade
- Manual do usuário / Guias de treinamento / Documentação
- Documento de Estratégia de Plano de Teste / Casos de Teste
- Scripts de teste de automação / desempenho
Como o teste estático é realizado
Para realizar o teste estático, ele é feito das seguintes maneiras,
- Realize o processo de inspeção para inspecionar completamente o design do aplicativo
- Use uma lista de verificação para cada documento em revisão para garantir que todas as revisões sejam cobertas completamente
As várias atividades para a realização de testes estáticos são:
- Validação de requisitos de casos de uso: valida se todas as ações do usuário final são identificadas, bem como qualquer entrada e saída associada a elas. Quanto mais detalhados e completos são os casos de uso, mais precisos e abrangentes podem ser os casos de teste.
- Validação de Requisitos Funcionais : Garante que os Requisitos Funcionais identifiquem todos os elementos necessários. Ele também examina a funcionalidade do banco de dados, as listagens de interface e os requisitos de hardware, software e rede.
- Revisão da arquitetura : todos os processos de nível de negócios, como locais de servidor, diagramas de rede, definições de protocolo, balanceamento de carga, acessibilidade de banco de dados, equipamento de teste, etc.
- Validação de protótipo / maquete de tela : Esta etapa inclui a validação de requisitos e casos de uso.
- Validação de dicionário de campo : cada campo na IU é definido bem o suficiente para criar casos de teste de validação em nível de campo. Os campos são verificados quanto ao comprimento mínimo / máximo, valores de lista, mensagens de erro, etc.
Técnicas de teste estático
- Críticas Informais
- Passo a passo
- Revisões Técnicas
- Inspeções
- Análise Estática
- Fluxo de dados
- Controle de fluxo
Ferramentas usadas para testes estáticos
Várias ferramentas usadas para testes estáticos são as seguintes,
- Checkstyle
- Fuligem
- SourceMeter
Dicas para um processo de teste estático bem-sucedido
Algumas dicas úteis para realizar um processo de teste estático em Engenharia de Software.
- Concentre-se apenas nas coisas que realmente contam
- Planeje e controle explicitamente as atividades de revisão. Um passo a passo e uma inspeção do software são geralmente compostos por avaliações feitas por colegas
- Treine os participantes com exemplos
- Resolva problemas de pessoal
- Mantenha o processo formal como a cultura do projeto
- Melhoria Contínua - Processo e Ferramentas
- Ao remover os principais atrasos na execução do teste, o custo e o tempo do teste podem ser reduzidos
Resumo:
- O teste estático é para encontrar defeitos o mais cedo possível.
- O teste estático não é um substituto para o teste dinâmico, ambos encontram um tipo diferente de defeitos
- Avaliações são uma técnica eficaz para testes estáticos
- As revisões não apenas ajudam a encontrar defeitos, mas também a compreender os requisitos ausentes, defeitos de design e código que não pode ser mantido.