首页/测试 & QA/creating-oracle-to-postgres-migration-integration-tests
C

creating-oracle-to-postgres-migration-integration-tests

by @githubv
4.3(20)

为Oracle到PostgreSQL数据库迁移创建集成测试,验证迁移后系统功能和数据完整性。

integration-testingdatabase-migration-testingoracle-to-postgresqltest-automationGitHub
安装方式
npx skills add https://github.com/github/awesome-copilot --skill creating-oracle-to-postgres-migration-integration-tests
compare_arrows

Before / After 效果对比

1 组
使用前

迁移后缺乏全面集成测试,系统兼容性与稳定性存疑。

使用后

创建集成测试,验证迁移后系统功能,确保数据一致性与稳定。

SKILL.md

creating-oracle-to-postgres-migration-integration-tests

Creating Integration Tests for Oracle-to-PostgreSQL Migration

Generates integration test cases for data access artifacts in a single target project. Tests validate behavior consistency when running against Oracle or PostgreSQL.

Prerequisites

  • The test project must already exist and compile (scaffolded separately).

  • Read the existing base test class and seed manager conventions before writing tests.

Workflow

Test Creation:
- [ ] Step 1: Discover the test project conventions
- [ ] Step 2: Identify testable data access artifacts
- [ ] Step 3: Create seed data
- [ ] Step 4: Write test cases
- [ ] Step 5: Review determinism

Step 1: Discover the test project conventions

Read the base test class, seed manager, and project file to understand inheritance patterns, transaction management, and seed file conventions.

Step 2: Identify testable data access artifacts

Scope to the target project only. List data access methods that interact with the database — repositories, DAOs, stored procedure callers, query builders.

Step 3: Create seed data

  • Follow seed file location and naming conventions from the existing project.

  • Reuse existing seed files when possible.

  • Avoid TRUNCATE TABLE — keep existing database data intact.

  • Do not commit seed data; tests run in transactions that roll back.

  • Ensure seed data does not conflict with other tests.

  • Load and verify seed data before assertions depend on it.

Step 4: Write test cases

  • Inherit from the base test class to get automatic transaction create/rollback.

  • Assert logical outputs (rows, columns, counts, error types), not platform-specific messages.

  • Assert specific expected values — never assert that a value is merely non-null or non-empty when a concrete value is available from seed data.

  • Avoid testing code paths that do not exist or asserting behavior that cannot occur.

  • Avoid redundant assertions across tests targeting the same method.

Step 5: Review determinism

Re-examine every assertion against non-null values. Confirm each is deterministic against the seeded data. Fix any assertion that depends on database state outside the test's control.

Key Constraints

  • Oracle is the golden source — tests capture Oracle's expected behavior.

  • DB-agnostic assertions — no platform-specific error messages or syntax in assertions.

  • Seed only against Oracle — test project will be migrated to PostgreSQL later.

  • Scoped to one project — do not create tests for artifacts outside the target project.

Weekly Installs235Repositorygithub/awesome-copilotGitHub Stars25.7KFirst Seen7 days agoSecurity AuditsGen Agent Trust HubPassSocketPassSnykPassInstalled ongemini-cli203codex202opencode195cursor194kimi-cli192github-copilot192

用户评价 (0)

发表评价

效果
易用性
文档
兼容性

暂无评价

统计数据

安装量1.8K
评分4.3 / 5.0
版本
更新日期2026年10月7日
对比案例1 组

用户评分

4.3(20)
5
60%
4
40%
3
0%
2
0%
1
0%

为此 Skill 评分

0.0

兼容平台

🔧Claude Code

时间线

创建2026年3月18日
最后更新2026年10月7日
🎁 Agent 知识卡片
调研问卷