plugins/aai-testing/skills/test-data-management/SKILL.md
February 1, 2026
Select agents to install to:
npx add-skill https://github.com/the-answerai/alphaagent-team/blob/main/plugins/aai-testing/skills/test-data-management/SKILL.md -a claude-code --skill test-data-managementInstallation paths:
.claude/skills/test-data-management/# Test Data Management Skill
Patterns for creating and managing test data.
## Factory Pattern
### Basic Factory
```typescript
// factories/user.factory.ts
import { faker } from '@faker-js/faker'
interface User {
id: string
email: string
name: string
role: 'user' | 'admin'
createdAt: Date
}
export function createUser(overrides: Partial<User> = {}): User {
return {
id: faker.string.uuid(),
email: faker.internet.email(),
name: faker.person.fullName(),
role: 'user',
createdAt: faker.date.past(),
...overrides
}
}
// Create multiple
export function createUsers(count: number, overrides: Partial<User> = {}): User[] {
return Array.from({ length: count }, () => createUser(overrides))
}
```
### Factory with Traits
```typescript
// factories/user.factory.ts
type UserTrait = 'admin' | 'verified' | 'unverified' | 'premium'
const traits: Record<UserTrait, Partial<User>> = {
admin: { role: 'admin' },
verified: { emailVerified: true, verifiedAt: new Date() },
unverified: { emailVerified: false, verifiedAt: null },
premium: { plan: 'premium', planExpiresAt: faker.date.future() }
}
export function createUser(
overrides: Partial<User> = {},
...userTraits: UserTrait[]
): User {
const traitOverrides = userTraits.reduce(
(acc, trait) => ({ ...acc, ...traits[trait] }),
{}
)
return {
id: faker.string.uuid(),
email: faker.internet.email(),
name: faker.person.fullName(),
role: 'user',
emailVerified: false,
createdAt: faker.date.past(),
...traitOverrides,
...overrides
}
}
// Usage
const adminUser = createUser({}, 'admin', 'verified')
const premiumUser = createUser({ name: 'John' }, 'premium', 'verified')
```
### Related Factories
```typescript
// factories/order.factory.ts
import { createUser } from './user.factory'
import { createProduct } from './product.factory'
export function createOrder(overrides: Partial<Order> = {}): Order {
const user = overrides.user || createUser()