关于 sync-test-cases-with-tms
用于在本地项目与 Testomat.io 之间同步 Markdown 测试用例的技能。它指导拉取套件、筛选和验证文件,并通过 `check-tests` CLI 推送指定用例。
主要功能
- 01将 Testomat.io 用例拉取为 Markdown
- 02将 Markdown 用例推送到 Testomat.io
- 03上传前验证测试块
- 04仅筛选测试用例文件上传
- 05选择拉取用例的存储位置
适用场景
- 01下载套件以便本地编辑
- 02上传指定测试用例
- 03刷新项目缓存中的用例
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ testomatio/ skills --skill sync-test-cases-with-tms安装后在 Claude Code 中输入/sync-test-cases-with-tms确认已加载。
附带文件references/TESTOMATIO_CLI.md
详细介绍
与 TMS 同步测试用例
在本地项目与 Testomat.io 之间同步 Markdown 测试用例(*.test.md)。
在用户希望执行以下操作时使用:
- 从 Testomat.io 拉取/导出/下载测试到本地 Markdown 文件。
- 将本地 Markdown 测试推送/上传/导入到 Testomat.io。
- 批量编辑:拉取用例 -> 在本地编辑 -> 推回 TMS。
设置
- 检查
TESTOMATIO令牌:依次检查技能输入 -> 项目根目录中的.env-> 询问用户。 - 将令牌保存到
.env:TESTOMATIO=tstmt_xxxxx。 - 如果用户没有密钥:在 Testomat.io 中通过 Settings → Project → Project Reporting API key 获取(
https://app.testomat.io/projects/<project-id>/settings/project)。
运行 CLI
- 通过
npx运行check-tests。不要将其安装为项目依赖项。 - 本次会话中第一次调用
check-tests时必须使用npx check-tests@latest …,以解析最新版本。同一会话中之后的调用使用普通的npx check-tests …。 - 仅使用本文档、TESTOMATIO_CLI.md 中记录的选项,或
npx check-tests --help列出的选项。不要自行编造选项(例如--pattern、--force)。
拉取
从 Testomat.io 下载测试场景,并保存为本地 Markdown 文件。
目录选择——如果提供了 testDir 输入,或用户传入 -d <path>,则使用该路径。否则:
- 工作区为空或仅用于手动测试:拉取到根目录。
- 端到端测试项目:拉取到
test-cases目录。 - 其他情况:拉取到
.testeiya/test-cases(确保.testeiya/存在且已加入 Git 忽略)。
缓存文件夹规则:
- 默认拉取目标是已被 Git 忽略的缓存目录
.testeiya/test-cases/。如果项目.gitignore中尚无.testeiya/,则将其添加进去。 - 拉取的用例绝不能放入受 Git 跟踪的文件夹(
test-cases/等)——这会污染仓库。 - 文件被 Git 忽略并不妨碍编辑或将其推回。
- 如果仓库已经将
*.test.md文件保存在受 Git 跟踪的文件夹中,则不要拉取——直接在原处处理,或传入-d <that folder>以原地刷新。 - 这与
scan-automation-project的行为一致:在手动测试仓库中运行时,它会将代码拉取到.testeiya/code/。
npx check-tests pull -d .testeiya/test-cases
- 仅拉取特定套件(用户指定套件名称或提供套件 ID):
npx check-tests pull --suite-ids "@S12345678,@S87654321"。 - 更多拉取选项:TESTOMATIO_CLI.md。
推送
将本地 Markdown 测试上传到 Testomat.io。
推送前的文件筛选——仅推送测试用例文件,绝不推送项目文档或需求:
- 包含匹配
*.test.md的文件,或包含有效 `` 块的 Markdown 文件。 - 忽略所有其他 Markdown 文件(
README.md、CHANGELOG.md、文档)。 - 如果测试用例与其他文件放在一起,先将测试文件复制或移动到
.testeiya/test-cases/。
推送前验证:
- 至少存在一个
*.test.md文件。 - 每个文件都包含有效的测试块:
# ... (test case title)
... (test case description)
# Specific files (preferred when known)
npx check-tests push --files login.test.md checkout.test.md
# Testeiya cache folder
npx check-tests push -d .testeiya/test-cases
- 已知要推送的文件时(例如刚由
qa-write-test-cases/improve-test-cases生成),通过--files(别名-f)显式传入这些文件。如果不使用--files,CLI 会回退到默认 glob**/*.test.md,这可能会选中无关文件。 - 为 glob 模式加引号。路径相对于
--dir解析。 .testeiya或test-cases目录存在时,使用-d。- 仅推送测试用例目录(例如
.testeiya/test-cases,而非.testeiya/)。 - 更多推送选项和示例:TESTOMATIO_CLI.md。
摘要输出
同步完成后,打印一段简短的日志式摘要:
Sync Complete:
- Action: pull/push
- Directory: <path>
- Tests synced: 15
- Status: Success
评论
支持 Markdown