# Trilha de Testes / QA

ID: test
Versão: 2026-10-12.f0d8d707
Versão do formato: 1
Idioma: pt-BR
Licença do catálogo: MIT

Para quem quer investigar riscos e melhorar a qualidade de software.

Objetivo: Um portfólio com análise de risco, evidências, testes de API e web executados em CI.

## Fundamentos de qualidade

ID da etapa: test.fundamentos-de-qualidade
Percurso: Obrigatório · Fundamentos e prática

É possível começar por testes manuais e análise de produto. Automação vem depois de entender riscos, comportamento esperado e investigação de falhas.

### Fundamentos de teste

ID do grupo: test.fundamentos-de-teste

Aprenda objetivos, princípios, níveis de teste, critérios de aceite e a colaboração de QA com produto e desenvolvimento. Certificação é opcional.

Objetivos essenciais: test.fundamentos-de-teste.basics, test.fundamentos-de-teste.practice

Modo simple: test.fundamentos-de-teste.basics, test.fundamentos-de-teste.practice
Modo standard: test.fundamentos-de-teste.basics, test.fundamentos-de-teste.practice
Modo deep: test.fundamentos-de-teste.basics, test.fundamentos-de-teste.practice, test.fundamentos-de-teste.deepening

#### O básico

ID: test.fundamentos-de-teste.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.fundamentos-de-teste.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: test.fundamentos-de-teste.basics

Explique a diferença entre defeito e falha e escreva critérios de aceite verificáveis para uma funcionalidade.

Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.fundamentos-de-teste.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.fundamentos-de-teste.basics, test.fundamentos-de-teste.practice

Escolha uma decisão de Fundamentos de teste no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

### Seu assistente de estudos

ID do grupo: aiLearning.seu-assistente-de-estudos

Aprenda programação e uso de IA em paralelo. Escolha uma ferramenta a que já tenha acesso; os exercícios também funcionam em um chat, compartilhando trechos pequenos. Documentação gratuita não significa serviço gratuito: consulte os limites da sua conta. Você não precisa assinar nem dominar três ferramentas.

Objetivos essenciais: aiLearning.escolha-uma-ferramenta, aiLearning.pratique-tutoria

Modo simple: aiLearning.escolha-uma-ferramenta, aiLearning.pratique-tutoria
Modo standard: aiLearning.escolha-uma-ferramenta, aiLearning.pratique-tutoria
Modo deep: aiLearning.escolha-uma-ferramenta, aiLearning.pratique-tutoria, aiLearning.seu-assistente-de-estudos.deepening

IA: Desenvolvimento com IA

#### Escolha uma ferramenta

ID: aiLearning.escolha-uma-ferramenta
Tipo: concept
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: nenhum

Experimente uma opção neste momento. Para concluir esta etapa, basta abrir um exercício em uma ferramenta e localizar como conversar, fornecer contexto e revisar uma mudança.

Cursor: abra um projeto no editor, converse sobre um arquivo e forneça trechos ou arquivos como contexto. Peça uma alteração pequena, examine o diff e execute o exemplo.

Claude: use o chat com trechos fornecidos por você, ou Claude Code para trabalhar no projeto por terminal ou integrações de editor, se já tiver acesso. Siga o quickstart e peça uma explicação do repositório antes da primeira mudança.

Codex: consulte o quickstart e escolha a superfície disponível para sua conta, como aplicativo, editor ou terminal. Peça que explique o projeto e como executar o exercício; depois experimente uma mudança pequena.

Se ainda não tiver acesso a uma IA, siga os exercícios de programação e retome estas práticas quando uma opção estiver disponível.

Referências:

- [Cursor: uso do agente (inglês; documentação gratuita)](https://cursor.com/docs/agent/overview) | ID: resource.cursor | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: primeiros passos (inglês; documentação gratuita)](https://code.claude.com/docs/en/quickstart) | ID: resource.claude | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: primeiros passos com Codex (inglês; documentação gratuita)](https://developers.openai.com/codex/quickstart/) | ID: resource.codex | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique tutoria

ID: aiLearning.pratique-tutoria
Tipo: practice
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: aiLearning.escolha-uma-ferramenta

Faça uma tentativa, peça uma explicação ou pista e confira o resultado executando o exemplo. Solicite perguntas e exercícios de revisão. Quando a IA gerar código, leia, altere e teste esse código. Conclua esta etapa após responder uma pergunta sobre o exemplo e resolver uma pequena variação.

Prompt de estudo:

```text
Estou aprendendo [conceito] na trilha [nome].
Meu objetivo é [resultado pequeno e observável].
Já tentei [tentativa] e observei [resultado ou erro].
Use este trecho como contexto: [código ou exemplo sem dados privados].
Explique a ideia com um exemplo curto e faça uma pergunta para conferir minha compreensão.
Depois proponha uma variação do exercício. Aguarde minha tentativa antes de dar feedback.
```

Referências:

- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: aiLearning.seu-assistente-de-estudos.deepening
Tipo: challenge
Percurso: Aprofundamento opcional · Desenvolvimento com IA
Pré-requisitos: aiLearning.escolha-uma-ferramenta, aiLearning.pratique-tutoria

Escolha uma decisão de Seu assistente de estudos no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Cursor: uso do agente (inglês; documentação gratuita)](https://cursor.com/docs/agent/overview) | ID: resource.cursor | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: primeiros passos (inglês; documentação gratuita)](https://code.claude.com/docs/en/quickstart) | ID: resource.claude | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: primeiros passos com Codex (inglês; documentação gratuita)](https://developers.openai.com/codex/quickstart/) | ID: resource.codex | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

## Investigação e desenho de testes

ID da etapa: test.investigacao-e-desenho-de-testes
Percurso: Obrigatório · Fundamentos e prática



### Técnicas e riscos

ID do grupo: test.tecnicas-e-riscos

Use particionamento de equivalência, valores-limite, tabelas de decisão e testes de transição de estado. Priorize cenários pelo risco.

Objetivos essenciais: test.tecnicas-e-riscos.basics, test.tecnicas-e-riscos.practice

Modo simple: test.tecnicas-e-riscos.basics, test.tecnicas-e-riscos.practice
Modo standard: test.tecnicas-e-riscos.basics, test.tecnicas-e-riscos.practice
Modo deep: test.tecnicas-e-riscos.basics, test.tecnicas-e-riscos.practice, test.tecnicas-e-riscos.deepening

#### O básico

ID: test.tecnicas-e-riscos.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.tecnicas-e-riscos.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: test.tecnicas-e-riscos.basics

Crie casos para um formulário com limites de idade ou valor e justifique quais têm maior prioridade.

Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.tecnicas-e-riscos.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.tecnicas-e-riscos.basics, test.tecnicas-e-riscos.practice

Escolha uma decisão de Técnicas e riscos no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

### Testes exploratórios e relato de bugs

ID do grupo: test.testes-exploratorios-e-relato-de-bugs

Escreva charters, registre evidências e reporte passos, ambiente, resultado esperado e observado. Ferramentas de gestão são alternativas, não pré-requisitos.

Objetivos essenciais: test.testes-exploratorios-e-relato-de-bugs.basics, test.testes-exploratorios-e-relato-de-bugs.practice

Modo simple: test.testes-exploratorios-e-relato-de-bugs.basics, test.testes-exploratorios-e-relato-de-bugs.practice
Modo standard: test.testes-exploratorios-e-relato-de-bugs.basics, test.testes-exploratorios-e-relato-de-bugs.practice
Modo deep: test.testes-exploratorios-e-relato-de-bugs.basics, test.testes-exploratorios-e-relato-de-bugs.practice, test.testes-exploratorios-e-relato-de-bugs.deepening

#### O básico

ID: test.testes-exploratorios-e-relato-de-bugs.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.testes-exploratorios-e-relato-de-bugs.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: test.testes-exploratorios-e-relato-de-bugs.basics

Faça uma sessão exploratória e produza um bug report que outra pessoa consiga reproduzir.

Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.testes-exploratorios-e-relato-de-bugs.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.testes-exploratorios-e-relato-de-bugs.basics, test.testes-exploratorios-e-relato-de-bugs.practice

Escolha uma decisão de Testes exploratórios e relato de bugs no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

## IA: prompting e contexto

ID da etapa: aiLearning.ia-prompting-e-contexto
Percurso: Obrigatório · Desenvolvimento com IA

Depois dos primeiros fundamentos, pratique transformar uma dúvida em uma tarefa verificável. Use uma ferramenta por vez.

### Prompts para aprender e construir

ID do grupo: aiLearning.prompts-para-aprender-e-construir

Expresse objetivo, contexto, limites e como conferir o resultado. Mostre sua tentativa e exemplos de entrada/saída. Peça uma resposta no nível de quem está aprendendo e faça perguntas quando algo não estiver claro. Ajuste o prompt a partir do resultado, sem decorar fórmulas.

Objetivos essenciais: aiLearning.prompts-para-aprender-e-construir.basics, aiLearning.prompts-para-aprender-e-construir.practice

Modo simple: aiLearning.prompts-para-aprender-e-construir.basics, aiLearning.prompts-para-aprender-e-construir.practice
Modo standard: aiLearning.prompts-para-aprender-e-construir.basics, aiLearning.prompts-para-aprender-e-construir.practice
Modo deep: aiLearning.prompts-para-aprender-e-construir.basics, aiLearning.prompts-para-aprender-e-construir.practice, aiLearning.prompts-para-aprender-e-construir.deepening

IA: Desenvolvimento com IA

#### O básico

ID: aiLearning.prompts-para-aprender-e-construir.basics
Tipo: concept
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: nenhum



Referências:

- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: aiLearning.prompts-para-aprender-e-construir.practice
Tipo: practice
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: aiLearning.prompts-para-aprender-e-construir.basics

Compare um pedido vago com um pedido que inclui sua tentativa e critérios. Execute os exemplos e registre qual informação melhorou a resposta.

Prompt de estudo:

```text
Estou aprendendo [conceito] na trilha [nome].
Meu objetivo é [resultado pequeno e observável].
Já tentei [tentativa] e observei [resultado ou erro].
Use este trecho como contexto: [código ou exemplo sem dados privados].
Explique a ideia com um exemplo curto e faça uma pergunta para conferir minha compreensão.
Depois proponha uma variação do exercício. Aguarde minha tentativa antes de dar feedback.
```

Referências:

- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: aiLearning.prompts-para-aprender-e-construir.deepening
Tipo: challenge
Percurso: Aprofundamento opcional · Desenvolvimento com IA
Pré-requisitos: aiLearning.prompts-para-aprender-e-construir.basics, aiLearning.prompts-para-aprender-e-construir.practice

Escolha uma decisão de Prompts para aprender e construir no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada

### Contexto útil e dados protegidos

ID do grupo: aiLearning.contexto-util-e-dados-protegidos

Forneça os arquivos relevantes, o erro completo sanitizado, a versão usada e o comportamento esperado. Diferencie conversar sobre código de permitir edição e execução. Use dados de laboratório; não compartilhe senhas, tokens ou dados pessoais.

Objetivos essenciais: aiLearning.contexto-util-e-dados-protegidos.basics, aiLearning.contexto-util-e-dados-protegidos.practice

Modo simple: aiLearning.contexto-util-e-dados-protegidos.basics, aiLearning.contexto-util-e-dados-protegidos.practice
Modo standard: aiLearning.contexto-util-e-dados-protegidos.basics, aiLearning.contexto-util-e-dados-protegidos.practice
Modo deep: aiLearning.contexto-util-e-dados-protegidos.basics, aiLearning.contexto-util-e-dados-protegidos.practice, aiLearning.contexto-util-e-dados-protegidos.deepening

IA: Desenvolvimento com IA

#### O básico

ID: aiLearning.contexto-util-e-dados-protegidos.basics
Tipo: concept
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: nenhum



Referências:

- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: aiLearning.contexto-util-e-dados-protegidos.practice
Tipo: practice
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: aiLearning.contexto-util-e-dados-protegidos.basics

Peça ajuda para a mesma dúvida com e sem o trecho relevante. Identifique uma suposição incorreta e corrija o contexto antes de aceitar a solução.

Referências:

- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: aiLearning.contexto-util-e-dados-protegidos.deepening
Tipo: challenge
Percurso: Aprofundamento opcional · Desenvolvimento com IA
Pré-requisitos: aiLearning.contexto-util-e-dados-protegidos.basics, aiLearning.contexto-util-e-dados-protegidos.practice

Escolha uma decisão de Contexto útil e dados protegidos no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

## Projeto: Plano de testes e evidências

ID da etapa: test.plano-de-testes-e-evidencias.stage
Percurso: Obrigatório · Projeto: entrega prática

Construa antes de avançar. Registre as decisões e peça uma revisão.

### Plano de testes e evidências

ID do grupo: test.plano-de-testes-e-evidencias

Avalie uma aplicação local ou ambiente de demonstração autorizado. Defina riscos e execute testes manuais.

Objetivos essenciais: test.plano-de-testes-e-evidencias.criteria, test.plano-de-testes-e-evidencias.ai-practice, test.plano-de-testes-e-evidencias.verification

Modo simple: test.plano-de-testes-e-evidencias.criteria, test.plano-de-testes-e-evidencias.ai-practice, test.plano-de-testes-e-evidencias.verification
Modo standard: test.plano-de-testes-e-evidencias.criteria, test.plano-de-testes-e-evidencias.ai-practice, test.plano-de-testes-e-evidencias.verification
Modo deep: test.plano-de-testes-e-evidencias.criteria, test.plano-de-testes-e-evidencias.ai-practice, test.plano-de-testes-e-evidencias.verification, test.plano-de-testes-e-evidencias.deepening

IA: IA aplicada

#### Critérios de conclusão

ID: test.plano-de-testes-e-evidencias.criteria
Tipo: criteria
Percurso: Obrigatório
Pré-requisitos: nenhum

Entregue charters, casos priorizados, evidências e relatórios reproduzíveis. Inclua um cenário negativo e uma conclusão sobre o risco restante.

Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Prática de IA neste projeto

ID: test.plano-de-testes-e-evidencias.ai-practice
Tipo: practice
Percurso: Obrigatório · IA aplicada
Pré-requisitos: test.plano-de-testes-e-evidencias.criteria

Planeje e explique o primeiro recorte antes de implementar. Adapte o prompt ao que você já construiu nesta etapa. Crie um caso que a IA não sugeriu e explique o risco que ele cobre.

Prompt de estudo:

```text
Projeto: Plano de testes e evidências.
Objetivo: propor cenários de teste priorizados por risco e justificar o resultado esperado a partir dos requisitos.
Contexto: [critérios de aceite, regras do produto e evidências de uma sessão de teste].
Nesta etapa: Planeje e explique o primeiro recorte antes de implementar.
Limites: apenas este projeto de laboratório; use as ferramentas já escolhidas, dados públicos ou sintéticos e não exponha segredos.
Critérios: o resultado esperado vem do requisito; casos duplicados são eliminados e há cenários negativos relevantes.
Mostre as hipóteses e como verificá-las. Informe o que foi executado e o que ainda falta conferir.
```

Referências:

- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada

#### Registre sua verificação

ID: test.plano-de-testes-e-evidencias.verification
Tipo: practice
Percurso: Obrigatório · IA aplicada
Pré-requisitos: test.plano-de-testes-e-evidencias.criteria

Registre um prompt sanitizado, uma sugestão aceita ou corrigida, a verificação executada e seu resultado. Explique a mudança com suas palavras. Conclua o projeto após demonstrar os critérios, mesmo quando parte do código vier de IA.

Referências:

- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.plano-de-testes-e-evidencias.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.plano-de-testes-e-evidencias.criteria, test.plano-de-testes-e-evidencias.ai-practice, test.plano-de-testes-e-evidencias.verification

Escolha uma decisão de Plano de testes e evidências no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [BSTQB: syllabus e materiais de estudo gratuitos (português; exame opcional pago)](https://bstqb.org.br/b9/sobre/syllabus) | ID: resource.istqb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

## Base técnica para testar

ID da etapa: test.base-tecnica-para-testar
Percurso: Obrigatório · Fundamentos e prática



### Internet e HTTP

ID do grupo: curriculum.internet-e-http

Entenda cliente e servidor, DNS, HTTPS, métodos, status, cabeçalhos, JSON e o ciclo de uma requisição. Use o painel Network do navegador.

Objetivos essenciais: curriculum.internet-e-http.basics, curriculum.internet-e-http.practice

Modo simple: curriculum.internet-e-http.basics, curriculum.internet-e-http.practice
Modo standard: curriculum.internet-e-http.basics, curriculum.internet-e-http.practice
Modo deep: curriculum.internet-e-http.basics, curriculum.internet-e-http.practice, curriculum.internet-e-http.deepening

#### O básico

ID: curriculum.internet-e-http.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [MDN: como a web funciona (português)](https://developer.mozilla.org/pt-BR/docs/Learn_web_development/Getting_started/Web_standards/How_the_web_works) | ID: resource.web | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [MDN: HTTP (português)](https://developer.mozilla.org/pt-BR/docs/Web/HTTP) | ID: resource.http | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Filipe Deschamps: como a internet funciona e APIs (português; vídeos gratuitos no YouTube)](https://www.youtube.com/c/FilipeDeschamps) | ID: resource.youtubeDeschampsWeb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Código Fonte TV: Dicionário do Programador (português; vídeos gratuitos no YouTube)](https://www.youtube.com/c/codigofontetv) | ID: resource.youtubeCodigoFonte | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: curriculum.internet-e-http.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: curriculum.internet-e-http.basics

Inspecione uma requisição real e explique URL, método, resposta, status e por que uma falha ocorreu. Peça à IA hipóteses para a falha e confira cada uma no painel Network.

Referências:

- [MDN: como a web funciona (português)](https://developer.mozilla.org/pt-BR/docs/Learn_web_development/Getting_started/Web_standards/How_the_web_works) | ID: resource.web | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [MDN: HTTP (português)](https://developer.mozilla.org/pt-BR/docs/Web/HTTP) | ID: resource.http | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Filipe Deschamps: como a internet funciona e APIs (português; vídeos gratuitos no YouTube)](https://www.youtube.com/c/FilipeDeschamps) | ID: resource.youtubeDeschampsWeb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Código Fonte TV: Dicionário do Programador (português; vídeos gratuitos no YouTube)](https://www.youtube.com/c/codigofontetv) | ID: resource.youtubeCodigoFonte | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: curriculum.internet-e-http.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: curriculum.internet-e-http.basics, curriculum.internet-e-http.practice

Compare cabeçalhos de cache em duas requisições reais. Explique idempotência e demonstre como distinguir uma falha de rede de um erro HTTP.

Referências:

- [MDN: como a web funciona (português)](https://developer.mozilla.org/pt-BR/docs/Learn_web_development/Getting_started/Web_standards/How_the_web_works) | ID: resource.web | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [MDN: HTTP (português)](https://developer.mozilla.org/pt-BR/docs/Web/HTTP) | ID: resource.http | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Filipe Deschamps: como a internet funciona e APIs (português; vídeos gratuitos no YouTube)](https://www.youtube.com/c/FilipeDeschamps) | ID: resource.youtubeDeschampsWeb | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Código Fonte TV: Dicionário do Programador (português; vídeos gratuitos no YouTube)](https://www.youtube.com/c/codigofontetv) | ID: resource.youtubeCodigoFonte | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

### Controle de Versão

ID do grupo: curriculum.controle-de-versao

Use Git desde o primeiro exercício: commits pequenos, branches, pull requests, revisão e resolução de conflitos. Não publique credenciais.

Objetivos essenciais: curriculum.controle-de-versao.basics, curriculum.controle-de-versao.practice

Modo simple: curriculum.controle-de-versao.basics, curriculum.controle-de-versao.practice
Modo standard: curriculum.controle-de-versao.basics, curriculum.controle-de-versao.practice
Modo deep: curriculum.controle-de-versao.basics, curriculum.controle-de-versao.practice, curriculum.controle-de-versao.deepening

#### O básico

ID: curriculum.controle-de-versao.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Willian Justen: Git e GitHub para iniciantes (português; playlist gratuita no YouTube)](https://www.youtube.com/playlist?list=PLlAbYrWSYTiPA2iEiQ2PF_A9j__C4hi0A) | ID: resource.youtubeGitJusten | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Curso em Vídeo: Git e GitHub (português; playlist gratuita no YouTube)](https://www.youtube.com/playlist?list=PLHz_AreHm4dm7ZULPAmadvNhH6vk9oNZA) | ID: resource.youtubeGitCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: curriculum.controle-de-versao.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: curriculum.controle-de-versao.basics

Crie um repositório com README, abra um pull request e resolva um conflito em uma branch de exercício. Peça à IA que explique o diff e confira a explicação no histórico do Git.

Referências:

- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Willian Justen: Git e GitHub para iniciantes (português; playlist gratuita no YouTube)](https://www.youtube.com/playlist?list=PLlAbYrWSYTiPA2iEiQ2PF_A9j__C4hi0A) | ID: resource.youtubeGitJusten | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Curso em Vídeo: Git e GitHub (português; playlist gratuita no YouTube)](https://www.youtube.com/playlist?list=PLHz_AreHm4dm7ZULPAmadvNhH6vk9oNZA) | ID: resource.youtubeGitCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: curriculum.controle-de-versao.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: curriculum.controle-de-versao.basics, curriculum.controle-de-versao.practice

Escolha uma decisão de Controle de Versão no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Willian Justen: Git e GitHub para iniciantes (português; playlist gratuita no YouTube)](https://www.youtube.com/playlist?list=PLlAbYrWSYTiPA2iEiQ2PF_A9j__C4hi0A) | ID: resource.youtubeGitJusten | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Curso em Vídeo: Git e GitHub (português; playlist gratuita no YouTube)](https://www.youtube.com/playlist?list=PLHz_AreHm4dm7ZULPAmadvNhH6vk9oNZA) | ID: resource.youtubeGitCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

### API e SQL básicos

ID do grupo: test.api-e-sql-basicos

Entenda JSON, status HTTP, autenticação e consultas SELECT/JOIN. Use requisições e banco de teste para conferir o estado do sistema.

Objetivos essenciais: test.api-e-sql-basicos.basics, test.api-e-sql-basicos.practice

Modo simple: test.api-e-sql-basicos.basics, test.api-e-sql-basicos.practice
Modo standard: test.api-e-sql-basicos.basics, test.api-e-sql-basicos.practice
Modo deep: test.api-e-sql-basicos.basics, test.api-e-sql-basicos.practice, test.api-e-sql-basicos.deepening

#### O básico

ID: test.api-e-sql-basicos.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [MDN: HTTP (português)](https://developer.mozilla.org/pt-BR/docs/Web/HTTP) | ID: resource.http | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Microsoft Learn: introdução a Transact-SQL (português)](https://learn.microsoft.com/pt-br/training/paths/get-started-querying-with-transact-sql/) | ID: resource.sql | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Playwright: testes de API (inglês)](https://playwright.dev/docs/api-testing) | ID: resource.playwrightApi | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.api-e-sql-basicos.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: test.api-e-sql-basicos.basics

Compare a resposta de uma API com os dados de um banco de laboratório e investigue uma divergência.

Referências:

- [MDN: HTTP (português)](https://developer.mozilla.org/pt-BR/docs/Web/HTTP) | ID: resource.http | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Microsoft Learn: introdução a Transact-SQL (português)](https://learn.microsoft.com/pt-br/training/paths/get-started-querying-with-transact-sql/) | ID: resource.sql | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Playwright: testes de API (inglês)](https://playwright.dev/docs/api-testing) | ID: resource.playwrightApi | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.api-e-sql-basicos.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.api-e-sql-basicos.basics, test.api-e-sql-basicos.practice

Escolha uma decisão de API e SQL básicos no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [MDN: HTTP (português)](https://developer.mozilla.org/pt-BR/docs/Web/HTTP) | ID: resource.http | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Microsoft Learn: introdução a Transact-SQL (português)](https://learn.microsoft.com/pt-br/training/paths/get-started-querying-with-transact-sql/) | ID: resource.sql | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Playwright: testes de API (inglês)](https://playwright.dev/docs/api-testing) | ID: resource.playwrightApi | Idioma: en | Gratuito: sim | Duração: não estimada

## Escolha uma linguagem

ID da etapa: test.escolha-uma-linguagem
Percurso: Obrigatório · Fundamentos e prática

TypeScript combina com Playwright; Python é outra opção. Se sua equipe usa Java, Selenium ou outra stack, adapte a escolha mantendo os conceitos.

### Programação para automação

ID do grupo: test.programacao-para-automacao

Aprenda funções, coleções, condições, módulos, async/await, erros e depuração. Comece com scripts pequenos antes de frameworks de automação.

Objetivos essenciais: test.programacao-para-automacao.basics, test.programacao-para-automacao.practice

Modo simple: test.programacao-para-automacao.basics, test.programacao-para-automacao.practice
Modo standard: test.programacao-para-automacao.basics, test.programacao-para-automacao.practice
Modo deep: test.programacao-para-automacao.basics, test.programacao-para-automacao.practice, test.programacao-para-automacao.deepening

#### O básico

ID: test.programacao-para-automacao.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [Curso em Vídeo: JavaScript (português; conteúdo gratuito, certificado opcional pago)](https://www.cursoemvideo.com/curso/javascript/) | ID: resource.jsCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [MDN: guia de JavaScript (português)](https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Guide) | ID: resource.js | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [TypeScript: handbook (inglês)](https://www.typescriptlang.org/docs/handbook/intro.html) | ID: resource.ts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Curso em Vídeo: Python, mundo 1 (português; conteúdo gratuito, certificado opcional pago)](https://www.cursoemvideo.com/curso/python-3-mundo-1/) | ID: resource.pythonCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.programacao-para-automacao.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: test.programacao-para-automacao.basics

Escreva um script que valide uma resposta JSON e retorne erro quando faltar um campo obrigatório.

Referências:

- [Curso em Vídeo: JavaScript (português; conteúdo gratuito, certificado opcional pago)](https://www.cursoemvideo.com/curso/javascript/) | ID: resource.jsCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [MDN: guia de JavaScript (português)](https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Guide) | ID: resource.js | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [TypeScript: handbook (inglês)](https://www.typescriptlang.org/docs/handbook/intro.html) | ID: resource.ts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Curso em Vídeo: Python, mundo 1 (português; conteúdo gratuito, certificado opcional pago)](https://www.cursoemvideo.com/curso/python-3-mundo-1/) | ID: resource.pythonCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.programacao-para-automacao.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.programacao-para-automacao.basics, test.programacao-para-automacao.practice

Escolha uma decisão de Programação para automação no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Curso em Vídeo: JavaScript (português; conteúdo gratuito, certificado opcional pago)](https://www.cursoemvideo.com/curso/javascript/) | ID: resource.jsCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [MDN: guia de JavaScript (português)](https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Guide) | ID: resource.js | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [TypeScript: handbook (inglês)](https://www.typescriptlang.org/docs/handbook/intro.html) | ID: resource.ts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Curso em Vídeo: Python, mundo 1 (português; conteúdo gratuito, certificado opcional pago)](https://www.cursoemvideo.com/curso/python-3-mundo-1/) | ID: resource.pythonCourse | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

## Automação de API e navegador

ID da etapa: test.automacao-de-api-e-navegador
Percurso: Obrigatório · Fundamentos e prática



### Testes de API

ID do grupo: test.testes-de-api

Teste status, contrato, autenticação, autorização, validação e idempotência. Use dados isolados e configuração sem segredos versionados.

Objetivos essenciais: test.testes-de-api.basics, test.testes-de-api.practice

Modo simple: test.testes-de-api.basics, test.testes-de-api.practice
Modo standard: test.testes-de-api.basics, test.testes-de-api.practice
Modo deep: test.testes-de-api.basics, test.testes-de-api.practice, test.testes-de-api.deepening

#### O básico

ID: test.testes-de-api.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [Playwright: testes de API (inglês)](https://playwright.dev/docs/api-testing) | ID: resource.playwrightApi | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAPI: especificação de contratos HTTP (inglês)](https://spec.openapis.org/oas/latest.html) | ID: resource.openapi | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.testes-de-api.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: test.testes-de-api.basics

Automatize um sucesso, uma entrada inválida e um acesso negado; limpe os dados criados pelo teste.

Referências:

- [Playwright: testes de API (inglês)](https://playwright.dev/docs/api-testing) | ID: resource.playwrightApi | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAPI: especificação de contratos HTTP (inglês)](https://spec.openapis.org/oas/latest.html) | ID: resource.openapi | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.testes-de-api.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.testes-de-api.basics, test.testes-de-api.practice

Escolha uma decisão de Testes de API no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Playwright: testes de API (inglês)](https://playwright.dev/docs/api-testing) | ID: resource.playwrightApi | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAPI: especificação de contratos HTTP (inglês)](https://spec.openapis.org/oas/latest.html) | ID: resource.openapi | Idioma: en | Gratuito: sim | Duração: não estimada

### Playwright para web

ID do grupo: test.playwright-para-web

Use locators orientados ao usuário, assertions, fixtures e espera automática. Evite sleeps fixos, dependência entre testes e seletores frágeis.

Objetivos essenciais: test.playwright-para-web.basics, test.playwright-para-web.practice

Modo simple: test.playwright-para-web.basics, test.playwright-para-web.practice
Modo standard: test.playwright-para-web.basics, test.playwright-para-web.practice
Modo deep: test.playwright-para-web.basics, test.playwright-para-web.practice, test.playwright-para-web.deepening

#### O básico

ID: test.playwright-para-web.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [Playwright: testes de ponta a ponta (inglês)](https://playwright.dev/docs/intro) | ID: resource.playwright | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.playwright-para-web.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: test.playwright-para-web.basics

Automatize o fluxo principal e investigue uma falha pelo trace. Rode o teste isoladamente e em conjunto.

Referências:

- [Playwright: testes de ponta a ponta (inglês)](https://playwright.dev/docs/intro) | ID: resource.playwright | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.playwright-para-web.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.playwright-para-web.basics, test.playwright-para-web.practice

Escolha uma decisão de Playwright para web no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Playwright: testes de ponta a ponta (inglês)](https://playwright.dev/docs/intro) | ID: resource.playwright | Idioma: en | Gratuito: sim | Duração: não estimada

## Qualidade contínua

ID da etapa: test.qualidade-continua
Percurso: Obrigatório · Fundamentos e prática



### CI e estratégia de cobertura

ID do grupo: test.ci-e-estrategia-de-cobertura

Combine testes unitários, integração e poucos fluxos completos. Execute a suíte em CI, investigue flakiness e trate a causa; retries não substituem correção.

Objetivos essenciais: test.ci-e-estrategia-de-cobertura.basics, test.ci-e-estrategia-de-cobertura.practice

Modo simple: test.ci-e-estrategia-de-cobertura.basics, test.ci-e-estrategia-de-cobertura.practice
Modo standard: test.ci-e-estrategia-de-cobertura.basics, test.ci-e-estrategia-de-cobertura.practice
Modo deep: test.ci-e-estrategia-de-cobertura.basics, test.ci-e-estrategia-de-cobertura.practice, test.ci-e-estrategia-de-cobertura.deepening

#### O básico

ID: test.ci-e-estrategia-de-cobertura.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [GitHub Actions: integração contínua (português)](https://docs.github.com/pt/actions/get-started/continuous-integration) | ID: resource.actions | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Playwright: testes de ponta a ponta (inglês)](https://playwright.dev/docs/intro) | ID: resource.playwright | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.ci-e-estrategia-de-cobertura.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: test.ci-e-estrategia-de-cobertura.basics

Faça a CI produzir um relatório e demonstre como diferenciar um bug do produto de uma falha do teste.

Referências:

- [GitHub Actions: integração contínua (português)](https://docs.github.com/pt/actions/get-started/continuous-integration) | ID: resource.actions | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Playwright: testes de ponta a ponta (inglês)](https://playwright.dev/docs/intro) | ID: resource.playwright | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.ci-e-estrategia-de-cobertura.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.ci-e-estrategia-de-cobertura.basics, test.ci-e-estrategia-de-cobertura.practice

Escolha uma decisão de CI e estratégia de cobertura no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [GitHub Actions: integração contínua (português)](https://docs.github.com/pt/actions/get-started/continuous-integration) | ID: resource.actions | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [Playwright: testes de ponta a ponta (inglês)](https://playwright.dev/docs/intro) | ID: resource.playwright | Idioma: en | Gratuito: sim | Duração: não estimada

### Acessibilidade

ID do grupo: curriculum.acessibilidade

Inclua semântica, teclado, foco, contraste, mensagens de erro e teste com leitor de tela desde os primeiros componentes.

Objetivos essenciais: curriculum.acessibilidade.basics, curriculum.acessibilidade.practice

Modo simple: curriculum.acessibilidade.basics, curriculum.acessibilidade.practice
Modo standard: curriculum.acessibilidade.basics, curriculum.acessibilidade.practice
Modo deep: curriculum.acessibilidade.basics, curriculum.acessibilidade.practice, curriculum.acessibilidade.deepening

#### O básico

ID: curriculum.acessibilidade.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [MDN: acessibilidade (português)](https://developer.mozilla.org/pt-BR/docs/Web/Accessibility) | ID: resource.accessibility | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: curriculum.acessibilidade.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: curriculum.acessibilidade.basics

Peça à IA que sugira uma lista de verificações. Conclua uma tarefa apenas com teclado e confira labels, foco e anúncios de erro com leitor de tela; a revisão do código não confirma sozinha a acessibilidade.

Referências:

- [MDN: acessibilidade (português)](https://developer.mozilla.org/pt-BR/docs/Web/Accessibility) | ID: resource.accessibility | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: curriculum.acessibilidade.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: curriculum.acessibilidade.basics, curriculum.acessibilidade.practice

Conclua o fluxo usando somente teclado e leitor de tela. Introduza e corrija uma falha de foco ou anúncio de erro, registrando a evidência.

Referências:

- [MDN: acessibilidade (português)](https://developer.mozilla.org/pt-BR/docs/Web/Accessibility) | ID: resource.accessibility | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

## IA: programação em parceria

ID da etapa: aiLearning.ia-programacao-em-parceria
Percurso: Obrigatório · Desenvolvimento com IA

Use o primeiro projeto como contexto. Alterne pequenas implementações, leitura de código, depuração e testes.

### Planejar, implementar e revisar

ID do grupo: aiLearning.planejar-implementar-e-revisar

Defina um recorte pequeno e peça um plano. Decida o que implementar você e o que delegar. Revise cada diff, rode a aplicação e confira o comportamento antes de seguir para outra tarefa. A IA pode gerar código, testes e documentação, mas a evidência precisa ser executada.

Objetivos essenciais: aiLearning.planejar-implementar-e-revisar.basics, aiLearning.planejar-implementar-e-revisar.practice

Modo simple: aiLearning.planejar-implementar-e-revisar.basics, aiLearning.planejar-implementar-e-revisar.practice
Modo standard: aiLearning.planejar-implementar-e-revisar.basics, aiLearning.planejar-implementar-e-revisar.practice
Modo deep: aiLearning.planejar-implementar-e-revisar.basics, aiLearning.planejar-implementar-e-revisar.practice, aiLearning.planejar-implementar-e-revisar.deepening

IA: Desenvolvimento com IA

#### O básico

ID: aiLearning.planejar-implementar-e-revisar.basics
Tipo: concept
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: nenhum



Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: uso do agente (inglês; documentação gratuita)](https://cursor.com/docs/agent/overview) | ID: resource.cursor | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: aiLearning.planejar-implementar-e-revisar.practice
Tipo: practice
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: aiLearning.planejar-implementar-e-revisar.basics

Implemente uma pequena mudança em parceria. Explique o diff, rejeite ou ajuste uma sugestão e acrescente um caso de teste que não veio da mesma proposta.

Prompt de estudo:

```text
Quero implementar [mudança pequena] neste projeto.
Contexto: [arquivos relevantes, comportamento atual e versão].
Resultado esperado: [exemplo de entrada e saída].
Limites: [arquivos que podem mudar e requisitos que devem ser preservados].
Primeiro proponha um plano curto e a verificação. Depois trabalharemos uma etapa por vez.
Ao implementar, mostre o diff, explique as decisões e informe os comandos executados e seus resultados.
```

Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: uso do agente (inglês; documentação gratuita)](https://cursor.com/docs/agent/overview) | ID: resource.cursor | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: aiLearning.planejar-implementar-e-revisar.deepening
Tipo: challenge
Percurso: Aprofundamento opcional · Desenvolvimento com IA
Pré-requisitos: aiLearning.planejar-implementar-e-revisar.basics, aiLearning.planejar-implementar-e-revisar.practice

Escolha uma decisão de Planejar, implementar e revisar no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: uso do agente (inglês; documentação gratuita)](https://cursor.com/docs/agent/overview) | ID: resource.cursor | Idioma: en | Gratuito: sim | Duração: não estimada

### Depuração com evidências

ID do grupo: aiLearning.depuracao-com-evidencias

Reproduza o problema e registre esperado versus observado. Peça hipóteses e uma forma de distinguir entre elas antes de tentar correções. Não confunda uma explicação plausível com uma causa confirmada.

Objetivos essenciais: aiLearning.depuracao-com-evidencias.basics, aiLearning.depuracao-com-evidencias.practice

Modo simple: aiLearning.depuracao-com-evidencias.basics, aiLearning.depuracao-com-evidencias.practice
Modo standard: aiLearning.depuracao-com-evidencias.basics, aiLearning.depuracao-com-evidencias.practice
Modo deep: aiLearning.depuracao-com-evidencias.basics, aiLearning.depuracao-com-evidencias.practice, aiLearning.depuracao-com-evidencias.deepening

IA: Desenvolvimento com IA

#### O básico

ID: aiLearning.depuracao-com-evidencias.basics
Tipo: concept
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: nenhum



Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: aiLearning.depuracao-com-evidencias.practice
Tipo: practice
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: aiLearning.depuracao-com-evidencias.basics

Introduza um bug no laboratório, confirme uma hipótese por log, breakpoint ou teste e verifique uma correção mínima.

Prompt de estudo:

```text
Problema reproduzível: [passos].
Esperado: [resultado]. Observado: [resultado ou erro sanitizado].
Contexto: [trecho, configuração e versões relevantes].
Liste até três hipóteses e uma verificação para distinguir cada uma.
Primeiro vamos confirmar a causa. Depois proponha a menor correção e um teste de regressão.
```

Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: aiLearning.depuracao-com-evidencias.deepening
Tipo: challenge
Percurso: Aprofundamento opcional · Desenvolvimento com IA
Pré-requisitos: aiLearning.depuracao-com-evidencias.basics, aiLearning.depuracao-com-evidencias.practice

Escolha uma decisão de Depuração com evidências no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada

## IA: agentes, regras e verificação

ID da etapa: aiLearning.ia-agentes-regras-e-verificacao
Percurso: Obrigatório · Desenvolvimento com IA

Depois de conseguir ler diffs, depurar e testar, delegue uma tarefa limitada no repositório de laboratório.

### Instruções do projeto e escopo do agente

ID do grupo: aiLearning.instrucoes-do-projeto-e-escopo-do-agente

Documente como rodar, testar e organizar o projeto. Pratique regras do Cursor, CLAUDE.md ou AGENTS.md conforme a ferramenta escolhida. Defina arquivos, tarefa, limites e permissões. Comece com uma branch e uma alteração pequena; deixe MCP, múltiplos agentes e automações amplas para aprofundamento.

Objetivos essenciais: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.basics, aiLearning.instrucoes-do-projeto-e-escopo-do-agente.practice

Modo simple: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.basics, aiLearning.instrucoes-do-projeto-e-escopo-do-agente.practice
Modo standard: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.basics, aiLearning.instrucoes-do-projeto-e-escopo-do-agente.practice
Modo deep: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.basics, aiLearning.instrucoes-do-projeto-e-escopo-do-agente.practice, aiLearning.instrucoes-do-projeto-e-escopo-do-agente.deepening

IA: Desenvolvimento com IA

#### O básico

ID: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.basics
Tipo: concept
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: nenhum



Referências:

- [Cursor: regras do projeto (inglês; documentação gratuita)](https://cursor.com/docs/rules) | ID: resource.cursorRules | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: instruções de projeto com AGENTS.md (inglês; documentação gratuita)](https://developers.openai.com/codex/guides/agents-md/) | ID: resource.codexRules | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.practice
Tipo: practice
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.basics

Escreva instruções curtas com comandos reais do projeto. Peça uma alteração pequena e confira que as instruções foram usadas e que o diff respeita o escopo.

Referências:

- [Cursor: regras do projeto (inglês; documentação gratuita)](https://cursor.com/docs/rules) | ID: resource.cursorRules | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: instruções de projeto com AGENTS.md (inglês; documentação gratuita)](https://developers.openai.com/codex/guides/agents-md/) | ID: resource.codexRules | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.deepening
Tipo: challenge
Percurso: Aprofundamento opcional · Desenvolvimento com IA
Pré-requisitos: aiLearning.instrucoes-do-projeto-e-escopo-do-agente.basics, aiLearning.instrucoes-do-projeto-e-escopo-do-agente.practice

Escolha uma decisão de Instruções do projeto e escopo do agente no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Cursor: regras do projeto (inglês; documentação gratuita)](https://cursor.com/docs/rules) | ID: resource.cursorRules | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [OpenAI: instruções de projeto com AGENTS.md (inglês; documentação gratuita)](https://developers.openai.com/codex/guides/agents-md/) | ID: resource.codexRules | Idioma: en | Gratuito: sim | Duração: não estimada

### Validar trabalho gerado por IA

ID do grupo: aiLearning.validar-trabalho-gerado-por-ia

Confira comportamento e requisitos além dos testes produzidos pelo próprio agente. Verifique casos negativos, dependências, documentação da versão e o resultado dos comandos. Para interface, faça inspeção visual e por teclado; para dados, use uma amostra com resultado conhecido.

Objetivos essenciais: aiLearning.validar-trabalho-gerado-por-ia.basics, aiLearning.validar-trabalho-gerado-por-ia.practice

Modo simple: aiLearning.validar-trabalho-gerado-por-ia.basics, aiLearning.validar-trabalho-gerado-por-ia.practice
Modo standard: aiLearning.validar-trabalho-gerado-por-ia.basics, aiLearning.validar-trabalho-gerado-por-ia.practice
Modo deep: aiLearning.validar-trabalho-gerado-por-ia.basics, aiLearning.validar-trabalho-gerado-por-ia.practice, aiLearning.validar-trabalho-gerado-por-ia.deepening

IA: Desenvolvimento com IA

#### O básico

ID: aiLearning.validar-trabalho-gerado-por-ia.basics
Tipo: concept
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: nenhum



Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: aiLearning.validar-trabalho-gerado-por-ia.practice
Tipo: practice
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: aiLearning.validar-trabalho-gerado-por-ia.basics

Revise uma proposta que parece correta, mas tem um caso-limite errado. Acrescente uma verificação independente, corrija e documente a evidência.

Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: aiLearning.validar-trabalho-gerado-por-ia.deepening
Tipo: challenge
Percurso: Aprofundamento opcional · Desenvolvimento com IA
Pré-requisitos: aiLearning.validar-trabalho-gerado-por-ia.basics, aiLearning.validar-trabalho-gerado-por-ia.practice

Escolha uma decisão de Validar trabalho gerado por IA no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada

## Projeto: Portfólio de QA

ID da etapa: test.portfolio-de-qa.stage
Percurso: Obrigatório · Projeto: entrega prática

Construa antes de avançar. Registre as decisões e peça uma revisão.

### Portfólio de QA

ID do grupo: test.portfolio-de-qa

Combine análise de risco, testes exploratórios e automação de API e web em um único repositório.

Objetivos essenciais: test.portfolio-de-qa.criteria, test.portfolio-de-qa.ai-practice, test.portfolio-de-qa.verification

Modo simple: test.portfolio-de-qa.criteria, test.portfolio-de-qa.ai-practice, test.portfolio-de-qa.verification
Modo standard: test.portfolio-de-qa.criteria, test.portfolio-de-qa.ai-practice, test.portfolio-de-qa.verification
Modo deep: test.portfolio-de-qa.criteria, test.portfolio-de-qa.ai-practice, test.portfolio-de-qa.verification, test.portfolio-de-qa.deepening

IA: IA aplicada

#### Critérios de conclusão

ID: test.portfolio-de-qa.criteria
Tipo: criteria
Percurso: Obrigatório
Pré-requisitos: nenhum

Inclua plano, bug reports, fixtures isoladas, CI e instruções. Mostre uma falha encontrada e explique quais riscos sua suíte ainda não cobre.

Referências:

- [Playwright: testes de ponta a ponta (inglês)](https://playwright.dev/docs/intro) | ID: resource.playwright | Idioma: en | Gratuito: sim | Duração: não estimada
- [Playwright: testes de API (inglês)](https://playwright.dev/docs/api-testing) | ID: resource.playwrightApi | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub Actions: integração contínua (português)](https://docs.github.com/pt/actions/get-started/continuous-integration) | ID: resource.actions | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Prática de IA neste projeto

ID: test.portfolio-de-qa.ai-practice
Tipo: practice
Percurso: Obrigatório · IA aplicada
Pré-requisitos: test.portfolio-de-qa.criteria

Delegue uma tarefa pequena e revise o diff e a evidência de execução. Adapte o prompt ao que você já construiu nesta etapa. Crie um caso que a IA não sugeriu e explique o risco que ele cobre.

Prompt de estudo:

```text
Projeto: Portfólio de QA.
Objetivo: propor cenários de teste priorizados por risco e justificar o resultado esperado a partir dos requisitos.
Contexto: [critérios de aceite, regras do produto e evidências de uma sessão de teste].
Nesta etapa: Delegue uma tarefa pequena e revise o diff e a evidência de execução.
Limites: apenas este projeto de laboratório; use as ferramentas já escolhidas, dados públicos ou sintéticos e não exponha segredos.
Critérios: o resultado esperado vem do requisito; casos duplicados são eliminados e há cenários negativos relevantes.
Mostre as hipóteses e como verificá-las. Informe o que foi executado e o que ainda falta conferir.
```

Referências:

- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada

#### Registre sua verificação

ID: test.portfolio-de-qa.verification
Tipo: practice
Percurso: Obrigatório · IA aplicada
Pré-requisitos: test.portfolio-de-qa.criteria

Registre um prompt sanitizado, uma sugestão aceita ou corrigida, a verificação executada e seu resultado. Explique a mudança com suas palavras. Conclua o projeto após demonstrar os critérios, mesmo quando parte do código vier de IA.

Referências:

- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.portfolio-de-qa.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: test.portfolio-de-qa.criteria, test.portfolio-de-qa.ai-practice, test.portfolio-de-qa.verification

Escolha uma decisão de Portfólio de QA no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Playwright: testes de ponta a ponta (inglês)](https://playwright.dev/docs/intro) | ID: resource.playwright | Idioma: en | Gratuito: sim | Duração: não estimada
- [Playwright: testes de API (inglês)](https://playwright.dev/docs/api-testing) | ID: resource.playwrightApi | Idioma: en | Gratuito: sim | Duração: não estimada
- [GitHub Actions: integração contínua (português)](https://docs.github.com/pt/actions/get-started/continuous-integration) | ID: resource.actions | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [OpenAI: prompting para tarefas de código (inglês; documentação gratuita)](https://developers.openai.com/codex/prompting/) | ID: resource.codexPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Cursor: prompts e contexto (inglês; documentação gratuita)](https://cursor.com/docs/agent/prompting) | ID: resource.cursorPrompts | Idioma: en | Gratuito: sim | Duração: não estimada
- [Claude Code: boas práticas (inglês; documentação gratuita)](https://code.claude.com/docs/en/best-practices) | ID: resource.claudePractices | Idioma: en | Gratuito: sim | Duração: não estimada
- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

## Preparação para oportunidades

ID da etapa: curriculum.preparacao-para-oportunidades
Percurso: Obrigatório · Fundamentos e prática

Comece a buscar estágio ou vagas compatíveis com seus projetos. Ajuste o estudo aos requisitos recorrentes da sua região; concluir a trilha não garante contratação.

### Portfólio e candidatura

ID do grupo: curriculum.portfolio-e-candidatura

Publique projetos com problema, instruções de execução, testes, decisões e limitações. Prepare currículo conciso, uma demonstração e exemplos de colaboração. Pratique leitura de documentação em inglês aos poucos.

Objetivos essenciais: curriculum.portfolio-e-candidatura.basics, curriculum.portfolio-e-candidatura.practice

Modo simple: curriculum.portfolio-e-candidatura.basics, curriculum.portfolio-e-candidatura.practice
Modo standard: curriculum.portfolio-e-candidatura.basics, curriculum.portfolio-e-candidatura.practice
Modo deep: curriculum.portfolio-e-candidatura.basics, curriculum.portfolio-e-candidatura.practice, curriculum.portfolio-e-candidatura.deepening

#### O básico

ID: curriculum.portfolio-e-candidatura.basics
Tipo: concept
Percurso: Obrigatório
Pré-requisitos: nenhum



Referências:

- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: curriculum.portfolio-e-candidatura.practice
Tipo: practice
Percurso: Obrigatório
Pré-requisitos: curriculum.portfolio-e-candidatura.basics

Peça feedback sobre um projeto, corrija uma issue e explique sua contribuição. Compare vagas de entrada e escolha uma lacuna concreta para estudar.

Referências:

- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: curriculum.portfolio-e-candidatura.deepening
Tipo: challenge
Percurso: Aprofundamento opcional
Pré-requisitos: curriculum.portfolio-e-candidatura.basics, curriculum.portfolio-e-candidatura.practice

Escolha uma decisão de Portfólio e candidatura no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Pro Git: livro gratuito (português)](https://git-scm.com/book/pt-br/v2) | ID: resource.git | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
- [GitHub: como contribuir com projetos (português)](https://docs.github.com/pt/get-started/exploring-projects-on-github/contributing-to-a-project) | ID: resource.contribute | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

### IA no fluxo de trabalho

ID do grupo: curriculum.ia-no-fluxo-de-trabalho

Use IA para explicar erros, propor testes e revisar hipóteses. Confira a documentação, o diff e os resultados. Proteja dados privados e segredos.

Objetivos essenciais: curriculum.ia-no-fluxo-de-trabalho.basics, curriculum.ia-no-fluxo-de-trabalho.practice

Modo simple: curriculum.ia-no-fluxo-de-trabalho.basics, curriculum.ia-no-fluxo-de-trabalho.practice
Modo standard: curriculum.ia-no-fluxo-de-trabalho.basics, curriculum.ia-no-fluxo-de-trabalho.practice
Modo deep: curriculum.ia-no-fluxo-de-trabalho.basics, curriculum.ia-no-fluxo-de-trabalho.practice, curriculum.ia-no-fluxo-de-trabalho.deepening

IA: Desenvolvimento com IA

#### O básico

ID: curriculum.ia-no-fluxo-de-trabalho.basics
Tipo: concept
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: nenhum



Referências:

- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: curriculum.ia-no-fluxo-de-trabalho.practice
Tipo: practice
Percurso: Obrigatório · Desenvolvimento com IA
Pré-requisitos: curriculum.ia-no-fluxo-de-trabalho.basics

Compare uma sugestão de IA com sua solução, identifique uma limitação e teste a mudança. Explique o código sem depender da ferramenta.

Referências:

- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: curriculum.ia-no-fluxo-de-trabalho.deepening
Tipo: challenge
Percurso: Aprofundamento opcional · Desenvolvimento com IA
Pré-requisitos: curriculum.ia-no-fluxo-de-trabalho.basics, curriculum.ia-no-fluxo-de-trabalho.practice

Escolha uma decisão de IA no fluxo de trabalho no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [GitHub: uso responsável de sugestões de IA (português)](https://docs.github.com/pt/copilot/responsible-use/copilot-code-completion) | ID: resource.ai | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

## Especializações opcionais (opcional)

ID da etapa: test.especializacoes-opcionais
Percurso: Opcional · Fundamentos e prática

Escolha conforme o produto e a vaga. Não é preciso aprender todas as ferramentas de web, mobile e API.

### Desempenho, segurança e mobile

ID do grupo: test.desempenho-seguranca-e-mobile

Aprenda carga com k6 e análise de resultados; estude segurança em ambiente autorizado. Mobile, contratos e acessibilidade aprofundada são caminhos próprios.

Objetivos essenciais: test.desempenho-seguranca-e-mobile.basics, test.desempenho-seguranca-e-mobile.practice

Modo simple: test.desempenho-seguranca-e-mobile.basics, test.desempenho-seguranca-e-mobile.practice
Modo standard: test.desempenho-seguranca-e-mobile.basics, test.desempenho-seguranca-e-mobile.practice
Modo deep: test.desempenho-seguranca-e-mobile.basics, test.desempenho-seguranca-e-mobile.practice, test.desempenho-seguranca-e-mobile.deepening

#### O básico

ID: test.desempenho-seguranca-e-mobile.basics
Tipo: concept
Percurso: Opcional
Pré-requisitos: nenhum



Referências:

- [Grafana k6: primeiros passos com testes de carga (inglês)](https://grafana.com/docs/k6/latest/get-started/) | ID: resource.k6 | Idioma: en | Gratuito: sim | Duração: não estimada
- [OWASP: guia de segurança de aplicações (inglês)](https://cheatsheetseries.owasp.org/) | ID: resource.security | Idioma: en | Gratuito: sim | Duração: não estimada
- [MDN: acessibilidade (português)](https://developer.mozilla.org/pt-BR/docs/Web/Accessibility) | ID: resource.accessibility | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Pratique e confira

ID: test.desempenho-seguranca-e-mobile.practice
Tipo: practice
Percurso: Opcional
Pré-requisitos: test.desempenho-seguranca-e-mobile.basics

Defina uma hipótese de desempenho para um serviço local e compare os resultados com um limite de aceitação explícito.

Referências:

- [Grafana k6: primeiros passos com testes de carga (inglês)](https://grafana.com/docs/k6/latest/get-started/) | ID: resource.k6 | Idioma: en | Gratuito: sim | Duração: não estimada
- [OWASP: guia de segurança de aplicações (inglês)](https://cheatsheetseries.owasp.org/) | ID: resource.security | Idioma: en | Gratuito: sim | Duração: não estimada
- [MDN: acessibilidade (português)](https://developer.mozilla.org/pt-BR/docs/Web/Accessibility) | ID: resource.accessibility | Idioma: pt-BR | Gratuito: sim | Duração: não estimada

#### Desafio de aprofundamento

ID: test.desempenho-seguranca-e-mobile.deepening
Tipo: challenge
Percurso: Opcional
Pré-requisitos: test.desempenho-seguranca-e-mobile.basics, test.desempenho-seguranca-e-mobile.practice

Escolha uma decisão de Desempenho, segurança e mobile no seu projeto. Construa uma segunda solução, compare os resultados com um caso de teste e explique os limites de cada abordagem. Use as referências para verificar sua conclusão.

Referências:

- [Grafana k6: primeiros passos com testes de carga (inglês)](https://grafana.com/docs/k6/latest/get-started/) | ID: resource.k6 | Idioma: en | Gratuito: sim | Duração: não estimada
- [OWASP: guia de segurança de aplicações (inglês)](https://cheatsheetseries.owasp.org/) | ID: resource.security | Idioma: en | Gratuito: sim | Duração: não estimada
- [MDN: acessibilidade (português)](https://developer.mozilla.org/pt-BR/docs/Web/Accessibility) | ID: resource.accessibility | Idioma: pt-BR | Gratuito: sim | Duração: não estimada
