Plano de teste
O que é um plano de teste?
Segundo o ISTQB, o plano de teste é um documento que descreve o escopo, a abordagem, os recursos e o cronograma das atividades de teste. Ele identifica, os itens de teste, as características que serão testadas, as tarefas de teste, quem fará cada tarefa, o grau de independência do testador, o ambiente de teste, as técnicas de design de teste e os critérios de entrada e saída a serem usados e a justificativa das escolhas além de identificar riscos que exijam planejamento de contingência.
O plano de teste serve como um plano para conduzir atividades de teste de software como um processo definido que é minuciosamente monitorado e controlado pelo gerente de teste.
Por que fazer um plano de teste
Fazer o plano de teste tem vários benefícios, aqui são elencados três:
-
O Plano de Teste nos ajuda a determinar o esforço necessário para validar a qualidade do aplicativo em teste. Ajude as pessoas de fora da equipe de teste, como desenvolvedores, gerentes de negócios e clientes, a entender os detalhes do teste.
-
Plano de teste orienta nosso pensamento. É como um livro de regras, que precisa ser seguido.
-
Aspectos importantes como estimativa de teste, escopo de teste, Estratégia de Teste são documentados no Plano de Teste, para que possam ser revisados pela Equipe de Gerenciamento e reutilizados para outros projetos.
Como escrever um plano de teste
Você já sabe que criar um Plano de Teste é a tarefa mais importante do Processo de Gerenciamento de Teste. Siga os sete passos abaixo para criar um plano de teste de acordo com o IEEE 829. É nesse padrão que o primeiro nível do exame de certificação ISTQB/ISEB, o chamnado Foundation Level, que aborda o desenvolvimento e a execução de testes e também a parte de administração e ferramentas para teste, está baseado
-
Analise o produto
-
Desenvolver a estratégia de teste
-
Definir os objetivos do teste
-
Definir critérios de teste
-
Planejamento de recursos
-
Planejar ambiente de teste
-
Agenda e Estimativa
-
Determinar os resultados do teste
A seguir, cada um desses passos é descrito em mais detalhes.
Analise o produto
Como você pode testar um produto sem qualquer informação sobre ele? A resposta é impossível. Você deve aprender um produto completamente antes de testá-lo.
Você deve pesquisar os clientes e os usuários finais para conhecer suas necessidades e expectativas a partir do aplicativo. Algumas perguntas devem ser respondidas nesse processo, mas as elencadas a seguir são indispensáveis:
-
Quem vai usar o site?
-
Para que isso é usado?
-
Como o produto vai funcionar?
-
Quais são o software/hardware usados pelo produto?
Além disso, a revisão da documentação do produto pode ajudar você a entender todos os seus recursos, bem como a usá-lo. Se você acredita que ainda há algo que não está claro, você pode entrevistar o cliente, desenvolvedor, designer para obter mais informações.
Desenvolver a estratégia de teste
A estratégia de teste é um passo crítico na criação de um plano de teste. Um documento de estratégia de teste, é um documento de alto nível, geralmente desenvolvido pelo Test Manager. Este documento define:
Os objetivos de teste do projeto e os meios para alcançá-los Determina o esforço e os custos do teste
De volta ao seu projeto, você precisa desenvolver uma estratégia de teste para testar esse site bancário. Você deve seguir os passos abaixo
Etapa 2.1) Definir o escopo do teste
Antes do início de qualquer atividade de teste, o escopo do teste deve ser conhecido. Você deve pensar muito sobre isso.
Os componentes do sistema a serem testados (hardware, software, middleware, etc.) são definidos como "no escopo".
Os componentes do sistema que não serão testados também precisam ser claramente definidos como "fora do escopo". Definir o escopo do seu projeto de teste é muito importante para todas as partes interessadas. Um escopo preciso ajuda você
Dê a todos uma confiança e informações precisas dos testes que você está fazendo
Todos os membros do projeto terão uma compreensão clara sobre o que é testado e o que não é
Como você determina o escopo do seu projeto?
Para determinar o escopo, você precisa:
-
Exigência precisa do cliente
-
Orçamento do projeto
-
Especificação do produto
-
Habilidades e talento da sua equipe de teste
Agora deve definir claramente o "escopo" e "fora do escopo" do teste.
Como as especificações de requisitos de software, o projeto Guru99 Bank apenas se concentra em testar todas as funções e interface externa do site Guru99 Bank (em teste de escopo) Testes não funcionais como estresse, desempenho ou banco de dados lógico atualmente não serão testados. (fora do escopo)
Cenário do Problema
O cliente quer que você teste sua API. Mas o orçamento do projeto não permite fazê-lo. Nesse caso, o que você fará?
Bem, nesse caso, você precisa convencer o cliente de que o teste do Api é um trabalho extra e consumirá recursos significativos. Dê a ele dados que apóiem seus fatos. Diga-lhe se o teste de Api está incluído no escopo, o orçamento aumentará em XYZ.
O cliente concorda e, consequentemente, os novos escopos, itens fora do escopo são
Itens no escopo: Teste funcional, teste de API Itens fora do escopo: teste de banco de dados, hardware e quaisquer outras interfaces externas
Etapa 2.2) Identifique o tipo de teste
Um tipo de teste é um procedimento de teste padrão que fornece um resultado de teste esperado.
Cada tipo de teste é formulado para identificar um tipo específico de problemas em um produto. Porém, todos os tipos de testes visam atingir um objetivo comum: "Detecção antecipada de todos os defeitos antes de liberar o produto para o cliente"
Os tipos de teste comumente usados são descritos como figura a seguir:
???? Figura dos testes ????
Há toneladas de tipos de teste para testar produtos de software. Sua equipe não pode ter esforços suficientes para lidar com todos os tipos de testes. Como Test Manager, você deve definir a prioridade dos tipos de teste
-
Quais tipos de teste devem ser focados para testes de aplicativos da Web?
-
Quais tipos de teste devem ser ignorados para economizar custos?
Agora vamos praticar com seu projeto. O produto que você quer testar é um site bancário.
Quais tipos de teste você deve focar neste caso?
Selecione tudo que se aplica
-
Testes Unitários
-
Teste de API
-
Teste de Integração
-
Teste do sistema
-
Teste de Instalação
-
Teste Agile
Etapa 2.3) Documentar os Riscos e possíveis problemas
O risco é um evento futuro que tem uma probabilidade de ocorrência e que tem um potencial de perda. Quando o risco acontece, torna-se um "problema".
No artigo Risk Analysis and Solution, você já aprendeu sobre a análise "Risco" em detalhes e identificou riscos potenciais no projeto.
No Plano de Teste, você documentará esses riscos
Risco | Como mitigar |
---|---|
O membro da equipe não possui as habilidades necessárias para o teste do website. |
Planeje um curso de treinamento para capacitar seus membros |
O cronograma do projeto é muito apertado; é difícil concluir esse projeto no prazo |
Definir prioridade de teste para cada uma das atividades de teste. |
Gerente de teste tem pouca habilidade de gerenciamento |
Treinamento de liderança de planejamento para gerente |
A falta de cooperação afeta negativamente a produtividade de seus funcionários |
Incentive cada membro da equipe em sua tarefa e inspire-os a maiores esforços. |
Estimativa incorreta do orçamento e excesso de custos |
Estabeleça o escopo antes de começar o trabalho, preste muita atenção ao planejamento do projeto e acompanhe e avalie constantemente o progresso |
Etapa 2.4) Criar Logística de Teste
Em Test Logistics, o Test Manager deve responder às seguintes perguntas:
-
Quem vai testar?
-
Quando o teste ocorrerá?
- Quem vai testar?
-
Você pode não saber o nome exatos do testador, mas o tipo de testador pode ser definido. Para selecionar o membro certo para a tarefa especificada, você deve considerar se a habilidade dele está qualificada para a tarefa ou não, também estimar o orçamento do projeto. Selecionar um membro errado para a tarefa pode causar falha ou atraso no projeto. A pessoa com as seguintes habilidades é a mais ideal para realizar testes de software:
-
Capacidade de entender o ponto de vista dos clientes
-
Forte desejo de qualidade
-
Atenção aos detalhes
-
Boa cooperação Em seu projeto, o membro que assumirá a execução do teste será o testador. Com base no orçamento do projeto, você pode escolher membro de origem ou terceirizar como testador.
Quando o teste ocorrerá?
As atividades de teste devem ser combinadas com atividades de desenvolvimento associadas.
???? figura ????
Definir o objetivo do teste
Objetivo do Teste é o objetivo geral e a representa a sua execução. O objetivo do teste é encontrar tantos defeitos de software quanto possível; Certifique-se de que o software em teste esteja livre de bugs antes do lançamento.
Para definir os objetivos do teste, você deve executar 2 etapas a seguir
-
Liste todos os recursos do software (funcionalidade, desempenho, GUI …) que podem precisar ser testados.
-
Defina o alvo ou o objetivo do teste com base nos recursos acima. Vamos aplicar estas etapas para encontrar o objetivo de teste do seu projeto de teste do Guru99 Bank
Você pode escolher o método "TOP-DOWN" para encontrar os recursos do website que precisam ser testados. Neste método, você divide o aplicativo em teste para componente e subcomponente.
No tópico anterior, você já analisou as especificações de requisitos e percorreu o site, para poder criar um mapa mental para encontrar os recursos do site da seguinte forma
Esta figura mostra todos os recursos que o site do Guru99 pode ter.
Com base nos recursos acima, você pode definir o Objetivo de Teste do projeto Guru99 da seguinte forma
-
Verifique se a funcionalidade do site Guru99 (Conta, Depósito …) está funcionando como esperado sem nenhum erro ou bugs no ambiente de negócios real
-
Verifique se a interface externa do site, como a interface do usuário, está funcionando como esperado e atende a necessidade do cliente
-
Verifique a usabilidade do site. Essas funcionalidades são convenientes para o usuário ou não?
Definir critérios de teste
Critérios de teste é um padrão ou regra na qual um procedimento de teste ou julgamento de teste pode ser baseado. Existem 2 tipos de critérios de teste da seguinte forma
Critérios de Suspensão
Especifique os critérios críticos de suspensão para um teste. Se os critérios de suspensão forem atendidos durante o teste, o ciclo de teste ativo será suspenso até que os critérios sejam resolvidos.
Exemplo: se os membros da sua equipe relatarem que 40% dos casos de teste falharam, você deverá suspender o teste até que a equipe de desenvolvimento corrija todos os casos com falha.
Critério de saída
Especifica os critérios que indicam uma conclusão bem-sucedida de uma fase de teste. Os critérios de saída são os resultados desejados do teste e são necessários antes de prosseguir para a próxima fase de desenvolvimento. Exemplo: 95% de todos os casos de teste críticos devem passar.
Alguns métodos de definição de critérios de saída estão especificando uma taxa de execução e uma taxa de aprovação desejadas.
A taxa de execução é a proporção entre o número de casos de teste executados / o total de casos de teste da especificação de teste. Por exemplo, a especificação do teste tem um total de 120 TCs, mas o testador executou apenas 100 TCs. Portanto, a taxa de execução é 100/120 = 0,83 (83%) A taxa de aprovação é a relação entre os casos de teste de números passados e os casos de teste executados. Por exemplo, em mais de 100 TCs executados, há 80 TCs que são aprovados, portanto, a taxa de aprovação é 80/100 = 0,8 (80%)
A taxa de execução é obrigatória para ser 100%, a menos que uma razão clara seja dada. A taxa de aprovação depende do escopo do projeto, mas alcançar uma alta taxa de aprovação é uma meta. Exemplo: Sua equipe já realizou as execuções de teste. Eles relatam o resultado do teste para você e querem que você confirme os Critérios de Saída.
No caso acima, a taxa de execução é obrigatória é de 100%, mas a equipe de teste concluiu apenas 90% dos casos de teste. Isso significa que a taxa de execução não está satisfeita, portanto, NÃO confirme os critérios de saída
Planejamento de recursos
O plano de recursos é um resumo detalhado de todos os tipos de recursos necessários para concluir a tarefa do projeto. Recursos podem ser humanos, equipamentos e materiais necessários para concluir um projeto
O planejamento de recursos é um fator importante do planejamento do teste, pois ajuda a determinar o número de recursos (funcionários, equipamentos, etc.) a serem usados no projeto. Portanto, o Test Manager pode fazer o cronograma e a estimativa corretos para o projeto.
Esta seção representa os recursos recomendados para o seu projeto
Planejar ambiente de teste
Um ambiente de teste é uma configuração de software e hardware na qual a equipe de testes executará os casos de teste. O ambiente de teste consiste em ambiente real de negócios e de usuário, bem como ambientes físicos, como servidor, ambiente de execução front-end.
Como configurar o ambiente de teste
De volta ao seu projeto, como você configura o ambiente de teste para este site bancário?
Para concluir esta tarefa, você precisa de uma forte cooperação entre a equipe de teste e a equipe de desenvolvimento
Você deve fazer algumas perguntas ao desenvolvedor para entender claramente o aplicativo da Web sob teste. Aqui estão algumas perguntas recomendadas. Claro, você pode fazer as outras perguntas se precisar.
-
Qual é a conexão máxima do usuário que esse site pode manipular ao mesmo tempo?
-
Quais são os requisitos de hardware / software para instalar este site?
-
O computador do usuário precisa de alguma configuração específica para navegar no site?
Agenda e Estimativa
Agora você deve incluir essa estimativa, bem como a programação para o Planejamento do Teste
Na fase de Estimativa de Teste, suponha que você quebre o projeto inteiro em pequenas tarefas e adicione a estimativa para cada tarefa como abaixo
Em seguida, você cria o agendamento para concluir essas tarefas.
Fazer cronograma é um termo comum no gerenciamento de projetos. Ao criar um cronograma sólido no Planejamento de Testes, o Test Manager pode usá-lo como ferramenta para monitorar o progresso do projeto, controlar os custos excedidos.
Para criar o cronograma do projeto, o Test Manager precisa de vários tipos de entrada, conforme abaixo:
Prazo para funcionários e projetos: os dias úteis, o prazo final do projeto, a disponibilidade de recursos são os fatores que afetaram o cronograma
Estimativa de projeto: Com base na estimativa, o Test Manager sabe quanto tempo leva para concluir o projeto. Então ele pode fazer o cronograma do projeto apropriado
Risco do Projeto: Entender o risco ajuda o Test Manager a adicionar tempo extra suficiente ao cronograma do projeto para lidar com os riscos
Determinar os produtos do teste
É uma lista com todos os documentos, ferramentas e outros componentes que devem ser desenvolvidos e mantidos para apoiar o esforço de teste.
Existem diferentes entregas de teste em todas as fases do ciclo de vida de desenvolvimento de software.
Produtos fornecidos antes da fase de teste.
-
Documento de planos de teste.
-
Documentos de casos de teste
-
Especificações de design de teste.
Produtos fornecidos durante o teste
-
Scripts de teste
-
Simuladores
-
Dados de teste
-
Matriz de rastreabilidade de teste
-
Logs de erro e logs de execução.
Os resultados finais do teste são fornecidos após o término dos ciclos de testes.
-
Resultados de testes / relatórios
-
Relatório de Defeitos
-
Diretrizes para procedimentos de instalação / teste
-
Notas de lançamento
Diretrizes do plano de teste
-
Faça o plano conciso. Evite redundância e supérfluo. Se você acha que não precisa de uma seção mencionada no modelo acima, vá em frente e exclua essa seção no seu plano de teste.
-
Seja específico. Por exemplo, quando você especifica um sistema operacional como uma propriedade de um ambiente de teste, mencione também o OS Edition / Version, não apenas o nome do sistema operacional.
-
Faça uso de listas e tabelas sempre que possível. Evite parágrafos longos.
-
Faça com que o plano de teste seja revisado várias vezes antes de fazer o baselining ou enviá-lo para aprovação. A qualidade do seu plano de teste fala muito sobre a qualidade dos testes que você ou sua equipe irão realizar.
-
Atualize o plano como e quando necessário. Um documento desatualizado e não utilizado fede e é pior do que não ter o documento em primeiro lugar.