Pular para o conteúdo
Skillpedia
Testes40 mil · #5359

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

https://github.com/github/awesome-copilot/blob/main/skills/scaffolding-oracle-to-postgres-migration-test-project/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/github/awesome-copilot/blob/main/skills/scaffolding-oracle-to-postgres-migration-test-project/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
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-project

Ou 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.md
Conteú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.json configurado 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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas