Teste Estático
Resumo CTFL 4.0
06/09/24 - Ana Carolina Rodrigues Rocha
Este conteúdo é um resumo do capítulo 3 do syllabus 4.0 para
Certified Tester Foundation Level - CTFL
, presente no quadro do ISTQB. Este resumo é baseado na versão
brasileira fornecida pelo
BSTQB.
É muito importante que você veja o significado linkado nas palavras-chave descritas, pois serão utilizadas
durante
todo o syllabus.
Você poderá revisar este conteúdo com base nos flashcards que criei no Brainscape.
Quaisquer erros ou incoerências que encontrar aqui, por favor entre em contato comigo pelo e-mail do rodapé.
Bons estudos ;) .
- Aprender sobre os fundamentos dos testes estáticos.
- Aprender sobre o processo de feedback e revisão.
Nos testes estáticos o software não precisa ser executado, é onde os produtos de trabalho são avaliados por meio de revisões ou análises estáticas. Os objetivos incluem melhoria da qualidade, detecção de defeitos e avaliação de características (ex.: legibilidade, testabilidade). Ele pode ser utilizado na Verificação e na Validação. A escrita colaborativa entre os stakeholders e integrantes das equipes nas histórias de usuário é essencial, é onde os Testadores ajudam a melhorar as histórias de usuário.
Segue o princípio do teste antecipado, onde identifica problemas antes dos testes dinâmicos. Na análise estática do código é frequentemente incorporada às estruturas de CI e avalia também a capacidade de manutenção e a segurança. Em documentos, verificadores ortográficos e outras ferramentas podem ser incorporadas.
Os produtos de trabalho que são difícieis de serem interpretados por seres humanos e por ferramentas não são apropriados para testes estáticos.
Qualquer produto de trabalho que possa ser lido e compreendido pode ser objeto de uma revisão ou análise estática, na análise os produtos de trabalho precisam de uma estrutura modelo.
- Segue o princípio do teste antecipado.
- Identifica defeitos não encontrados nos testes dinâmicos.
- Avalia a qualidade e confiança nos produtos de trabalho.
- Melhora a Validação além da Verificação.
- Diminui os custos e esforços na correções de defeitos.
Os testes dinâmicos e estáticos se complementam e visam detectar defeitos e avaliar a qualidade em produtos de trabalho. Mas suas difenças são:
Testes Estáticos:- Há tipos de defeitos que só podem ser encontrados por testes estáticos, como código inacessível, padrões de projeto, defeitos em produtos de trabalho não executáveis.
- Encontra defeitos diretamente no produto de trabalho.
- É aplicado em produtos de trabalho que podem ou não ser executados.
- Encontra defeitos que podem nunca ser executados.
- Mede características de qualidade que não dependem da execução do código. Ex.: Capacidade de manutenção.
- Há tipos de defeitos que só podem ser encontrados por testes dinâmicos.
- O defeito será identificado apenas após uma análise da causa da falha provocada durante a execução do software.
- Só é aplicado a produtos de trabalho que podem ser executados.
- Mede características de qualidade que dependem da execução do código. Ex.: Eficiência de performance.
- Defeitos nos requisitos (incosistências, contradições, etc).
- Defeitos de projeto (estrutura de banco de dados, etc).
- Defeitos de codificação (variáveis não declaradas, código duplicado, etc).
- Desvios dos padrões (padrões de condificação, projeto, etc).
- Especificação incorreta da interface (número, tipo, ordem de parâmetros).
- Vulnerabilidade de segurança (estouro de buffer).
- Lacunas na cobertura da base de testes (testes ausentes para um critério de aceite, etc).
De acordo com o site Significados, Feedback é uma palavra inglesa que significa realimentar ou dar resposta a um determinado pedido, ou acontecimento (feed = alimentar e back = de volta). Está presente tanto no meio empresarial como nas relações humanas. Basicamente, o feedback consiste em alguém entregar algo (trabalho, serviço, produto e até mesmo atitudes ou conversas) e receber uma resposta quanto a isso. Sendo assim, a palavra o feedback seria uma resposta ou reação, podendo ser um feedback positivo ou negativo.
De acordo com o Glossary ISTQB, Revisão é um tipo de teste estático no qual a qualidade de um produto de trabalho é avaliada por indivíduos.
Neste indíce veremos como o processo de revisão e feeedback das revisões se relacionam entre si, a sua importância, atividades, funções, responsabilidades, fatores de sucesso e os tipos de revisões.
O feedback antecipado e frequente permite a comunicação precoce de possíveis problemas de qualidade, ajuda a evitar mal-entendidos sobre os requisitos, melhora a compreensão do que está sendo desenvolvido, permite que a equipe se concentre nos itens que são mais valiosos para os stakekholders e para o produto.
Realizar o feedback antecipado e frequente pode evitar entregar trabalhos não desejados e consequentemente o retrabalho, perda de prazos, jogos de culpa e o fracasso total do projeto.
O processo de revisão pode ser adaptado de acordo com o produto de trabalho a ser testado, podendo ou não utilizar todos as atividades descritas aqui. Em um produto de trabalho muito grande o processo de revisão pode ser invocado mais de um vez.
- Planejamento: É definido o escopo da revisão com o objetivo, o produto de trabalho a ser avaliado, as características a serem avaliadas, as áreas de foco, critérios de saída, as informações de apoio (padrões, esforço) e o prazo da revisão.
- Início da revisão: Garante que todos os envolvidos tenham acesso ao produto de trabalho, estando preparados para revisão.
- Revisão individual: Cada revisor realiza uma revisão individual, utilizando ou não técnicas e registrando as anomalias, recomendações e perguntas encontradas.
- Comunicação e análise de Problemas: Nem toda anomalia é um defeito, então elas precisam ser análisadas e discutidas, onde uma tomada de decisão será feita para elas. Aqui também pode ser definido o nível da qualidade do produto e quais ações de acompanhento são necessárias.
- Correção e relatório: Cada defeito tem um relatório e ações corretivas. Quando o critério de saída é atingido, o produto de trabalho é aceito e os resultadods das revisões são relatados.
- Gerente: decide o que deve ser revisado e fornece recursos.
- Autor: cria e corrige o produto de trabalho.
- Moderador: facilitador, faz a mediação e garante o andamento das reuniões com um ambiente seguro e com tempo gerenciado.
- Revisor: realiza revisões.
- Líder da revisão: assume a responsabilidade pela revisão, decide os envolvidos, quando e onde acontecerá a revisão.
Alguns tipos de revisão são:
- Revisão informal: não seguem um processo definido e não exige um resultado formalmente documentado. Seu principal objetivo é detectar anomalias.
- Walkthrough: É um Passo a Passo, conduzido pelo autor que pode ter objetivos além de detectar anomalias, como avaliar a qualidade, criar confiança no objeto de teste, instruir revisores, obter consenso e motivar os autores.
- Revisão Técnica: É uma revisão realizada por técnicos qualificados e liderada por um moderador. Tem objetivos além de detectar anomalias, como tomar decisões em relação a um problema técnico, avaliar a qualidade, criar confiança, gerar novas ideias, capacitar e motivar os autores.
- Inspeção: É o processo mais formal de revisão, seguindo o processo genérico com todas as atividades no processo de revisão (3.2.2). Tem objetivos além de detectar as anomalias, como avaliar a qualidade, criar confiança e motivar os autores. Aqui as métricas são coletadas para melhorar os processos e as responsabilidades dentro da revisão são distintas.
As revisões podem ser mais formais ou mais informais, para definir o tipo de revisão é necessário saber da formalidade necessária, do SDLC, da maturidade do desenvolvimento, da importância e complexidade do produto, dos requisitos legais ou regulamentares e da necessidade de auditoria. Também é necessário alinhar aos objetivos, necessidades do projeto, recursos disponíveis, tipos e riscos, o domínio do negócio e a cultura da empresa.
- Definir objetivos claros com critérios de saída mensuráveis.
- Escolher o tipo de revisão apropriado ao projeto, aos participantes e conforme o objetivo.
- Realizar revisões em pequenas partes.
- Fornecer feedback das revisões aos autores e stakeholders para aprimoramento.
- Fornecer tempo suficiente aos participantes para se prepararem para revisão.
- Tornar revisões parte da cultura, aprimorando os processos e promovendo o aprendizado.
- Fornecer treinamento adequado aos participantes.
- Ter reuniões facilitadas.