mcpField
T
test-data-management

test-data-management

github.com/proffesor-for-testingTesting & quality520113 installsUpdated today
Repository

About test-data-management

test-data-management is a skill for creating and handling test datasets. It outlines synthetic data, anonymization, isolation, and dataset sizes suited to unit, integration, and performance tests.

Key features

  1. 01Avoid production PII in test data
  2. 02Generate synthetic or anonymized data
  3. 03Isolate data and clean up per test
  4. 04Choose data scale by test type
  5. 05Generate volume data in batches

Use cases

  1. 01Preparing unit and integration test fixtures
  2. 02Testing with sensitive-data safeguards
  3. 03Creating large datasets for performance tests

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/proffesor-for-testing/agentic-qe --skill test-data-management

After installing, type/test-data-managementin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

evals/
test-data-management.yaml
schemas/
output.json
scripts/
validate-config.json

Details

From the project README

Test Data Management

<default_to_action> When creating or managing test data:

  1. NEVER use production PII directly
  2. GENERATE synthetic data with faker libraries
  3. ANONYMIZE production data if used (mask, hash)
  4. ISOLATE test data (transactions, per-test cleanup)
  5. SCALE with batch generation (10k+ records/sec)

Quick Data Strategy:

  • Unit tests: Minimal data (just enough)
  • Integration: Realistic data (full complexity)
  • Performance: Volume data (10k+ records)

Critical Success Factors:

  • 40% of test failures from inadequate data
  • GDPR fines up to €20M for PII violations
  • Never store production PII in test environments </default_to_action>

Quick Reference Card

When to Use
  • Creating test datasets
  • Handling sensitive data
  • Performance testing with volume
  • GDPR/CCPA compliance
Data Strategies
TypeWhenSize
MinimalUnit tests1-10 records
RealisticIntegration100-1000 records
VolumePerformance10k+ records
Edge casesBoundary testingTargeted

Data Anonymization

// Masking
function maskEmail(email) {
  const [user, domain] = email.split('@');
  return `${user[0]}***@${domain}`;
}
// [email protected] → j***@example.com

function maskCreditCard(cc) {
  return `****-****-****-${cc.slice(-4)}`;
}
// 4242424242424242 → ****-****-****-4242

// Anonymize production data
const anonymizedUsers = prodUsers.map(user => ({
  id: user.id, // Keep ID for relationships
  email: `user-${user.id}@example.com`, // Fake email
  firstName: faker.person.firstName(), // Generated
  phone: null, // Remove PII
  createdAt: user.createdAt // Keep non-PII
}));

Database Transaction Isolation

// Best practice: use transactions for cleanup
beforeEach(async () => {
  await db.beginTransaction();
});

afterEach(async () => {
  await db.rollbackTransaction(); // Auto cleanup!
});

test('user registration', async () => {
  const user = await userService.register({
    email: '[email protected]'
  });
  expect(user.id).toBeDefined();
  // Automatic rollback after test - no cleanup needed
});

Agent-Driven Data Generation

// High-speed generation with constraints
await Task("Generate Test Data", {
  schema: 'ecommerce',
  count: { users: 10000, products: 500, orders: 5000 },
  preserveReferentialIntegrity: true,
  constraints: {
    age: { min: 18, max: 90 },
    roles: ['customer', 'admin']
  }
}, "qe-test-data-architect");

// GDPR-compliant anonymization
await Task("Anonymize Production Data", {
  source: 'production-snapshot',
  piiFields: ['email', 'phone', 'ssn'],
  method: 'pseudonymization',
  retainStructure: true
}, "qe-test-data-architect");

Agent Coordination Hints

Memory Namespace
aqe/test-data-management/
├── schemas/*            - Data schemas
├── generators/*         - Generator configs
├── anonymization/*      - PII handling rules
└── fixtures/*           - Reusable fixtures
Fleet Coordination
const dataFleet = await FleetManager.coordinate({
  strategy: 'test-data-generation',
  agents: [
    'qe-test-data-architect',  // Generate data
    'qe-test-executor',        // Execute with data
    'qe-security-scanner'      // Validate no PII exposure
  ],
  topology: 'sequential'
});

Related Skills


Remember

Never use production PII directly. Always use synthetic data or properly anonymized production snapshots.

With Agents: qe-test-data-architect generates 10k+ records/sec with realistic patterns, relationships, and constraints. Agents ensure GDPR/CCPA compliance automatically and eliminate test data bottlenecks.

Comments

Markdown supported