内置 Command

在聊天输入框中输入 / 即可打开快捷命令菜单(Command 列表)。选择命令后输入相应参数或说明即可执行。

图:输入框键入 / 弹出 Command 快速选择列表菜单

/explore:ui

适用场景

对 Qt、Windows、Avalonia 等原生桌面应用进行操作探索,根据操作过程生成可回放的自动化脚本与控件模型文件。

使用方法

/explore:ui 操作 D:\apps\demo.exe,打开设置,修改主题并保存;生成 JavaScript 回放脚本和模型,不生成 Feature,不自动运行。

执行前通常会确认以下内容:

  • 目标应用路径、操作流程与脚本语言(JavaScript 或 Python)。
  • 是否需要生成剧本文件(.feature)。
  • 脚本生成后是否自动运行并修复潜在问题。

若未指定脚本语言,命令会参考项目配置文件 default.cukeproject 中的 language 设置。

输出产物

命令会在当前工作区创建任务目录(格式如 ui_<任务名>_<MMDD>_<HHMM>),包含:

  • steps_<任务名>.log:记录操作步骤的日志文件。
  • 回放脚本:生成的 Python(.py)或 JavaScript(.js)自动化脚本。
  • .tmodel:录制生成的桌面控件模型文件。
  • .feature(可选):确认生成剧本文件时创建的 Gherkin 格式测试用例。

若选择自动运行并修复,修复范围仅限于当前任务目录及与运行错误直接相关的代码。

/explore:web

适用场景

对网页进行操作探索,生成可回放的 Web 自动化脚本,并可选择生成测试剧本文件。

使用方法

/explore:web 打开 https://test.example.com,完成登录并进入订单列表;生成 JavaScript 回放脚本,生成 Feature,暂不自动运行。

执行前通常会确认目标网址、登录凭据、操作步骤、是否生成 Feature,以及是否自动运行验证。

输出产物

在工作区生成的任务目录(格式如 web_<任务名>_<MMDD>_<HHMM>)中包含:

  • steps_<任务名>.log:记录页面操作的代码日志。
  • replay_*.js:生成的网页回放脚本。
  • .feature(可选):确认后生成的测试剧本文件。

运行前需确保环境中的浏览器驱动与网络正常。若浏览器无法启动,需先检查相关设置与权限。

图:/explore:web 执行前确认目标 URL、场景和产物配置

/recording-to-bdd

适用场景

将录制生成的自动化脚本(.js.py)转换为 BDD 测试,生成对应的 .feature 剧本文件和步骤定义脚本。

转换时会将连续的底层操作整合为业务步骤,提取明确的检查点,并同步迁移脚本引用的模型文件(.tmodel)及截图资源。

使用方法

/recording-to-bdd recordings/recording_1.js

也可以在输入框中使用 @ 提及录制脚本文件。若未指定文件,命令会检索当前项目 recordings 目录中的候选脚本供选择。

转换逻辑

  1. 整合操作步骤:将连续完成同一操作的底层调用合并为一个测试步骤(例如将输入用户名、密码并点击登录的操作整合为“用户登录”步骤);控件定位、等待和模型加载保留在步骤定义代码内部,不写入剧本。
  2. 提取检查点:将脚本中明确包含的断言、属性检查(checkProperty)、控件可见性校验或图像/OCR 比对转换为 Then 步骤。若脚本未包含明确的验证,会询问是否需要补充预期结果。
  3. 迁移模型与截图资源
    • 将录制脚本引用的 .tmodel 复制到 BDD 项目的模型目录下。
    • 同步迁移同级的 *_files 截图文件夹(如 model_files),保证图像识别与比对资源完整。
    • 更新步骤定义代码中的模型加载路径,使用项目内的相对路径。
  4. 处理 Hook 冲突:在 JavaScript 项目中,若现有的无标签 BeforeAfter 钩子可能对新场景造成影响,会添加专用标签(如 @recording-to-bdd)和排除条件(如 not @recording-to-bdd)进行隔离。

输出产物与验证

  • .feature 剧本文件:符合 Gherkin 规范的测试用例文件。
  • 步骤定义代码:与剧本步骤相对应的 JavaScript(Cucumber.js)或 Python(pytest-bdd)脚本。
  • 一致性校验与试运行
    • 自动检查剧本步骤与代码实现的匹配情况。
    • 通过 cuketest run --dry-run 进行语法与步骤绑定的试运行验证(不执行实际业务操作)。
    • 仅在用户明确要求时才执行完整的实际测试。

/report-analysis

适用场景

分析 Cucumber JSON 或 pytest JSON 测试报告,统计执行结果、定位失败原因,并协助修复由脚本问题引起的测试失败。

使用方法

/report-analysis 最新的测试报告

可以直接输入报告路径,或说明关注的测试范围。若未指定具体文件,命令会检索工作区 reports 目录下的 JSON 报告供选择。

分析与修复流程

  1. 报告分析:统计用例通过率与执行耗时,列出失败用例名称、错误堆栈与失败步骤,分析可能的原因并提供排查建议。
  2. 脚本修复建议
    • 若确认失败是由步骤定义代码、Hook 或辅助函数等脚本错误导致,提供具体的代码修复方案。
    • 弹出操作卡片供选择:
      • 尝试修复并验证:修改相关代码并重新运行测试。
      • 仅保留修复建议,不修改:不修改项目代码,仅保留分析结果。
  3. 重新验证
    • 确认修复后,自动修改问题代码并重新运行测试,汇报修改的文件与重跑结果。
    • 若用户未授权修复或无法确认失败原因,项目文件保持不变。

分析结果默认直接在聊天窗口中展示;如需导出报告文件,可指定保存格式与路径。

/review:auto-tests

适用场景

审查自动化测试项目的剧本文件(.feature)、步骤定义、对象模型及项目配置,检查潜在的代码规范与执行稳定性问题。

使用方法

/review:auto-tests 审查当前 CukeTest 自动化项目,输出 Markdown 报告并同步生成改进计划。

命令会自动识别项目的语言与测试框架(依据 features/、步骤目录、conftest.pycucumber.yml 等文件)。

执行前可选择审查范围与输出格式:

  • 常规审查:检查语法有效性、未定义步骤、重复定义、断言完整性及基本配置。
  • 深度审查:进一步检查对象定位稳定性、隐式等待、状态清理及冗余用例。

输出内容

列出发现的具体问题、等级(严重/警告/建议)与改进方案:

  • 未实现的步骤或参数不匹配。
  • 缺失失败信息的断言或可能失效的定位表达式。
  • 重复的剧本场景或失效的模型引用。

审查结果可在聊天中直接查看,或导出为 Markdown、Word 文档。

/review:coverage

适用场景

审查测试用例设计,或将需求文档与现有测试剧本进行对照,分析需求的覆盖情况并发现遗漏或冗余场景。

使用方法

/review:coverage 分析当前项目的 Feature,并结合 D:\docs\requirements.md 检查需求覆盖率,输出 Markdown 报告和改进计划。

支持的需求文档格式包括 .md.docx.xlsx.txt 等。若未提供需求文档,默认对工作区内的 .feature 文件进行用例质量检查。

执行前可配置:

  • 是否关联外部需求文档。
  • 检查深度(基础用例检查或完整需求对照)。
  • 结果展示方式(聊天回复、Markdown 文件或 Word 文档)。

输出内容

  • 需求覆盖情况:对照需求点列出已覆盖、部分覆盖及未覆盖的用例。
  • 用例设计建议:指出测试数据单一、缺乏逆向用例、场景冗余或可执行性不足的问题。
  • 改进计划:提供待补充或优化的用例清单。

results matching ""

    No results matching ""