NÃO é uma característica do desenvolvimento orientado a comp...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a C - Desenvolver os testes com foco nos detalhes técnicos para entender a causa de uma falha. O desenvolvimento orientado a comportamento (Behavior Driven Development - BDD) é uma metodologia ágil de desenvolvimento de software que enfatiza a colaboração entre desenvolvedores, QA (Quality Assurance) e partes não técnicas como negócios ou clientes. O objetivo é desenvolver softwares que atendam às necessidades do usuário final.
Para resolver essa questão, é necessário compreender os princípios por trás da metodologia BDD, que valoriza:
- Uma linguagem ubíqua, que é uma linguagem compartilhada utilizada por todos os envolvidos no projeto, evitando ambiguidades.
- O Desenvolvimento de Fora para Dentro, começando pelo comportamento esperado pelo usuário e depois desenvolvendo o interior da aplicação, garantindo que a implementação esteja alinhada com o comportamento.
- Os cenários de testes servem como documentação viva, descrevendo o comportamento da aplicação através de exemplos concretos.
- Focar em um entendimento claro das necessidades do negócio, ao invés de detalhes técnicos na fase inicial de escrita dos testes.
A alternativa C é incorreta dentro do contexto do BDD pois o foco da metodologia é no comportamento do software do ponto de vista do usuário, não nos detalhes técnicos de implementação. Embora o diagnóstico técnico seja parte do desenvolvimento de software, no contexto do BDD, o desenvolvimento dos testes se concentra em refletir o comportamento esperado do sistema e não a análise técnica detalhada que leva ao entendimento das falhas.
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
As práticas de BDD incluem:
- Envolver as partes interessadas no processo através de Outside-in Development (Desenvolvimento de Fora pra Dentro)
- Usar exemplos para descrever o comportamento de uma aplicação ou unidades de código
- Automatizar os exemplos para prover um feedback rápido e testes de regressão
- Usar deve (should em inglês) na hora de descrever o comportamento de software para ajudar esclarecer responsabilidades e permitir que funcionalidades do software sejam questionadas
- Usar dublês de teste (mocks, stubs, fakes, dummies, spies) para auxiliar na colaboração entre módulos e códigos que ainda não foram escritos
BDD é técnica de desenvolvimento ágil que visa integrar regras de negócios com linguagem de programação, focando o comportamento do software. Além disso, pode-se dizer também, que BDD é a evolução do TDD. Isto porque, os testes ainda orientam o desenvolvimento, ou seja, primeiro se escreve o teste e depois o código.
O foco em BDD é a linguagem e as interações usadas no processo de desenvolvimento de software. Desenvolvedores que se beneficiam destas técnicas escrevem os testes em sua língua nativa em combinação com a linguagem ubíqua (Ubiquitous Language).
Isso permite que eles foquem em por que o código deve ser criado, ao invés de detalhes técnicos, e ainda possibilita uma comunicação eficiente entre as equipes de desenvolvimento e testes.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo