regression-testing — скилл для Claude Code: что делает и установка
Выбирает тесты по git diff и оценке рисков, чтобы не прогонять всю базу на каждый коммит. Помогает настроить быстрый регресс в CI/CD.
npx skills add proffesor-for-testing/agentic-qe --skill regression-testing -a claude-codeЧто делает regression-testing
Скилл выстраивает регрессионный прогон при изменении кода. Он задействует субагентов qe-regression-risk-analyzer и qe-test-executor, чтобы проверить diff, связать затронутые файлы с тестами и отсечь лишнее. Выборка строится по истории падений, анализу зависимостей или бюджету времени.
Скилл предлагает три уровня прогона: быстрый smoke с тестами изменённого кода на 5–10 минут для каждого коммита, ночной расширенный запуск и полный регресс перед релизом. Для локализации бага из продакшена агент умеет формировать новый тест и сохранять его в каталог aqe/regression-testing/.
ИИ часто пытается запустить весь тестовый набор вопреки указанию отобрать часть тестов. Ограничивайте запуск явно через флаг --affected или список файлов. Скилл опирается на прямые связи и может пропустить транзитивные зависимости через несколько уровней вызовов, поэтому для контейнеров полезно сразу задавать шардирование и параметр --workers=2.
Какие задачи решает
- отобрать затронутые тесты по git diff вместо полного прогона
- сократить время проверки коммитов до 5–10 минут
- сгенерировать регрессионный тест по описанию бага из продакшена
- настроить шардирование и параллельный запуск для предотвращения OOM в CI
Примеры запросов агенту
- Проанализируй git diff ветки и выбери тесты для затронутых файлов через regression-testing
- Спланируй запуск регресса с ограничением по времени в 15 минут с помощью regression-testing
- Создай регрессионный тест для бага BUG-567 о сбое оформления заказа
Как установить regression-testing
1Через Skills CLI (Vercel)
npx skills add proffesor-for-testing/agentic-qe --skill regression-testing -a claude-code2Вручную: положить файлы
~/.claude/skills/regression-testing/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/regression-testing/
1Через Skills CLI (Vercel)
npx skills add proffesor-for-testing/agentic-qe --skill regression-testing -a codex2Вручную: положить файлы
.agents/skills/regression-testing/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add proffesor-for-testing/agentic-qe --skill regression-testing -a cursor2Вручную: положить файлы
.cursor/skills/regression-testing/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install proffesor-for-testing/agentic-qe regression-testing2Вручную: положить файлы
.github/skills/regression-testing/SKILL.md1Через Skills CLI (Vercel)
npx skills add proffesor-for-testing/agentic-qe --skill regression-testing -a gemini-cli2Командой платформы
gemini skills install https://github.com/proffesor-for-testing/agentic-qe --path assets/skills/regression-testingВручную: положить файлы
.devin/skills/regression-testing/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add proffesor-for-testing/agentic-qe --skill regression-testing -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора4
Похожие
Рядом в теме «Тесты и QA»
Всё по теме «Тесты и QA» →Вопросы о regression-testing
Как установить regression-testing в Claude Code?
Выполните команду npx skills add proffesor-for-testing/agentic-qe --skill regression-testing -a claude-code. Файл конфигурации появится по пути ~/.claude/skills/regression-testing/SKILL.md.
Что делает regression-testing?
Скилл анализирует изменения в коде, ранжирует риски и запускает только те проверки, которые затрагивают изменённые модули. Это сокращает объём запускаемых тестов до 70–90%.
Почему агент может сообщить об отсутствии регрессий при сломанном коде?
Агент иногда сообщает о нуле регрессий, если тесты вообще не запустились. Всегда проверяйте число фактически выполненных тестов в отчёте, а не только итоговый статус прогона.
Исходный текст
SKILL.md · MIT
---
name: regression-testing
description: "Strategic regression testing with test selection, impact analysis, and continuous regression management. Use when verifying fixes don't break existing functionality, planning regression suites, or optimizing test execution for faster feedback."
category: specialized-testing
priority: high
tokenEstimate: 1000
agents: [qe-regression-risk-analyzer, qe-test-executor, qe-coverage-analyzer]
implementation_status: optimized
optimization_version: 1.0
last_optimized: 2025-12-02
dependencies: []
quick_reference_card: true
tags: [regression, test-selection, impact-analysis, ci-cd, change-based, risk-based]
trust_tier: 3
validation:
schema_path: schemas/output.json
validator_path: scripts/validate-config.json
eval_path: evals/regression-testing.yaml
---
# Regression Testing
<default_to_action>
When verifying changes don't break existing functionality:
1. ANALYZE what changed (git diff, impact analysis)
2. SELECT tests based on change + risk (not everything)
3. RUN in priority order (smoke → selective → full)
4. OPTIMIZE execution (parallel, sharding)
5. MONITOR suite health (flakiness, execution time)
**Quick Regression Strategy:**
- Per-commit: Smoke + changed code tests (5-10 min)
- Nightly: Extended regression (30-60 min)
- Pre-release: Full regression (2-4 hours)
**Critical Success Factors:**
- Smart selection catches 90% of regressions in 10% of time
- Flaky tests waste more time than they save
- Every production bug becomes a regression test
</default_to_action>
## Quick Reference Card
### When to Use
- After any code change
- Before release
- After dependency updates
- After environment changes
### Test Selection Strategies
| Strategy | How | Reduction |
|----------|-----|-----------|
| **Change-based** | Git diff analysis | 70-90% |
| **Risk-based** | Priority by impact | 50-70% |
| **Historical** | Frequently failing | 40-60% |
| **Time-budget** | Fixed time window | Variable |
---
## Change-Based Test Selection
```typescript
// Analyze changed files and select impacted tests
function selectTests(changedFiles: string[]): string[] {
const testsToRun = new Set<string>();
for (const file of changedFiles) {
// Direct tests
testsToRun.add(`${file.replace('.ts', '.test.ts')}`);
// Dependent tests (via coverage mapping)
const dependentTests = testCoverage[file] || [];
dependentTests.forEach(t => testsToRun.add(t));
}
return Array.from(testsToRun);
}
// Example: payment.ts changed
// Runs: payment.test.ts, checkout.integration.test.ts, e2e/purchase.test.ts
```
---
## CI/CD Integration
```yaml
# .github/workflows/regression.yml
jobs:
quick-regression:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Analyze changes
id: changes
uses: dorny/paths-filter@v2
with:
filters: |
payment:
- 'src/payment/**'
auth:
- 'src/auth/**'
- name: Run affected tests
run: npm run test:affected
- name: Smoke tests (always)
run: npm run test:smoke
nightly-regression:
if: github.event_name == 'schedule'
timeout-minutes: 120
steps:
- run: npm test -- --coverage
```
---
## Agent-Driven Regression
```typescript
// Smart test selection
await Task("Regression Analysis", {
pr: 1234,
strategy: 'change-based-with-risk',
timeBudget: '15min'
}, "qe-regression-risk-analyzer");
// Returns:
// {
// mustRun: ['payment.test.ts', 'checkout.integration.test.ts'],
// shouldRun: ['order.test.ts'],
// canSkip: ['profile.test.ts', 'search.test.ts'],
// estimatedTime: '12 min',
// riskCoverage: 0.94
// }
// Generate regression test from production bug
await Task("Bug Regression Test", {
bug: { id: 'BUG-567', description: 'Checkout fails > 100 items' },
preventRecurrence: true
}, "qe-test-generator");
```
---
## Agent Coordination Hints
### Memory Namespace
```
aqe/regression-testing/
├── test-selection/* - Impact analysis results
├── suite-health/* - Flakiness, timing trends
├── coverage-maps/* - Test-to-code mapping
└── bug-regressions/* - Tests from production bugs
```
### Fleet Coordination
```typescript
const regressionFleet = await FleetManager.coordinate({
strategy: 'comprehensive-regression',
agents: [
'qe-regression-risk-analyzer', // Analyze changes, select tests
'qe-test-executor', // Execute selected tests
'qe-coverage-analyzer', // Analyze coverage gaps
'qe-quality-gate' // Go/no-go decision
],
topology: 'sequential'
});
```
---
## Related Skills
- [risk-based-testing](../risk-based-testing/) - Risk-based prioritization
- [test-automation-strategy](../test-automation-strategy/) - Automation pyramid
- [continuous-testing-shift-left](../continuous-testing-shift-left/) - CI/CD integration
---
## Remember
**With Agents:** `qe-regression-risk-analyzer` provides intelligent test selection achieving 90% defect detection in 10% of execution time. Agents generate regression tests from production bugs automatically.
## Skill Composition
- **Test failing?** → Use `/test-failure-investigator` to diagnose root cause
- **File a bug** → Use `/bug-reporting-excellence` for proper bug reporting
- **Test selection** → Use `/risk-based-testing` for risk-based prioritization
## Gotchas
- Agent defaults to "run everything" despite being told to select — explicitly constrain with `--affected` or file list
- Change-based selection misses transitive dependencies — a model change can break a controller test 3 hops away
- Flaky tests in regression suites erode trust faster than missing tests — quarantine immediately, don't skip
- Agent may report "0 regressions" when tests simply weren't run — verify test count in output, not just pass/fail
- Running full regression in containers often OOMs — use `--workers=2` and `--shard` for CI environments
© proffesor-for-testing · MIT · proffesor-for-testing/agentic-qe