Podcast
Questions and Answers
Qual é um objetivo típico do teste de software?
Qual é um objetivo típico do teste de software?
- Corrigir imediatamente todos os defeitos encontrados.
- Aprovar o software para lançamento sem ressalvas.
- Criar a documentação do usuário.
- Identificar os objetivos típicos de teste. (correct)
Qual a diferença fundamental entre teste e depuração?
Qual a diferença fundamental entre teste e depuração?
- Depuração é feita por testadores, teste por desenvolvedores.
- Teste identifica defeitos, depuração os corrige. (correct)
- Não há diferença, são sinônimos.
- Teste é automatizado, depuração é manual.
Qual a consequência comum de softwares que não funcionam corretamente?
Qual a consequência comum de softwares que não funcionam corretamente?
- Aumento da satisfação do cliente.
- Aumento na velocidade de desenvolvimento.
- Melhora na reputação da empresa.
- Perda de dinheiro. (correct)
Qual é o principal propósito do teste de software?
Qual é o principal propósito do teste de software?
Qual das alternativas a seguir NÃO é uma atividade de teste?
Qual das alternativas a seguir NÃO é uma atividade de teste?
Qual das alternativas a seguir É uma atividade de teste?
Qual das alternativas a seguir É uma atividade de teste?
Com o que o teste de software deve estar alinhado?
Com o que o teste de software deve estar alinhado?
Qual é o principal objetivo das atividades de teste?
Qual é o principal objetivo das atividades de teste?
O que o teste de software também valida?
O que o teste de software também valida?
Qual habilidade é essencial para um bom teste de software?
Qual habilidade é essencial para um bom teste de software?
Qual é o objetivo principal de se encontrar defeitos no software?
Qual é o objetivo principal de se encontrar defeitos no software?
O que significa 'verificar a conformidade com os requisitos'?
O que significa 'verificar a conformidade com os requisitos'?
Qual é o resultado de fornecer informações para a tomada de decisão através dos testes?
Qual é o resultado de fornecer informações para a tomada de decisão através dos testes?
O que pode variar de acordo com o contexto, nível e ciclo de vida?
O que pode variar de acordo com o contexto, nível e ciclo de vida?
Qual atividade é parte da depuração?
Qual atividade é parte da depuração?
O que o teste mostra?
O que o teste mostra?
Quais objetivos os testes ajudam a atingir?
Quais objetivos os testes ajudam a atingir?
O que os testes contribuem para os sistemas?
O que os testes contribuem para os sistemas?
Qual é a relação entre Teste e QA?
Qual é a relação entre Teste e QA?
O que significa QA (Quality Assurance)?
O que significa QA (Quality Assurance)?
Os resultados dos testes são usados por QA e QC para...
Os resultados dos testes são usados por QA e QC para...
No processo de QA, os resultados dos testes fornecem...
No processo de QA, os resultados dos testes fornecem...
O que é um erro no contexto de testes de software?
O que é um erro no contexto de testes de software?
Quando um defeito é executado, o que acontece?
Quando um defeito é executado, o que acontece?
O que é um defeito (bug)?
O que é um defeito (bug)?
O que pode ser identificado por meio da análise de causa-raiz?
O que pode ser identificado por meio da análise de causa-raiz?
Quais são identificados por meio da análise de causa-raiz?
Quais são identificados por meio da análise de causa-raiz?
Qual dos princípios de teste afirma que testar tudo é inviável?
Qual dos princípios de teste afirma que testar tudo é inviável?
O que significa o princípio 'defeitos se agrupam'?
O que significa o princípio 'defeitos se agrupam'?
O que significa o princípio 'os testes se degradam'?
O que significa o princípio 'os testes se degradam'?
De que forma os testes são realizados?
De que forma os testes são realizados?
De acordo com o princípio da 'falácia da ausência de defeitos', o que acontece se o sistema construído não atende às expectativas dos usuários?
De acordo com o princípio da 'falácia da ausência de defeitos', o que acontece se o sistema construído não atende às expectativas dos usuários?
O que um processo de teste possui?
O que um processo de teste possui?
O que envolve o planejamento do teste?
O que envolve o planejamento do teste?
O que é Monitoramento no contexto do teste?
O que é Monitoramento no contexto do teste?
Na análise do teste, qual é o primeiro passo?
Na análise do teste, qual é o primeiro passo?
O que se determina na modelagem do teste?
O que se determina na modelagem do teste?
O que são criados e priorizados na implementação do teste?
O que são criados e priorizados na implementação do teste?
O que se faz durante a execução do teste?
O que se faz durante a execução do teste?
O que acontece durante a conclusão do teste?
O que acontece durante a conclusão do teste?
No processo de teste, com que as atividades de teste são parte integrante?
No processo de teste, com que as atividades de teste são parte integrante?
Por quem os testes são financiados??
Por quem os testes são financiados??
Flashcards
Teste de Software
Teste de Software
Avalia a qualidade do software e reduz o risco de falha em operação.
Teste
Teste
Mostra falhas causadas por defeitos no software.
Depuração (Debug)
Depuração (Debug)
Reproduzir a falha, diagnosticar a causa e corrigir.
Por que o teste é necessário?
Por que o teste é necessário?
Signup and view all the flashcards
Contribuições do teste
Contribuições do teste
Signup and view all the flashcards
Teste e Controle de Qualidade (QC)
Teste e Controle de Qualidade (QC)
Signup and view all the flashcards
Controle de Qualidade (QC)
Controle de Qualidade (QC)
Signup and view all the flashcards
Garantia da Qualidade (QA)
Garantia da Qualidade (QA)
Signup and view all the flashcards
Causa-Raiz
Causa-Raiz
Signup and view all the flashcards
Teste e defeitos
Teste e defeitos
Signup and view all the flashcards
Testes antecipados
Testes antecipados
Signup and view all the flashcards
Falácia da ausência de defeitos
Falácia da ausência de defeitos
Signup and view all the flashcards
Processo de Teste
Processo de Teste
Signup and view all the flashcards
Planejamento do Teste
Planejamento do Teste
Signup and view all the flashcards
Monitoramento do teste
Monitoramento do teste
Signup and view all the flashcards
Controle do teste
Controle do teste
Signup and view all the flashcards
Análise do Teste
Análise do Teste
Signup and view all the flashcards
Modelagem do Teste
Modelagem do Teste
Signup and view all the flashcards
Implementação do Teste
Implementação do Teste
Signup and view all the flashcards
Execução do Teste
Execução do Teste
Signup and view all the flashcards
Conclusão do Teste
Conclusão do Teste
Signup and view all the flashcards
Teste no Contexto
Teste no Contexto
Signup and view all the flashcards
Habilidades para Testadores
Habilidades para Testadores
Signup and view all the flashcards
Habilidades Genéricas
Habilidades Genéricas
Signup and view all the flashcards
Abordagem de equipe
Abordagem de equipe
Signup and view all the flashcards
Independência dos testes
Independência dos testes
Signup and view all the flashcards
Study Notes
O que é Teste?
- FL-1.1.1 (K1) Visa identificar os objetivos típicos de teste.
- FL-1.1.2 (K2) Visa diferenciar o teste da depuração.
- Softwares que não funcionam podem resultar em consequências financeiras, de tempo, reputação e até mesmo ferimentos ou morte.
- Teste de Software avalia a qualidade do software e ajuda a reduzir o risco de falha em operação.
- Teste não é apenas executar o software e verificar resultados ou verificar requisitos específicos.
- Teste é planejamento, análise, modelagem, implementação, execução, relatórios e validação para atender às necessidades dos usuários.
- O teste de software deve estar alinhado com o ciclo de vida de desenvolvimento do software.
- As atividades de teste têm como propósito descobrir defeitos e avaliar a qualidade dos artefatos de software.
- O teste não só verifica se os requisitos são atendidos, mas também valida se as necessidades são atendidas.
- Apesar das ferramentas, o teste é, em grande parte, uma atividade intelectual que exige habilidades analíticas, pensamento crítico e sistêmico.
Objetivos do Teste
- Encontrar defeitos.
- Evitar defeitos.
- Criar confiança sobre o nível de qualidade.
- Fornecer informações para a tomada de decisão
- Avaliar produtos de trabalho.
- Garantir a cobertura necessária do objeto de teste.
- Reduzir o nível de risco.
- Verificar a conformidade com requisitos.
- Os objetivos do teste podem variar de acordo com o contexto, nível de teste e modelo de ciclo de vida.
Teste E Depuração
- O teste mostra falhas causadas por defeitos (bugs) no software.
- O teste confirma se um defeito foi corrigido através do teste de confirmação.
- Regressão é usada para verificar se tudo continua funcionando.
- Depuração reproduz a falha e diagnostica (encontrar a causa) para corrigi-la.
Razões Para a Necessidade de Testes
- Os testes ajudam a atingir objetivos acordados de escopo, tempo, qualidade e restrições orçamentárias.
- Todos podem testar conforme suas habilidades para colaborar com o sucesso do projeto.
- Os testes contribuem para sistemas de maior qualidade, removendo defeitos.
- O teste avalia a qualidade do sistema no SDLC, auxiliando decisões.
- Os testes atendem a requisitos contratuais, legais ou regulatórios.
- Testadores precisam entender as necessidades dos usuários dentro do ciclo de vida de desenvolvimento.
Garantia da Qualidade
- Teste e QA não são a mesma coisa. Teste é uma forma de controle de qualidade (QC).
- QC é uma abordagem corretiva orientada para o produto, focada em atividades que apoiam níveis adequados de qualidade.
- Na Garantia da Qualidade (QA), o teste desempenha um papel importante ao fornecer feedback sobre a performance.
- QA (Quality Assurance) é uma abordagem preventiva orientada para o processo.
- QA concentra-se na implementação e aprimoramento dos processos.
- Se um bom processo for seguido corretamente, ele gerará um bom produto.
Erros, Defeitos e Falhas
- Erro: Um ser humano comete um erro (engano).
- Defeito: Algo que produz um defeito (bug) no código ou documento
- Falha: Se um defeito é executado, o sistema falha.
- A falta de conhecimento, pressão no prazo, fatores emocionais.
- Falhas podem ser causadas por códigos complexos, infraestrutura complexa e mudanças na tecnologia.
- Alguns defeitos levam sempre a falhas, enquanto outros só em circunstâncias específicas. Alguns não levam a falhas.
- Falhas também podem ser causadas por condições ambientais (clima, campo eletromagnético, etc.).
- A causa-raiz é o motivo da ocorrência de um problema. A análise da causa-raiz é realizada quando uma falha ocorre ou quando um defeito é identificado.
- Se a causa-raiz for analisada e remediada, geralmente outras falhas ou defeitos semelhantes serão evitados no futuro.
Os Sete Princípios do Teste
- Princípio 1: O teste mostra a presença, não a ausência de defeitos. O teste demonstra a presença de defeitos, mas não prova que eles não existem.
- Princípio 2: Testes exaustivos são impossíveis. Não é viável testar tudo.
- Princípio 3: Testes antecipados economizam tempo e dinheiro. A atividade de teste deve começar o mais breve possível no ciclo de desenvolvimento.
- Princípio 4: Defeitos se agrupam. Um número pequeno de funções contém a maioria dos defeitos.
- Princípio 5: Os testes se degradam. Um mesmo conjunto de testes repetidos várias vezes pode não encontrar novos defeitos após um determinado momento. Os casos de testes necessitam ser frequentemente revisados e atualizados.
- Princípio 6: Os testes dependem do contexto. Testes são realizados de forma diferente conforme o contexto.
- Princípio 7: Falácia da ausência de defeitos. Encontrar e consertar defeitos não ajuda se o sistema construído não atende às expectativas dos usuários.
Atividades De Teste
- Não existe um processo universal de teste.
- O processo é o conjunto de atividades para maior probabilidade de atingir os objetivos.
- O processo de teste pode ser adaptado a uma determinada situação com base em vários fatores.
- O processo ideal depende de muitos fatores.
- Um processo de teste possui as seguintes atividades principais: Planejamento, Monitoramento e Controle
- Análise de Teste, Modelagem, Implementação, Execução e Conclusão.
- As atividades do teste podem ocorrer em paralelo.
Planejamento do Teste
- Envolve as atividades que definem os objetivos e a abordagem do teste dentro das restrições impostas pelo contexto.
- Os planos de teste podem ser revisitados com base no feedback das atividades de monitoramento e controle.
Monitoramento e Controle
- Monitoramento: Verificação contínua de todas as atividades de teste e comparação do progresso real com o plano de teste.
- Controle: Tomada de ações necessárias para atender aos objetivos do teste.
- O progresso é comunicado aos Stakeholders por meio de relatórios.
Análise do Teste
- Determina “O que” testar.
- Analisa a base de teste apropriada ao nível de teste (especificações, modelagens, código, etc).
- Identifica recursos testáveis, define e prioriza condições de teste e riscos.
- A base de teste e os objetos de teste também são avaliados para identificar defeitos que possam conter e para avaliar sua testabilidade.
- Geralmente é apoiada pelo uso de técnicas de teste .
Modelagem do Teste
- Determina “Como” testar.
- Transforma condições de teste em casos de teste e outros materiais (ex. cartas de teste)
- Identifica os itens de cobertura, que servem como guia para especificar as entradas do caso de teste.
- As técnicas de teste podem ser usadas para apoiar a modelagem.
- Inclui a definição dos dados de teste, projeto do ambiente de teste e a identificação da infraestrutura.
Implementação do Teste
- Criação ou a aquisição do material de teste necessário para a execução (ex. dados de teste)
- Os casos de teste podem ser organizados em procedimentos de teste (passos) e geralmente são reunidos em conjuntos de testes.
- Scripts de teste manuais e automatizados são criados.
- Os procedimentos de teste são priorizados e organizados em um cronograma de execução de teste.
- O ambiente de teste é criado e verificado quanto à configuração correta.
Execução do Teste
- Executar ou rodar os testes de acordo com o cronograma de execução.
- A execução do teste pode ser manual ou automatizada. Pode assumir várias formas.
- Os resultados atuais dos testes são comparados com os resultados esperados.
- Os resultados do teste são registrados.
- As anomalias (bugs) são analisadas para identificar suas causas prováveis.
- Esta análise permite relatar as anomalias com base nas falhas observadas.
Conclusão do Teste
- Ocorre nos marcos do projeto (Ex: lançamento, fim da iteração, conclusão do nível de teste).
- Qualquer material de teste que possa ser útil no futuro é identificado e arquivado.
- O ambiente de teste é encerrado em um estado acordado.
- As atividades de teste são analisadas para identificar as lições aprendidas e as melhorias futuras.
- Um relatório de conclusão do teste é criado e comunicado aos stakeholders.
Processo de Teste no Contexto
- As atividades de teste são parte integrante dos processos de desenvolvimento.
- Os testes são financiados pelos stakeholders e seu objetivo final é ajudar a atender às necessidades de negócio deles.
- Fatores do contexto que influenciam o teste: Stakeholders, Membros da equipe Domínio do negócio, Fatores técnicos e organizacionais.
- Restrições do projeto, Ciclo de vida de desenvolvimento, Ferramentas.
- Esses fatores impactarão a estratégia de teste, técnicas de testes usadas, grau de automação, nível de cobertura necessária
- Impacta tambem nível de detalhe da documentação e dos relatórios.
Testware
- Testware são produtos de trabalho de saída de cada atividade de teste.
- Cada organização produz, molda, nomeia, organiza e gerencia seus produtos de trabalho de uma forma diferente.
- A gestão de configuração garante a consistência e a integridade dos produtos de trabalho.
Planejamento do Teste
- Planos de Teste
- Cronograma de testes
- Registro de riscos
- Critérios de entrada e saída
Monitoramento e Controle
- Relatórios de progresso de testes
- Documentação de diretrizes de controle
- Informações sobre Riscos
Análise
- Condições de Teste definidas e priorizadas
- Relatórios de Defeitos não corrigidos diretamente
Modelagem
- Casos de Teste
- Carta de Teste
- Dados de Teste, Cobertura, Ambientes
Implementação
- Procedimentos de Teste (Passo a passo / Detalhamento)
- Scripts de Teste automatizado
- Conjuntos de Teste / Dados de Teste
- Cronograma de Execução
- Elementos do Ambiente de Teste (drivers, stubs, virtualização)
Execução
- Registros de Teste
- Relatórios de Defeitos
Conclusão
- Relatórios de Teste
- Itens de ação / lições aprendidas documentadas para melhoria dos próximos projetos
Rastreabilidade
- Para implementar o monitoramento e o controle eficazes dos testes, é importante estabelecer e manter a rastreabilidade em todo o processo de teste.
- A rastreabilidade precisa dá suporte à avaliação da cobertura, que é um indicador muito importante.
- A rastreabilidade dos casos de teste aos requisitos pode verificar se os requisitos são cobertos pelos casos de teste.
- A rastreabilidade dos resultados dos testes aos riscos pode ser usada para avaliar o nível de risco residual em um objeto de teste.
- A boa rastreabilidade permite determinar o impacto das mudanças, facilita as auditorias de teste e ajuda a atender os critérios de governança de TI.
- A boa rastreabilidade também torna o progresso do teste e os relatórios de conclusão mais compreensíveis.
- A rastreabilidade fornece informações para avaliar a qualidade do produto, a capacidade do processo e o progresso do projeto em relação aos objetivos de negócio.
Papéis nos Testes
- Gerenciamento de Teste tem responsabilidade pelo processo e equipe de teste e pela liderança das atividades de teste.
- O Testador tem responsabilidade pela engenharia (técnico) do teste, executa os testes, avalia os resultados e documenta, avalia as caracteristicas não funcionais.
- Gerenciamento de Teste envolve o planejamento, monitoramento, controle e conclusão de testes
- Os Papéis (gerenciamento e testador) variam de acordo com o contexto
- No desenvolvimento ágil, algumas das tarefas de gerenciamento de testes podem ser realizadas pela equipe ágil.
- As tarefas que abrangem várias equipes são executadas por gerentes de teste fora da equipe de desenvolvimento.
- Dependendo dos riscos do produto/projeto e do ciclo de vida, pessoas diferentes podem assumir o papel de testador em diferentes níveis de teste.
- Os papéis podem ser assumidos por pessoas diferentes e até uma unica pessoa.
Habilidades Genéricas dos Testadores
- Conhecimento sobre testes
- Meticulosidade, cuidado, curiosidade, atenção aos detalhes, ser metódico
- Ótimas habilidades de comunicação, senso crítico e criatividade
- Boas habilidades para trabalhar em equipe, tecnico e conhecimento do dominio.
- Em geral os testadores são portados de más noticias.
- Testadores independentes podem ser vistos como gargalo ou culpados por atrasos na liberação, e não ter informações importantes.
- Os testadores precisam comunicar defeitos de forma construtiva.
Abordagem De Equipe Completa
- Prática do XP (Extreme Programming).
- Qualquer membro da equipe com o conhecimento pode executar qualquer tarefa.
- Todos são responsáveis pela qualidade e compartilham o mesmo espaço de trabalho (físico ou virtual).
- Abordagem melhora a dinâmica e comunicação entre a equipe.
- Testadores trabalham em colaboração com os membros da equipe
- Auxiliam os representantes a criar testes mais adequados
- Testadores auxiliam na estratégia de teste
- Os Testadores podem transferir conhecimento aos outros membros
Independencia dos Testes
- São testes realizados por alguém que não seja o autor do código.
- Existem diferentes níveis de independência (quanto mais isolado o teste do desenvolvimento, mais independente)
- Sem independência - Sem testadores independentes, desenvolvedores testam seu proprio código
- Alguma independência - Desenvolvedores independentes ou testadores dentro das equipes
- Alta independência - Realizado por testadores de fora da equipe do autor
- Independência muito alta - Testadores independentes externos à organização.
- Vantagens da independencia é encontrar diferentes tipos de falhas
- Testador garante não ter ideia sobre o que testar não ter apego
- Desvantagens - Isolamento da equipe, erros e atraso no feedback
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.