Please enable JavaScript.
Coggle requires JavaScript to display documents.
2.1 - Testes no contexto de um Ciclo de Vida de Desenvolvimento de…
2.1 - Testes no contexto de um Ciclo de Vida de Desenvolvimento de Software (SDLC)
Um modelo SDLC define como as diferentes fases do desenvolvimento e os tipos de atividades realizadas nesse processo se relacionam entre si, tanto lógica quanto cronologicamente
Modelos de desenvolvimento iterativo
Modelo em espiral
Prototipagem
Modelos de desenvolvimento incremental
Processo Unificado
Modelos de Desenvolvimento sequencial
Cascata
Modelo em V
Algumas atividades nos processos de desenvolvimento de software também podem ser descritas por métodos de desenvolvimento de software mais detalhados e práticas ágeis
Feature-driven development (FDD)
Kanban
Extreme Programming (XP)
Lean IT
Domain-driven design (DDD)
Scrum
Desenvolvimento orientado pelo comportamento (BDD)
Desenvolvimento orientado por testes (TDD)
Desenvolvimento orientado por testes de aceite (ATDD)
Tópicos
2.1.3 - Testes como motivador para o desenvolvimento de software
O TDD, ATDD e BDD são abordagens de desenvolvimento semelhantes, em que os testes são definidos como meio de direcionar o desenvolvimento.
Cada uma dessas abordagens implementa o princípio de teste antecipado e segue uma abordagem shift-left
2.1.4 - DevOps e Testes
Os benefícios do DevOps do ponto de vista de testes
Promove processos automatizados, como CI/CD, que facilitam o estabelecimento de ambientes de testes estáveis
Aumenta a visão das características de testes não funcionais
O CI promove uma abordagem shift-left nos testes, incentivando os desenvolvedores a enviar códigos de alta qualidade acompanhados de testes de componentes e análise estática
A automação por meio de uma pipeline de entrega reduz a necessidade de testes manuais repetitivos
Feedback rápido sobre a qualidade do código e se as alterações afetam negativamente o código existente
O risco na regressão é minimizado devido à escala e ao alcance dos testes de regressão automatizados
2.1.2 - Ciclo de Vida de Desenvolvimento de Software e Boas Práticas de Teste
Diferentes níveis de teste têm objetivos de teste específicos e diferentes, o que permite que os testes sejam adequadamente abrangentes, evitando redundância
A análise e a modelagem do teste para um determinado nível de teste começam durante a fase de desenvolvimento correspondente do SDLC
Para cada atividade de desenvolvimento, há uma atividade de teste correspondente, de modo que todas as atividades de desenvolvimento estejam sujeitas ao controle de qualidade
Os testadores estão envolvidos na revisão dos produtos de trabalho assim que os rascunhos dessa documentação estiverem disponíveis
2.1.5 - Abordagem Shift-Left
Concluir a análise estática do código-fonte antes do teste dinâmico ou como parte de um processo automatizado
Realizar testes não funcionais começando no nível de teste de componente, sempre que possível
Usar a CI e, melhor ainda, a CD, pois ela vem com feedback rápido e testes de componentes automatizados para acompanhar o código-fonte quando ele é enviado ao repositório do código
Escrever casos de teste antes de o código ser escrito e fazer com que o código seja executado em um conjunto de testes durante a sua implementação
Revisão da especificação sob a perspectiva de testes
2.1.1 - Impacto do Ciclo de Vida de Desenvolvimento de Software nos Testes
A escolha do SDLC tem impacto sobre:
A escolha das técnicas de teste e da abordagem de testes
A expansão da automação de testes
O nível de detalhamento da documentação de teste
O papel e responsabilidades de um testador
O escopo e cronograma das atividades de teste
2.1.6 - Retrospectivas e melhoria de processos
Perguntas a responder
O que não foi bem sucedido e poderia ser melhorado
Como incorporar as melhorias e manter os sucessos no futuro?
O que foi bem sucedido e deve ser mantido?
Benefícios nos testes
Vínculo e aprendizado da equipe
Melhoria da qualidade da base de teste
Aumento da qualidade do material de teste
Melhor cooperação entre desenvolvimento e teste
Aumento da eficácia/eficiência do teste