Agent skill

Test Regression Strategy

by SurveyController in SurveyController/SurveyController

面向 SurveyController 仓库的测试分层与回归选择技能。用于判断改动后该补哪类测试、mock 边界放哪、CI/unittests/ 与 CI/livetests/ 怎么分层、该跑哪些 pytest 目标,以及哪些场景必须跑 uv run python CI/pythonci.py --full。适合处理功能改动后的验证策略,不适合替代具体模块修复。

GPL-3.0Auto-check passedTesting & QA

Install Test Regression Strategy

skills CLI
$ npx skills add SurveyController/SurveyController --skill test-regression-strategy -a claude-code

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

GitHub CLI
$ gh skill install SurveyController/SurveyController test-regression-strategy --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/SurveyController/SurveyController.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/test-regression-strategy .claude/skills/test-regression-strategy && 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
test-regression-strategy
GitHub stars
142
Token cost
~819 tokens
SKILL.md length
184 words
Files
2
Skills in repo
9
Repo updated
First seen
Licence
GPL-3.0

At a glance

面向 SurveyController 仓库的测试分层与回归选择技能。用于判断改动后该补哪类测试、mock 边界放哪、CI/unittests/ 与 CI/livetests/ 怎么分层、该跑哪些 pytest 目标,以及哪些场景必须跑 uv run python CI/pythonci.py --full。适合处理功能改动后的验证策略,不适合替代具体模块修复。

  • Works in 5 steps: 先给改动分类。 → 先找最近的测试层,不要一上来就全仓库轰炸。 → mock 边界按层放。 → …
  • Tasks that involve Unit testing
  • SKILL.md covers must_read, workflow, when_to_run_full and test_selection, plus 3 more sections
  • Calls uv

What it does

Test Regression Strategy is an agent skill from SurveyController/SurveyController. 面向 SurveyController 仓库的测试分层与回归选择技能。用于判断改动后该补哪类测试、mock 边界放哪、CI/unittests/ 与 CI/livetests/ 怎么分层、该跑哪些 pytest 目标,以及哪些场景必须跑 uv run python CI/pythonci.py --full。适合处理功能改动后的验证策略,不适合替代具体模块修复。

Its SKILL.md is about 820 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).

It sits in Testing & QA, covering Unit testing. It works with Python and pytest. The repository describes itself as: 适用于问卷星、腾讯问卷、Credamo见数平台的纯HTTP高并发提交程序. The licence is GPL-3.0.

When your agent uses it

  • Tasks that involve Unit testing

Example prompts

  • “/test-regression-strategy”

Requirements

  • Python 3

Workflow steps

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

  1. 先给改动分类。
  2. 先找最近的测试层,不要一上来就全仓库轰炸。
  3. mock 边界按层放。
  4. unit 和 live 分开。
  5. 改完后按风险补回归命令。

What it can do on your machine

Read from SKILL.md and the folder at commit 1a22ba3. 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

    Shell commands in SKILL.md call:

    • uv

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

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

    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

Test Regression Strategy loads about 819 tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 184 words of instructions outside code blocks.

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

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from SurveyController/SurveyController at commit 1a22ba3, republished under its GPL-3.0 licence (© SurveyController). 184 words, ~819 tokens.

Download SKILL.mdSave it as .claude/skills/test-regression-strategy/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
test-regression-strategy
description
面向 SurveyController 仓库的测试分层与回归选择技能。用于判断改动后该补哪类测试、mock 边界放哪、`CI/unit_tests/` 与 `CI/live_tests/` 怎么分层、该跑哪些 `pytest` 目标,以及哪些场景必须跑 `uv run python CI/python_ci.py --full`。适合处理功能改动后的验证策略,不适合替代具体模块修复。

Test Regression Strategy

这个 skill 处理“改完后怎么验”。 重点不是多跑测试,是按改动边界挑对测试,少跑废活,别漏高风险回归。

must_read

  • CI/python_ci.py
  • CI/python_checks/common.py
  • CI/unit_tests/conftest.py
  • 目标模块对应的现有测试文件

workflow

  1. 先给改动分类。 常见类别:
    • software/ui/、software/ui/controller/:UI、信号槽、页面同步
    • software/app/、software/io/config/:配置、路径、迁移、序列化
    • software/core/engine/、software/network/、software/providers/:执行链路、HTTP、代理、并发
    • wjx/、tencent/、credamo/:平台 parser、题型规则、提交参数
    • software/update/、CI/release_tools/、Setup/:更新、打包、发布
  2. 先找最近的测试层,不要一上来就全仓库轰炸。 默认顺序:
    • 目标函数或目标模块的单测
    • 同目录的集成型单测
    • uv run python CI/python_ci.py
    • 只有命中高风险条件时才上 --full
  3. mock 边界按层放。
    • 纯计算、归一化、字段映射:尽量不 mock
    • 文件系统、QSettings、网络、子进程、Qt 桌面服务:用 monkeypatch 或 fake
    • 不要 mock 被测模块自己的核心逻辑,只 mock 外边界
  4. unit 和 live 分开。
    • CI/unit_tests/ 只测本地可重复逻辑
    • CI/live_tests/ 只放真实问卷、真实网络、真实发布链路回归
    • 普通修复不要顺手把外网访问塞进 unit test
  5. 改完后按风险补回归命令。

when_to_run_full

这些情况必须跑 uv run python CI/python_ci.py --full:

  • 改了启动链、主窗口装配、页面懒加载、Qt 导入路径
  • 改了 software/app/main.py、software/ui/shell/、software/ui/pages/
  • 改了配置路径迁移,可能影响启动读配置
  • 改了 HTTP 提交主链路、provider 注册、解析入口,担心导入或启动时炸
  • 改了更新、打包、版本入口,可能影响主窗口状态区或启动检查

这些情况通常先跑快速检查就够:

  • 纯工具函数
  • 纯 parser helper
  • 纯 schema/codec 归一化
  • 纯日志格式化

test_selection

按改动选测试:

  • 配置、路径、迁移:
    • uv run pytest CI/unit_tests/app/test_config_codec.py
    • uv run pytest CI/unit_tests/app/test_config_store.py
    • uv run pytest CI/unit_tests/app/test_settings_page_qtbot.py
  • UI 页面和工作台同步:
    • uv run pytest CI/unit_tests/app/test_workbench_pages_smoke.py
    • uv run pytest CI/unit_tests/app/test_ui_layout_contracts.py
    • 相关 qtbot 测试
  • 执行引擎、异步链路、HTTP:
    • uv run pytest CI/unit_tests/engine
    • uv run pytest CI/unit_tests/test_http_client.py
    • uv run pytest CI/unit_tests/providers/test_http_runtime.py
  • parser、题型规则、平台字段:
    • uv run pytest CI/unit_tests/questions
    • uv run pytest CI/unit_tests/providers
    • uv run pytest CI/unit_tests/engine/test_reverse_fill_parser.py
  • 更新、发布、Velopack:
    • uv run pytest CI/unit_tests/app/test_main_window_update_large.py
    • uv run pytest CI/unit_tests/test_velopack_e2e_runner.py
    • 需要时再看 CI/live_tests/test_velopack_e2e.py

project_conventions

  • CI/python_ci.py 默认会跑 compile、Ruff、Pyright、unit tests。
  • --full 额外打开模块导入检查和主窗口 smoke。
  • CI/live_tests/test_live_runtime_regression.py 依赖真实外部页面,不适合日常修复必跑。
  • 覆盖率门槛在 CI/python_checks/common.py 里,当前 unit test 会带 --cov-fail-under=75。
  • 测完如果生成临时文件、覆盖率产物或调试垃圾,要删掉。

common_commands

bash
uv run pytest CI/unit_tests/app/test_config_codec.py
uv run pytest CI/unit_tests/app/test_config_store.py
uv run pytest CI/unit_tests/providers
uv run pytest CI/unit_tests/questions
uv run pytest CI/unit_tests/engine
uv run python CI/python_ci.py
uv run python CI/python_ci.py --full

validation_checklist

  • 是否先按改动边界分类,再选测试。
  • 是否优先跑了最近的单测,而不是一上来全量。
  • mock 是否只放在文件系统、网络、QSettings、Qt 外边界。
  • unit test 是否没有混入真实外网和真实账号。
  • 是否判断了这次改动要不要跑 --full。
  • 跑不了的检查是否明确说明原因。

© SurveyController, GPL-3.0. 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 1 other file in .codex/skills/test-regression-strategy of SurveyController/SurveyController.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit 1a22ba3

Compare with similar skills

Test Regression Strategy 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.

Test Regression Strategy compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Test Regression Strategy this skillSurveyController/SurveyController142—~819Automated safety check: PassGPL-3.0
Adk Verify Snippetsgoogle/adk-python22k—~1.4kAutomated safety check: PassApache-2.0
Hermetic Python Unit TestsdimensionalOS/dimos4.6k—~1.4kAutomated safety check: PassCustom licence
ONNX Runtime Test Runnermicrosoft/onnxruntime22k—~1.8kAutomated safety check: PassMIT
Simple Modern Uvjlevy/simple-modern-uv301—~1.9kAutomated safety check: PassMIT
Test Coverage Reviewareed1192/finance-news-aggregator149—~2.6kAutomated safety check: PassMIT

Similar skills

  • Adk Verify Snippets

    google/adk-python

    Official

    Checks that every Python code block in a Markdown file actually compiles and runs, by extracting each block to a temporary file, executing it in an isolated subprocess, and writing a pass/fail…

    22k GitHub stars~1.4k tokensUpdated today
    Testing & QAAuto-check passed
  • Hermetic Python Unit Tests

    dimensionalOS/dimos

    Rules for writing, fixing and reviewing pytest unit tests that are hermetic: behavior-focused, deterministic, isolated and cheap to run.

    4.6k GitHub stars~1.4k tokensUpdated today
    Testing & QAAuto-check passed
  • ONNX Runtime Test Runner

    microsoft/onnxruntime

    Official

    Runs and debugs ONNX Runtime tests: Google Test executables for C++ and unittest or pytest for Python, with filters and build-directory guidance.

    22k GitHub stars~1.8k tokensUpdated today
    Testing & QAAuto-check passed
  • Simple Modern Uv

    jlevy/simple-modern-uv

    Start, selectively modernize, fully migrate, or update Python projects using simple-modern-uv practices: uv, ruff, BasedPyright, pytest, GitHub Actions CI, and tag-driven PyPI publishing.

    301 GitHub stars~1.9k tokensUpdated 1 mo ago
    Testing & QAAuto-check passed
  • Test Coverage Review

    areed1192/finance-news-aggregator

    Audit, plan, write, and verify unit tests for Python projects using pytest.

    149 GitHub stars~2.6k tokensUpdated 5 mo ago
    Testing & QAAuto-check passed
  • Official

    Runs the ONNX Runtime transformers Python tests against a GPU wheel and proves the cuDNN flash attention path was used rather than a silent fallback.

    22k GitHub stars~2.9k tokensUpdated today
    Testing & QAAuto-check passed

More from SurveyController/SurveyController

All 9 skills in this repo
  • App Settings Migration

    SurveyController/SurveyController

    面向 SurveyController 仓库的设置、路径与配置迁移技能。用于修改 software/app/、software/io/config/、software/core/config/ 里的 QSettings 键、用户目录、配置文件路径、schema 版本、序列化字段、默认值和兼容策略,避免升级后读错配置、写错目录或把旧配置直接干爆。适合做预防性演进,不适合只修表面报错。

    142 GitHub stars~732 tokensUpdated 19 days ago
    Auto-check passed
  • Async HTTP Pipeline

    SurveyController/SurveyController

    面向 SurveyController 仓库的全异步 HTTP 解析与执行链路技能。用于修改或排查 software/network/http/、software/core/engine/、software/providers/、software/network/proxy/ 以及各平台 provider 的异步请求、响应解析、任务调度、并发控制、超时、重试、取消和资源释放问题。适合处理纯…

    142 GitHub stars~648 tokensUpdated 19 days ago
    Auto-check passed
  • Gui Development

    SurveyController/SurveyController

    面向 SurveyController 桌面端的 GUI 开发与界面修复技能。用于修改 software/ui/ 下的 PySide6 + QFluentWidgets 页面、弹窗、导航、配置编辑、运行状态展示和日志界面,处理信号槽、线程协作、对象生命周期、布局、主题和窗口缩放问题。适合做桌面界面开发、交互修复和配置同步,不适合把耗时逻辑直接塞进主线程。

    142 GitHub stars~580 tokensUpdated 19 days ago
    Auto-check passed
  • Log Config Debugging

    SurveyController/SurveyController

    面向 SurveyController 的日志、配置与报错排查技能。用于根据用户提供的日志、截图、配置文件、调用栈、运行环境和最近改动定位根因,修复 software/app/、software/io/、software/logging/、software/network/、software/ui/…

    142 GitHub stars~481 tokensUpdated 19 days ago
    Auto-check passed
  • Playwright Pipeline

    SurveyController/SurveyController

    面向 SurveyController 仓库 v3 分支的 Playwright 作答执行层技能。仅在修改或排查 Playwright 作答链路、异步浏览器 owner/context 池、BrowserDriver 封装、页面加载、运行时答题、翻页、提交、取消、超时、资源释放和并发调度时使用。只能用于 v3 分支;只允许系统自带 Microsoft Edge,不允许安装或引入…

    142 GitHub stars~945 tokensUpdated 19 days ago
    Auto-check passed
  • Question Parser Rules

    SurveyController/SurveyController

    面向 SurveyController 仓库的题型解析、字段映射与 parser 规则技能。用于修改 wjx/provider/、tencent/provider/、credamo/provider/、software/core/questions/、software/providers/ 中的题目结构解析、元数据字段、题型识别、逻辑规则标记、答案模型映射和最小兼容适配。适合处理 parser…

    142 GitHub stars~653 tokensUpdated 19 days ago
    Auto-check passed

Works with

Categories

Questions about Test Regression Strategy

What does Test Regression Strategy do?

面向 SurveyController 仓库的测试分层与回归选择技能。用于判断改动后该补哪类测试、mock 边界放哪、CI/unittests/ 与 CI/livetests/ 怎么分层、该跑哪些 pytest 目标,以及哪些场景必须跑 uv run python CI/pythonci.py --full。适合处理功能改动后的验证策略,不适合替代具体模块修复。. Test Regression Strategy is an agent skill from SurveyController/SurveyController.

When should I use Test Regression Strategy?

Test Regression Strategy fits situations like: tasks that involve Unit testing.

How do I install Test Regression Strategy in Claude Code?

Run `npx skills add SurveyController/SurveyController --skill test-regression-strategy -a claude-code`. Or copy the skill folder (.codex/skills/test-regression-strategy in SurveyController/SurveyController) into .claude/skills/test-regression-strategy in your project. Claude Code loads it when a task matches its description.

How do I install Test Regression Strategy in Codex?

Run `npx skills add SurveyController/SurveyController --skill test-regression-strategy -a codex`. Or copy the skill folder (.codex/skills/test-regression-strategy in SurveyController/SurveyController) into .agents/skills/test-regression-strategy in your project. Codex loads it when a task matches its description.

Can I use Test Regression Strategy 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 SurveyController/SurveyController --skill test-regression-strategy -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/test-regression-strategy, .gemini/skills/test-regression-strategy, .github/skills/test-regression-strategy and .opencode/skills/test-regression-strategy in your project.

What does Test Regression Strategy need to run?

Going by SKILL.md and its folder, Test Regression Strategy needs the command-line tools its instructions call (uv). Our summary lists: Python 3.

Does Test Regression Strategy access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Test Regression Strategy 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. Review the folder before installing.

What licence does Test Regression Strategy use?

Test Regression Strategy is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Test Regression Strategy use?

About 819 tokens (SKILL.md is roughly 3.3k 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 Test Regression Strategy?

Skills that share tags, products or a category with Test Regression Strategy: Adk Verify Snippets (google/adk-python, 22k stars), Hermetic Python Unit Tests (dimensionalOS/dimos, 4.6k stars), ONNX Runtime Test Runner (microsoft/onnxruntime, 22k stars) and Simple Modern Uv (jlevy/simple-modern-uv, 301 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Test Regression Strategy?

SurveyController (a GitHub organization) maintains it in SurveyController/SurveyController, which has 142 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on September 18, 2026.

Source: SurveyController/SurveyController on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.