# mcore-testing

Скилл объясняет тестовую систему Megatron-LM: раскладку тестов, рецепты YAML, golden values и запуск unit-тестов локально.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1800 установок · ★ 3735
- Автор: Philip Petrakian
- Лицензия: Apache-2.0 · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/NVIDIA/skills/tree/HEAD/skills/mcore-testing/SKILL.md
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/skills/mcore-testing

## Что делает

Скилл описывает, как устроено тестирование в Megatron-LM, и отвечает на вопросы вида «как добавить тест», «pytest падает», «где лежат golden values». Внутри — раскладка каталога `tests/`, структура recipe YAML, порядок добавления unit- и functional-тестов, маркеры pytest и воспроизведение сбоя CI локально.

Unit-тесты идут через `torch.distributed.run`, поэтому для любого запуска нужен доступ к GPU. Например, полный прогон выглядит так: `uv run python -m torch.distributed.run --nproc-per-node 8 -m pytest -q tests/unit_tests`. Отдельные тесты фильтруются по имени через `-k` или по маркерам: `-m "not flaky and not flaky_in_dev"`. Для точного повторения сбоя из CI есть `tests/unit_tests/run_ci_test.sh`.

Functional-тесты живут в `tests/functional_tests/test_cases/{model}/{test_case}/` и требуют `model_config.yaml` плюс запись в recipe YAML. После успешного прогона golden values скачивают скриптом `download_golden_values.py` и коммитят. Учтите: `conftest.py` ищет тестовые данные в `/opt/data` и пытается их докачать, если их нет — вне канонического контейнера данные придётся положить самому или пропустить зависящие от них тесты.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add NVIDIA/skills --skill mcore-testing -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/mcore-testing/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/mcore-testing/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add NVIDIA/skills --skill mcore-testing -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/mcore-testing/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add NVIDIA/skills --skill mcore-testing -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/mcore-testing/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install NVIDIA/skills mcore-testing
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/mcore-testing/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add NVIDIA/skills --skill mcore-testing -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/NVIDIA/skills --path skills/mcore-testing
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/mcore-testing/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add NVIDIA/skills --skill mcore-testing -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/NVIDIA/skills/tree/HEAD/skills/mcore-testing/SKILL.md

## Когда брать
- разобраться в раскладке каталога `tests/` и понять, куда класть новый тест
- написать recipe YAML для functional-теста и не забыть обязательные поля
- воспроизвести падение CI-бакета локально
- скачать и закоммитить golden values после успешного прогона
- отключить флейки-тест, не удаляя его из рецепта

## Примеры запросов агенту
- как добавить unit-тест в tests/unit_tests?
- pytest падает на тесте модели, помоги воспроизвести локально
- напиши recipe YAML для нового functional-теста

## Похожие
- [python-testing-patterns](https://affpapa.org/nevibecode/skills/python-testing-patterns.md) — скилл · 36943 установки
- [python-testing](https://affpapa.org/nevibecode/skills/python-testing.md) — скилл · 4900 установок
- [unit-testing](https://affpapa.org/nevibecode/skills/unit-testing.md) — скилл · 1100 установок
- [api-testing](https://affpapa.org/nevibecode/skills/secondsky-api-testing.md) — скилл · 890 установок
- [unit-testing-framework](https://affpapa.org/nevibecode/skills/unit-testing-framework.md) — скилл · 593 установки

Из того же набора: [nvidia/skills](https://affpapa.org/nevibecode/by/nvidia/skills.md) — 178 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
