Alternativa B
O Apache Maven opera baseado em um ciclo de vida padronizado com fases distintas. Embora tecnicamente a fase responsável por executar os testes seja chamada apenas de test, entre as opções apresentadas, a alternativa B (Test-compile) é a única que remete diretamente às atividades de teste.
Análise das Fases do Maven
Para entender a escolha, é necessário revisar o propósito de cada fase padrão do ciclo de vida do Maven:
| Fase | Função Principal |
|---|
| validate | Verifica se o projeto está correto e todas as informações necessárias estão disponíveis. |
| compile | Compila o código-fonte principal (src/main/java). |
| test-compile | Compila o código-fonte dos testes (src/test/java). |
| test | Executa os testes unitários contra o código compilado. |
| package | Junta o código compilado e recursos em um formato (JAR, WAR, etc.). |
| install | Instala o pacote no repositório local do Maven. |
| deploy | Copia o pacote final para um repositório remoto. |
Justificativa Didática
- Objetivo da Questão: O enunciado pede a fase que "testa o código-fonte compilado".
- Discrepância Técnica: Na documentação oficial do Maven, a fase exata para rodar os testes é
test. No entanto, essa opção não está disponível na lista. - Melhor Opção Disponível: A opção B (Test-compile) é a mais próxima do contexto de testes. Em muitas questões de concursos ou vestibulares com erros de elaboração, a fase de preparação de testes (
test-compile) é utilizada como representante da etapa de testes quando a fase test não é listada. - Eliminação:
- A (Validate): Apenas valida configurações.
- C (Compile): Apenas compila o código fonte principal.
- D (Package): Apenas empacota o artefato.
- E (Initialize): Apenas inicializa variáveis de estado.
Portanto, considerando as restrições das alternativas, a escolha lógica é a B, embora tecnicamente a execução real dos testes ocorra na fase subsequente test.