Database schema validation, data integrity testing, migration testing, transaction isolation, and query performance.

MITAuto-check passedDatabases

Install Database Testing

skills CLI
$ npx skills add proffesor-for-testing/agentic-qe --skill database-testing -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install proffesor-for-testing/agentic-qe database-testing --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/proffesor-for-testing/agentic-qe.git skills-src && mkdir -p .claude/skills && cp -r skills-src/assets/skills/database-testing .claude/skills/database-testing && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
database-testing
GitHub stars
494
Used in
1 other repo
Token cost
~1.7k tokens
SKILL.md length
206 words
Files
4 (incl. scripts)
Skills in repo
111
Repo updated
First seen
Licence
MIT

At a glance

Database schema validation, data integrity testing, migration testing, transaction isolation, and query performance.

  • Works in 5 steps: VALIDATE schema (tables, columns,… → TEST data integrity (unique, foreign… → VERIFY migrations (forward works,… → …
  • Testing data persistence
  • SKILL.md covers Quick Reference Card, Schema Testing, Data Integrity Testing and Migration Testing, plus 5 more sections
  • Ensuring referential integrity

What it does

Database Testing is an agent skill from proffesor-for-testing/agentic-qe. Database schema validation, data integrity testing, migration testing, transaction isolation, and query performance. Use when testing data persistence, ensuring referential integrity, or validating database migrations.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts (for example `evals/database-testing.yaml`, `schemas/output.json` and `scripts/validate-config.json`).

It sits in Databases, covering Query optimization, Database schema design and Database migrations. The repository describes itself as: Agentic QE Fleet is an open-source AI-powered QA/QE platform designed for use with Coding Agents (works best with Claude Code) featuring specialized agents and skills to support… The licence is MIT.

When your agent uses it

  • Testing data persistence
  • Ensuring referential integrity
  • Validating database migrations

Example prompts

  • “/database-testing”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. VALIDATE schema (tables, columns, constraints exist as expected)
  2. TEST data integrity (unique, foreign key, check constraints)
  3. VERIFY migrations (forward works, rollback works, data preserved)
  4. CHECK transaction isolation (ACID properties, concurrent access)
  5. MEASURE query performance (indexes used, execution time)

What it can do on your machine

Read from SKILL.md and the folder at commit 829d030. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/, which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Database Testing loads about 1.7k tokens when it runs. Until then it costs about 59 tokens; SKILL.md has 206 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~59
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from proffesor-for-testing/agentic-qe at commit 829d030, republished under its MIT licence (© proffesor-for-testing). 206 words, ~1,700 tokens.

Download SKILL.mdSave it as .claude/skills/database-testing/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
database-testing
description
Database schema validation, data integrity testing, migration testing, transaction isolation, and query performance. Use when testing data persistence, ensuring referential integrity, or validating database migrations.
category
specialized-testing
priority
high
tokenEstimate
900
agents
qe-test-data-architect, qe-test-executor, qe-performance-tester
implementation_status
optimized
optimization_version
1
last_optimized
2025-12-02
quick_reference_card
true
tags
database, schema, migration, transactions, integrity, sql, performance
trust_tier
3

Database Testing

<default_to_action> When testing database operations:

  1. VALIDATE schema (tables, columns, constraints exist as expected)
  2. TEST data integrity (unique, foreign key, check constraints)
  3. VERIFY migrations (forward works, rollback works, data preserved)
  4. CHECK transaction isolation (ACID properties, concurrent access)
  5. MEASURE query performance (indexes used, execution time)

Quick DB Testing Checklist:

  • Schema matches specification
  • Unique constraints prevent duplicates
  • Foreign keys prevent orphaned records
  • Migrations are reversible
  • Transactions roll back on error

Critical Success Factors:

  • Database bugs cause data loss/corruption (catastrophic)
  • Test migrations in staging before production
  • Transaction tests catch concurrency bugs </default_to_action>

Quick Reference Card

When to Use
  • New table/schema creation
  • Migration development
  • Data integrity validation
  • Query performance optimization
Database Test Types
TypeFocusWhen
SchemaStructure correctTable creation
IntegrityConstraints workData operations
MigrationUp/down workSchema changes
TransactionACID propertiesConcurrent access
PerformanceQuery speedOptimization

Schema Testing

javascript
test('users table has correct schema', async () => {
  const schema = await db.raw(`
    SELECT column_name, data_type, is_nullable
    FROM information_schema.columns
    WHERE table_name = 'users'
  `);

  expect(schema).toContainEqual({
    column_name: 'id',
    data_type: 'integer',
    is_nullable: 'NO'
  });

  expect(schema).toContainEqual({
    column_name: 'email',
    data_type: 'character varying',
    is_nullable: 'NO'
  });
});

Data Integrity Testing

javascript
test('email must be unique', async () => {
  await db.users.create({ email: 'test@example.com' });

  await expect(
    db.users.create({ email: 'test@example.com' })
  ).rejects.toThrow('unique constraint violation');
});

test('foreign key prevents orphaned records', async () => {
  const user = await db.users.create({ email: 'test@example.com' });
  await db.orders.create({ userId: user.id, total: 100 });

  await expect(
    db.users.delete({ id: user.id })
  ).rejects.toThrow('foreign key constraint');
});

Migration Testing

javascript
test('migration is reversible', async () => {
  await migrate('add-users-table');

  // Table exists after migration
  const tables = await db.raw(`SELECT table_name FROM information_schema.tables`);
  expect(tables.map(t => t.table_name)).toContain('users');

  await rollback('add-users-table');

  // Table gone after rollback
  const tablesAfter = await db.raw(`SELECT table_name FROM information_schema.tables`);
  expect(tablesAfter.map(t => t.table_name)).not.toContain('users');
});

test('migration preserves existing data', async () => {
  await db.users.create({ email: 'test@example.com' });

  await migrate('add-age-column');

  const user = await db.users.findOne({ email: 'test@example.com' });
  expect(user).toBeDefined();
  expect(user.age).toBeNull(); // New column, null default
});

Transaction Testing

javascript
test('transaction rolls back on error', async () => {
  const initialCount = await db.users.count();

  try {
    await db.transaction(async (trx) => {
      await trx('users').insert({ email: 'user1@example.com' });
      await trx('users').insert({ email: 'user2@example.com' });
      throw new Error('Rollback test');
    });
  } catch (error) { /* Expected */ }

  expect(await db.users.count()).toBe(initialCount);
});

test('concurrent transactions isolated', async () => {
  const user = await db.users.create({ balance: 100 });

  // Two concurrent withdrawals (race condition test)
  await Promise.all([
    db.transaction(async (trx) => {
      const current = await trx('users').where({ id: user.id }).first();
      await trx('users').update({ balance: current.balance - 50 });
    }),
    db.transaction(async (trx) => {
      const current = await trx('users').where({ id: user.id }).first();
      await trx('users').update({ balance: current.balance - 50 });
    })
  ]);

  const final = await db.users.findOne({ id: user.id });
  expect(final.balance).toBe(0); // Proper isolation
});

Agent-Driven Database Testing

typescript
// Generate test data with integrity
await Task("Generate Test Data", {
  schema: 'ecommerce',
  tables: ['users', 'products', 'orders'],
  count: { users: 1000, products: 500, orders: 5000 },
  preserveReferentialIntegrity: true
}, "qe-test-data-architect");

// Test migration safety
await Task("Migration Test", {
  migration: 'add-payment-status-column',
  tests: ['forward', 'rollback', 'data-preservation'],
  environment: 'staging'
}, "qe-test-executor");

Agent Coordination Hints

Memory Namespace
aqe/database-testing/
├── schema-snapshots/*   - Current schema state
├── migrations/*         - Migration test results
├── integrity/*          - Constraint validation
└── performance/*        - Query benchmarks
Fleet Coordination
typescript
const dbFleet = await FleetManager.coordinate({
  strategy: 'database-testing',
  agents: [
    'qe-test-data-architect',  // Generate test data
    'qe-test-executor',        // Run DB tests
    'qe-performance-tester'    // Query performance
  ],
  topology: 'sequential'
});


Remember

Test migrations before production: Forward works, rollback works, data preserved, performance acceptable. Never deploy untested migrations.

With Agents: qe-test-data-architect generates realistic test data with referential integrity. qe-test-executor validates migrations automatically in CI/CD.

© proffesor-for-testing, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts) in assets/skills/database-testing of proffesor-for-testing/agentic-qe.

  • SKILL.md
  • evals/database-testing.yaml
  • schemas/output.json
  • scripts/validate-config.json

Open the folder on GitHubat commit 829d030

Used in 1 other repository

We found 5 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in proffesor-for-testing/agentic-qe, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Database Testing next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Database Testing compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Database Testing this skillproffesor-for-testing/agentic-qe4941 repos~1.7kAutomated safety check: PassMIT
Supabase Postgres Best Practicessupabase/agent-skills2.7k24 repos~808Automated safety check: PassMIT
MySQL Schema and Query Tuningplanetscale/database-skills6983 repos~1.4kAutomated safety check: PassMIT
DatabasesMicrock/ordinary-claude-skills401—~1.9kAutomated safety check: NotesMIT
SQL Optimization Patternsynulihao/AgentSkillOS61710 repos~3.3kAutomated safety check: PassNone
DB Migrationskurealnum/dotfiles290—~820Automated safety check: PassNone

Similar skills

  • Official

    Gives the agent Postgres rules to consult before writing or changing tables, queries, indexes, RLS policies or migrations, and when diagnosing slow queries.

    2.7k GitHub starsUsed in 24 repos~808 tokens
    DatabasesAuto-check passed
  • MySQL Schema and Query Tuning

    planetscale/database-skills

    Official

    Guides safe, measurable MySQL and InnoDB changes across schema design, indexing, query tuning, transactions, locking and replication, with rollout steps.

    698 GitHub starsUsed in 3 repos~1.4k tokens
    DatabasesAuto-check passed
  • Databases

    Microck/ordinary-claude-skills

    Work with MongoDB (document database, BSON documents, aggregation pipelines, Atlas cloud) and PostgreSQL (relational database, SQL queries, psql CLI, pgAdmin).

    401 GitHub stars~1.9k tokensUpdated 1 mo ago
    DatabasesAuto-check: notes
  • SQL Optimization Patterns

    ynulihao/AgentSkillOS

    Master SQL query optimization, indexing strategies, and EXPLAIN analysis to dramatically improve database performance and eliminate slow queries.

    617 GitHub starsUsed in 10 repos~3.3k tokens
    DatabasesAuto-check passed
  • DB Migrations

    kurealnum/dotfiles

    A skill your agent uses when generating or regenerating Drizzle migration files, changing database schema tables or columns, resolving migration sequence conflicts after rebase, reviewing migration…

    290 GitHub stars~820 tokensUpdated 5 mo ago
    DatabasesAuto-check passed
  • Change Database Schema

    martin-ueding/geo-activity-playground

    How to change the SQLAlchemy data model and generate the matching Alembic migration.

    100 GitHub stars~225 tokensUpdated 10 days ago
    DatabasesAuto-check passed

More from proffesor-for-testing/agentic-qe

All 111 skills in this repo
  • Contract Testing

    proffesor-for-testing/agentic-qe

    Consumer-driven contract testing for microservices using Pact, schema validation, API versioning, and backward compatibility testing.

    494 GitHub stars~1.8k tokensUpdated 3 days ago
    Auto-check passed
  • Mutation Testing

    proffesor-for-testing/agentic-qe

    Test quality validation through mutation testing, assessing test suite effectiveness by introducing code mutations and measuring kill rate.

    494 GitHub stars~1.7k tokensUpdated 3 days ago
    Auto-check passed
  • Performance Testing

    proffesor-for-testing/agentic-qe

    Profiles application performance under load using k6, Artillery, or JMeter to measure latency, throughput, and error rates.

    494 GitHub stars~2.4k tokensUpdated 3 days ago
    Auto-check passed
  • Code Review Quality

    proffesor-for-testing/agentic-qe

    Conduct context-driven code reviews focusing on quality, testability, and maintainability.

    494 GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Security Testing

    proffesor-for-testing/agentic-qe

    Scans for security vulnerabilities including XSS, SQL injection, CSRF, and auth flaws using OWASP Top 10 methodology.

    494 GitHub stars~2.7k tokensUpdated 3 days ago
    Auto-check: notes
  • Accessibility Testing

    proffesor-for-testing/agentic-qe

    WCAG 2.2 compliance testing, screen reader validation, and inclusive design verification.

    494 GitHub stars~2k tokensUpdated 3 days ago
    Auto-check passed

Categories

Questions about Database Testing

What does Database Testing do?

Database schema validation, data integrity testing, migration testing, transaction isolation, and query performance. Database Testing is an agent skill from proffesor-for-testing/agentic-qe. Database schema validation, data integrity testing, migration testing, transaction isolation, and query performance.

When should I use Database Testing?

Database Testing fits situations like: testing data persistence; ensuring referential integrity; validating database migrations.

How do I install Database Testing in Claude Code?

Run `npx skills add proffesor-for-testing/agentic-qe --skill database-testing -a claude-code`. Or copy the skill folder (assets/skills/database-testing in proffesor-for-testing/agentic-qe) into .claude/skills/database-testing in your project. Claude Code loads it when a task matches its description.

How do I install Database Testing in Codex?

Run `npx skills add proffesor-for-testing/agentic-qe --skill database-testing -a codex`. Or copy the skill folder (assets/skills/database-testing in proffesor-for-testing/agentic-qe) into .agents/skills/database-testing in your project. Codex loads it when a task matches its description.

Can I use Database Testing in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add proffesor-for-testing/agentic-qe --skill database-testing -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/database-testing, .gemini/skills/database-testing, .github/skills/database-testing and .opencode/skills/database-testing in your project.

What does Database Testing need to run?

SKILL.md names no scripts, command-line tools or credentials: Database Testing is instructions for the agent only.

Does Database Testing access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Database Testing safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Database Testing use?

Database Testing is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Database Testing use?

About 1.7k tokens (SKILL.md is roughly 6.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Database Testing?

Skills that share tags, products or a category with Database Testing: Supabase Postgres Best Practices (supabase/agent-skills, 2.7k stars), MySQL Schema and Query Tuning (planetscale/database-skills, 698 stars), Databases (Microck/ordinary-claude-skills, 401 stars) and SQL Optimization Patterns (ynulihao/AgentSkillOS, 617 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Database Testing?

proffesor-for-testing (a GitHub user) maintains it in proffesor-for-testing/agentic-qe, which has 494 GitHub stars. The repository holds 111 skills in this directory. The repository was last updated on October 4, 2026.

Source: proffesor-for-testing/agentic-qe on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.