Em certa instituição, a equipe de engenharia de software ado...
Entre as seguintes práticas elencadas a seguir, a que seria mais eficaz para identificar regressões de software e assegurar que as funcionalidades existentes continuem funcionando corretamente à medida que novas partes do sistema são integradas é:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Para resolver essa questão, é essencial entender o tema central, que é a garantia da qualidade de software em um processo de desenvolvimento incremental. Essa abordagem é usada para garantir que as novas funcionalidades não comprometam as já existentes, um conceito crucial em ambientes ágeis e de integração contínua.
O método mais eficaz mencionado na questão é o uso de testes de regressão automatizados. Esses testes são projetados para verificar que as funcionalidades já implementadas continuam funcionando corretamente após novas alterações ou adições ao código.
Alternativa correta: D - Adotar uma abordagem de testes de regressão automatizados. Essa estratégia permite que a equipe execute rapidamente um conjunto de testes que validam não só as novas funcionalidades, mas também garantem que as funcionalidades antigas não foram impactadas por novas alterações. É uma prática comum e recomendada em engenharia de software, especialmente com o suporte de ferramentas de automação, como Selenium, JUnit, entre outras.
Vamos analisar por que as outras alternativas estão incorretas:
Alternativa A: Focar principalmente em testes unitários não é suficiente para identificar regressões, pois testes unitários verificam funcionalidades isoladamente, sem cobrir a integração entre módulos.
Alternativa B: Executar testes de aceitação apenas ao final não permite identificar regressões ao longo do desenvolvimento. Testes de aceitação são importantes, mas realizados no final do ciclo são insuficientes para detectar problemas introduzidos durante as iterações.
Alternativa C: Implementar testes de sistema no início de cada iteração sem repetir testes das funcionalidades já implementadas falha em garantir que mudanças recentes não afetaram o sistema completo.
Alternativa E: Conduzir revisões de código manuais pode detectar alguns problemas, mas é ineficaz para garantir a não regressão de funcionalidades de forma abrangente e contínua.
A chave para interpretar questões como essa é prestar atenção aos objetivos da estratégia de teste: assegurar a funcionalidade contínua e identificar regressões. Sempre relacione práticas com seus objetivos específicos no contexto de melhoria contínua e integração.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Em uma abordagem de desenvolvimento incremental, as funcionalidades são adicionadas ao sistema gradualmente. Garantir que as alterações não introduzam regressões (problemas em funcionalidades já existentes) é essencial para manter a qualidade do software.
Testes de regressão automatizados permitem verificar rapidamente se as funcionalidades existentes continuam funcionando como esperado após a integração de novas partes do sistema.
Gabarito: D
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo