scaffolding-oracle-to-postgres-migration-test-project
Ajuda seu agente a criar um projeto de teste para migração de banco de dados. Ele prepara a estrutura para testar a migração de Oracle para PostgreSQL em .NET.
O que ela faz
Esta ferramenta cria uma estrutura básica para testes de integração em um projeto .NET. Ela prepara um ambiente para testar a conexão com um banco de dados Oracle, garantindo que os testes não alterem os dados permanentemente.
Quando usar
- ✓Antes de começar a escrever testes de integração para o Oracle.
- ✓Quando você precisa de um modelo para gerenciar dados de teste.
- ✓Ao configurar um projeto para migrar de Oracle para PostgreSQL.
Exemplo do que pedir para a IA
“Crie um projeto de teste de integração para meu projeto principal, configurado para Oracle.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta cria um novo projeto de teste que se conecta ao banco de dados Oracle. Ela também configura um sistema para iniciar e desfazer transações automaticamente após cada teste, e um gerenciador para carregar dados de teste.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add github/awesome-copilot --skill scaffolding-oracle-to-postgres-migration-test-projectOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/scaffolding-oracle-to-postgres-migration-test-project/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Criação de um Projeto de Teste de Integração para Migração de Oracle para PostgreSQL
Cria um projeto de teste xUnit compilável e vazio com infraestrutura de gerenciamento de transações e dados de semente para um único projeto de destino. Execute uma vez por projeto antes de escrever os testes.
Fluxo de Trabalho
Progress:
- [ ] Step 1: Inspect the target project
- [ ] Step 2: Create the xUnit test project
- [ ] Step 3: Implement transaction-rollback base class
- [ ] Step 4: Implement seed data manager
- [ ] Step 5: Verify the project compiles
Etapa 1: Inspecione o projeto de destino
Leia o .csproj do projeto de destino para determinar a versão do .NET e as referências de pacote existentes. Corresponda a essas versões exatamente — não atualize.
Etapa 2: Crie o projeto de teste xUnit
- Tenha como alvo a mesma versão do .NET que o aplicativo em teste.
- Adicione pacotes NuGet para conectividade com o banco de dados Oracle (
Oracle.ManagedDataAccess.Core) e xUnit. - Adicione uma referência de projeto apenas ao projeto de destino — nenhum outro projeto de aplicativo.
- Adicione um
appsettings.jsonconfigurado para conectividade com o banco de dados Oracle.
Etapa 3: Implemente a classe base de rollback de transação
- Crie uma classe de teste base que abra uma transação antes de cada teste e a reverta depois.
- Capture e trate todas as exceções para garantir o rollback.
- Torne o padrão herdável por todas as classes de teste subsequentes.
Etapa 4: Implemente o gerenciador de dados de semente
- Crie um gerenciador de semente global para carregar dados de teste no escopo da transação.
- Não confirme os dados de semente — as transações serão revertidas após cada teste.
- Não use
TRUNCATE TABLE— preserve os dados existentes do banco de dados. - Estabeleça uma convenção de nomenclatura para a localização do arquivo de semente que a criação de testes subsequentes seguirá.
Etapa 5: Verifique se o projeto compila
Compile o projeto de teste e confirme se ele compila sem erros antes de finalizar.
Restrições Principais
- Apenas Fase 3 — esta habilidade cria o projeto de teste com destino Oracle. O projeto de teste PostgreSQL (Fase 6) é criado copiando e migrando este projeto; não execute esta habilidade novamente nesse ponto.
- Oracle é a fonte de comportamento de referência — crie apenas para Oracle, não para PostgreSQL.
- Mantenha as versões existentes de .NET e C#; não introduza recursos mais recentes de linguagem ou runtime.
- A saída é um projeto de teste vazio apenas com infraestrutura — sem casos de teste.
Perguntas frequentes
Por que não devo usar esta ferramenta na Fase 6?
Na Fase 6, você vai migrar o projeto de teste existente para PostgreSQL. Copiar e adaptar o projeto criado na Fase 3 é o método correto, não executar esta ferramenta novamente.
O que são 'seed data'?
'Seed data' são dados iniciais que você carrega no banco de dados para que seus testes possam ser executados. Eles são removidos automaticamente após cada teste.
O que é 'transaction-rollback'?
É uma forma de garantir que as alterações feitas no banco de dados durante um teste sejam desfeitas automaticamente quando o teste termina. Isso mantém seus dados originais seguros.
Detalhes
Descrição original do autor
Scaffolds an xUnit integration test project targeting Oracle in .NET solutions. Creates the test project, transaction-rollback base class, and seed data manager. Use only during Phase 3, before writing Oracle baseline integration tests. Do not invoke during Phase 6 — the PostgreSQL test project is produced by migrating this project, not by running this skill again.
repo: github/awesome-copilot
Popularidade
- Estrelas no GitHub
- 40 mil
- Posição no ranking
- #5359
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
acquire-codebase-knowledge
Ajuda seu agente a entender e documentar um projeto de código existente. É útil para novas pessoas entrarem no projeto ou para ter uma visão geral da arquitetura.
github/awesome-copilot
acreadiness-assess
Faz seu agente avaliar a prontidão de um projeto para IA e gerar um relatório. É útil para entender o quão bem um projeto está preparado para usar ferramentas de IA.
github/awesome-copilot
acreadiness-generate-instructions
Ajuda seu agente a criar instruções para ferramentas de IA baseadas em uma avaliação. É útil para melhorar a forma como a IA interage com o código e fecha lacunas identificadas.
github/awesome-copilot
acreadiness-policy
Faz seu agente ajudar a definir ou aplicar políticas para avaliação de projetos de IA. É útil para padronizar a forma como os projetos são avaliados e garantir conformidade.
github/awesome-copilot
Skills parecidas
cpp-testing
Faz seu agente escrever e melhorar testes para código C++. Ajuda a configurar ferramentas de teste e a corrigir erros.
affaan-m/ECC
csharp-testing
Ajuda seu agente a criar testes para código C# e .NET. Ele usa as melhores práticas para garantir que os testes sejam eficientes e confiáveis.
affaan-m/ECC
django-tdd
Faz seu agente aplicar estratégias de teste para Django com pytest-django e TDD. É útil para escrever testes robustos e garantir a qualidade do código, especialmente para APIs DRF.
affaan-m/ECC