Alternativa A - No ATDD, os testes são criados com base em critérios de aceite para orientar o desenvolvimento do software.
Análise Detalhada
O ATDD (Acceptance Test-Driven Development, ou Desenvolvimento Orientado por Testes de Aceite) é uma prática ágil onde os testes de aceitação são escritos antes do código funcional.
Por que a Alternativa A é a correta?
Esta é a definição fundamental da metodologia:
- Foco nos Critérios de Aceite: Os requisitos do negócio são traduzidos em cenários de teste claros e verificáveis.
- Orientação do Desenvolvimento: O desenvolvimento do software só começa após a definição desses testes. O código é escrito especificamente para fazer esses testes passarem.
Por que as outras alternativas estão incorretas ou são menos precisas?
- Alternativa B: Embora o formato "Dado/Quando/Então" (linguagem Gherkin) seja muito utilizado no ATDD (e especialmente no BDD) para documentar os testes, ele é uma ferramenta de sintaxe. A definição da abordagem não depende obrigatoriamente desse formato específico, mas sim da lógica dos critérios de aceite.
- Alternativa C: Embora o ATDD foque no comportamento desejado e facilite a comunicação, esta alternativa é mais genérica. O termo "comportamento desejado" remete fortemente ao BDD (Behavior Driven Development). O ATDD tem um foco mais técnico nos critérios de aceite que validam a entrega.
- Alternativa D: Descreve o TDD (Test-Driven Development) tradicional. No TDD, os testes são de baixo nível (unitários/componentes) e orientados diretamente pelo código interno, enquanto o ATDD foca no nível de negócio e nos critérios de aceite externos.
Resumo Comparativo
| Abordagem | Foco Principal | Tipo de Teste |
|---|
| ATDD | Critérios de Aceite (Requisitos) | Testes de Aceite / Cenários |
| TDD | Lógica do Código | Testes Unitários / Componentes |
| BDD | Comportamento do Sistema | Cenários narrativos (Gherkin) |
A alternativa A é a que melhor descreve o ciclo de vida do ATDD: definir o critério \rightarrow criar o teste \rightarrow desenvolver o código.