# test-skills **Repository Path**: JackStarCoder/test-skills ## Basic Information - **Project Name**: test-skills - **Description**: 测试skills集合 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-08 - **Last Updated**: 2026-08-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Test Skills 项目 本项目用于管理测试用例生成相关的 Qwen Code Skill,采用模块化设计,支持灵活扩展。 --- ## 1. 项目简介 - **项目名称**:test-skills - **核心用途**:管理测试用例生成相关的 Qwen Code Skill - **目标用户**:测试工程师、开发人员 - **设计特点**: - 模块化设计,每个 Skill 独立管理 - 标准化目录结构,易于扩展 - 支持版本控制,变更可追溯 --- ## 2. 项目结构 ``` test-skills/ ├── skills/ # 技能目录(所有 skill 存放于此) │ ├── {skill-name}/ # 单个 skill 目录 │ │ ├── SKILL.md # 技能定义文档(必需) │ │ ├── references/ # 参考数据/示例文件 │ │ └── scripts/ # 脚本工具(可选) │ └── ... └── README.md # 本文档 ``` ### 目录说明 | 目录/文件 | 说明 | 是否必需 | |-----------|------|----------| | `skills/` | 所有 Skill 的根目录 | 是 | | `{skill-name}/` | 单个 Skill 的目录,命名使用小写+连字符或中文 | 是 | | `SKILL.md` | Skill 的定义文档,描述功能、输入输出、使用方式 | 是 | | `references/` | 存放示例数据、参考文件等 | 可选 | | `scripts/` | 存放脚本工具(如 Python、Shell 脚本) | 可选 | --- ## 3. 快速开始 ### 3.1 环境要求 - **Git**:用于版本控制(见第 4 章详细说明) - **Python 3.x**:部分 Skill 需要(如 case-to-excel) - **Qwen Code**:使用 Skill 的客户端工具 ### 3.2 安装依赖 部分 Skill 需要额外依赖,例如: ```bash # case-to-excel Skill 需要 openpyxl pip install openpyxl ``` 具体依赖请查看各 Skill 的 `SKILL.md` 文档。 ### 3.3 使用 Skill 1. 确保已安装 Qwen Code 并配置好环境 2. 在 Qwen Code 中调用对应的 Skill 3. 按照 `SKILL.md` 中的说明提供输入数据 --- ## 4. Git 使用与管理规范 > 本章面向不熟悉 Git 的测试人员,提供简单易懂的操作指南。 ### 4.1 基础概念 **什么是 Git?** Git 是一个版本控制工具,可以记录文件的修改历史。简单来说,它就像文件的"时光机": - 保存每次修改的记录(谁改的、改了什么、什么时候改的) - 可以随时回退到之前的版本 - 多人协作时避免文件冲突 **为什么要用 Git?** - ✅ **安全**:修改有记录,误删可恢复 - ✅ **协作**:多人同时工作,不会互相覆盖 - ✅ **追溯**:清楚知道每次变更的原因和内容 - ✅ **备份**:代码托管在服务器,本地损坏不丢失 ### 4.2 常用命令速查 #### 第一步:获取仓库(只需执行一次) ```bash # 克隆仓库到本地(将远程仓库下载到本地电脑) git clone <仓库地址> ``` #### 第二步:日常操作(每天工作使用) ```bash # 1. 查看当前状态(看看哪些文件被修改了) git status # 2. 将修改的文件加入暂存区(准备提交) git add <文件名> # 添加单个文件 git add . # 添加所有修改的文件(常用) # 3. 提交更改(保存到本地,并写清楚做了什么) git commit -m "提交说明" # 4. 推送到远程仓库(将本地更改上传到服务器) git push # 5. 拉取最新代码(获取其他人的更新) git pull ``` #### 第三步:查看历史 ```bash # 查看提交历史(最近的操作记录) git log --oneline -10 # 查看某个文件的修改历史 git log -p <文件名> ``` ### 4.3 日常工作流程 **标准操作流程图示:** ``` 开始工作 ↓ git pull(先拉取最新代码) ↓ 修改文件(编辑 SKILL.md、添加用例等) ↓ git status(查看修改了哪些文件) ↓ git add .(添加所有修改) ↓ git commit -m "说明文字"(提交到本地) ↓ git push(推送到远程仓库) ↓ 完成 ``` **完整示例:** ```bash # 1. 进入项目目录 cd test-skills # 2. 先获取最新代码(重要!避免冲突) git pull # 3. 修改文件(比如编辑 skills/case-to-excel/SKILL.md) # ... 使用编辑器修改文件 ... # 4. 查看修改状态 $ git status On branch main Your branch is up to date with 'origin/main'. Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: skills/case-to-excel/SKILL.md # 5. 添加修改的文件 git add skills/case-to-excel/SKILL.md # 或者添加所有修改: git add . # 6. 提交更改(写清楚做了什么) git commit -m "更新 case-to-excel 的使用说明" # 7. 推送到远程仓库 git push ``` ### 4.4 分支管理规范 **什么是分支?** 分支就像是平行宇宙,你可以在不同的分支上工作,互不影响: - `main`(或 `master`):主分支,存放正式版本 - 个人分支:你自己的工作分支 **分支命名规范:** | 场景 | 命名格式 | 示例 | |------|----------|------| | 新增 Skill | `add-{skill-name}` | `add-case-to-pdf` | | 修改 Skill | `update-{skill-name}` | `update-case-to-excel` | | 修复问题 | `fix-{问题简述}` | `fix-typo-in-readme` | **基本分支操作:** ```bash # 查看当前分支 git branch # 创建新分支并切换 git checkout -b add-new-skill # 切换回主分支 git checkout main # 合并分支(将个人分支合并到主分支) git checkout main git merge add-new-skill ``` **建议:** - 日常小修改:直接在 `main` 分支操作 - 大型改动(如新增 Skill):创建个人分支,完成后合并 ### 4.5 提交规范 **提交信息格式:** ``` 类型: 简要描述 详细说明(可选) ``` **常用类型:** | 类型 | 说明 | 示例 | |------|------|------| | `feat` | 新功能/新 Skill | `feat: 新增 case-to-pdf Skill` | | `update` | 更新现有内容 | `update: 优化 case-to-excel 的 Excel 格式` | | `fix` | 修复问题 | `fix: 修复 cases.json 格式错误` | | `docs` | 文档更新 | `docs: 更新 README 使用说明` | | `refactor` | 重构/整理 | `refactor: 整理 skill 目录结构` | **提交信息示例:** ```bash # 好的示例 git commit -m "feat: 新增测试用例生成(通用) Skill" git commit -m "update: 优化 Excel 输出格式,增加优先级颜色标记" git commit -m "fix: 修复 case_to_excel.py 中路径解析错误" git commit -m "docs: 补充 SKILL.md 中的使用示例" # 避免的示例 ❌ git commit -m "修改" # 太模糊 ❌ git commit -m "update" # 没有具体内容 ❌ git commit -m "111" # 无意义 ``` ### 4.6 常见问题处理 #### 问题 1:文件冲突(Conflict) **现象:** `git pull` 时提示冲突 **原因:** 你修改的文件,别人也修改了,Git 不知道用哪个版本 **解决方法:** ```bash # 1. 先拉取最新代码 git pull # 2. 会看到类似提示: # Auto-merging skills/case-to-excel/SKILL.md # CONFLICT (content): Merge conflict in skills/case-to-excel/SKILL.md # 3. 打开冲突文件,找到冲突标记: <<<<<<< HEAD 你的修改 ======= 别人的修改 >>>>>>> branch-name # 4. 手动编辑,保留需要的部分,删除标记行 # 5. 保存后重新提交 git add . git commit -m "fix: 解决合并冲突" git push ``` **预防冲突的小技巧:** - 开始工作前先 `git pull` - 不要长时间不提交 - 多人协作时,分工明确,避免同时修改同一文件 #### 问题 2:误删文件 ```bash # 恢复误删的文件(未提交前) git checkout -- <文件名> # 恢复误删的文件(已提交后) git log --oneline # 找到删除前的版本号 git checkout <版本号> -- <文件名> ``` #### 问题 3:提交后发现写错了 ```bash # 修改最后一次提交(还没 push 时) git commit --amend -m "新的提交信息" # 撤销最后一次提交(保留修改) git reset --soft HEAD~1 # 撤销最后一次提交(不保留修改) git reset --hard HEAD~1 ``` #### 问题 4:忽略不需要的文件 有些文件不需要提交到 Git(如临时文件、个人配置),可以配置 `.gitignore`: ```bash # 编辑 .gitignore 文件 # 添加要忽略的文件或目录 # 示例内容: *.tmp # 忽略所有 .tmp 文件 *.log # 忽略所有日志文件 __pycache__/ # 忽略 Python 缓存目录 .DS_Store # 忽略 Mac 系统文件 ``` ### 4.7 图形化工具推荐 如果你不习惯命令行,可以使用图形化工具: | 工具 | 平台 | 特点 | 下载地址 | |------|------|------|----------| | **GitHub Desktop** | Win/Mac | 简洁易用,适合新手 | https://desktop.github.com/ | | **SourceTree** | Win/Mac | 功能强大,免费 | https://www.sourcetreeapp.com/ | | **GitKraken** | Win/Mac/Linux | 界面美观,功能丰富 | https://www.gitkraken.com/ | | **TortoiseGit** | Win | 集成到右键菜单,直观 | https://tortoisegit.org/ | **推荐新手使用 GitHub Desktop**,操作简单,界面清晰。 --- ## 5. Skill 规范 ### 5.1 目录命名规范 - 使用小写字母、数字、连字符 `-` 或中文 - 避免使用空格(可用连字符或下划线代替) - 名称应清晰表达 Skill 功能 **示例:** - ✅ `case-to-excel` - ✅ `测试用例生成(通用)` - ✅ `test-case-generator` - ❌ `Case To Excel`(包含空格和大写) - ❌ `new-skill-123`(名称无意义) ### 5.2 SKILL.md 基本结构 每个 Skill 必须包含 `SKILL.md` 文件,建议包含以下内容: ```markdown --- name: Skill 名称 description: 简短描述 version: 版本号 author: 作者 createdAt: 创建日期 tags: - 标签1 - 标签2 --- ## 描述 Skill 的详细说明 ## 输入格式 描述输入数据的格式 ## 输出格式 描述输出数据的格式 ## 示例 提供使用示例 ## 注意事项 使用时的注意事项 ``` ### 5.3 如何添加新 Skill **步骤 1:创建目录结构** ```bash # 在 skills 目录下创建新 Skill 目录 mkdir skills/my-new-skill mkdir skills/my-new-skill/references mkdir skills/my-new-skill/scripts # 如果需要脚本 ``` **步骤 2:编写 SKILL.md** 参考现有 Skill 的格式,编写技能定义文档。 **步骤 3:添加示例数据(可选)** 在 `references/` 目录下添加示例输入/输出文件。 **步骤 4:提交到 Git** ```bash git add skills/my-new-skill/ git commit -m "feat: 新增 my-new-skill Skill" git push ``` ### 5.4 如何删除 Skill ```bash # 1. 删除 Skill 目录 rm -rf skills/old-skill/ # 2. 提交删除操作 git add skills/old-skill/ git commit -m "refactor: 删除废弃的 old-skill" git push ``` --- ## 6. 常见问题(FAQ) **Q1:如何查看某个 Skill 的使用方法?** A:查看该 Skill 目录下的 `SKILL.md` 文件,里面包含详细的使用说明。 **Q2:修改了文件但不想提交怎么办?** A:使用 `git checkout -- <文件名>` 恢复文件到修改前的状态。 **Q3:可以只提交部分修改的文件吗?** A:可以。使用 `git add <文件名>` 逐个添加要提交的文件,而不是使用 `git add .`。 **Q4:如何查看某个文件的历史版本?** A:使用 `git log -p <文件名>` 查看该文件的修改历史。 **Q5:多人同时修改同一个 Skill 怎么办?** A:建议先 `git pull` 获取最新代码,修改后再 `git push`。如果产生冲突,参考 4.6 节的冲突解决方法。 --- ## 7. 贡献指南 欢迎提交新的 Skill 或改进现有 Skill! **提交前请确保:** 1. 代码/文档可以正常工作 2. 遵循本项目的目录结构和命名规范 3. 提交信息清晰明了 4. 如有脚本,确保依赖明确 --- ## 8. 相关资源 - [Git 官方文档](https://git-scm.com/doc) - [GitHub Git 备忘单](https://education.github.com/git-cheat-sheet-education.pdf) - [Qwen Code 官方文档](https://help.aliyun.com/document_detail/xxx.html) --- **最后更新:** 2026-03-31 **维护者:** Test Skills Team