Skip to content

录制测试

录制是 CueCast 的核心入口。用户在真实页面中操作,扩展会采集步骤并同步到平台。

录制质量会直接影响后续回放稳定性。建议把录制当成“沉淀测试资产”,而不是一次性的操作回放。

支持的操作

当前主要支持:

  • 点击
  • 输入
  • 复选框勾选/取消
  • 下拉选择
  • 悬浮
  • 文本断言
  • JSON 断言
  • AI 自然语言步骤
  • 切换标签页
  • 保存页面值为变量

不同操作会保存不同数据。点击和输入会保存目标定位信息,断言会保存期望值,AI 自然语言步骤会保存自然语言指令。

录制建议

  • 从稳定的起始 URL 开始。
  • 每条用例只覆盖一条清晰路径。
  • 操作时等待页面状态稳定后再进行下一步。
  • 对关键结果添加断言。
  • 避免录制临时调试操作。

录制模式

用例详情页通常会出现两类录制入口:

  • 全新录制:适合从头创建用例,或确认要覆盖原有步骤。
  • 追加录制:适合页面改版后只补充某一段流程,或在已有步骤之间插入新操作。

如果当前用例已有步骤,全新录制会覆盖旧步骤。执行前请确认旧步骤是否还需要保留。

从这里开始录制

当某条用例已经录制完成,但中间某一步之后需要补充操作时,可以在步骤列表中选择「从这里开始录制」。

弹窗会询问:录制前是否执行前面的步骤。

选择说明适用场景
CueCast 会先回放当前步骤之前的步骤,再进入继续录制状态。新录制步骤会插入到当前步骤之后,且不会覆盖现有步骤。需要恢复正确页面上下文,例如先进入详情页、打开弹窗、选择某个 tab 后再补录。
直接从当前起始页进入录制,不自动执行前置步骤。页面已经手动准备到目标状态,或前置步骤会产生创建、提交、删除等副作用。

如果选择执行前置步骤,录制结束后点击「完成录制并关闭」,CueCast 会关闭本次为继续录制打开的浏览器窗口。

录制面板中的辅助操作

录制时扩展面板提供几个常用辅助能力:

  • 暂停录制:临时忽略页面操作,适合手动准备页面状态。
  • 保存变量:从页面元素抽取文本或值,保存为后续步骤可引用的数据变量。
  • 添加断言:录制时选择页面元素并设置断言,适合在关键结果出现时立即沉淀验证点。

录制面板自身的弹窗、按钮和配置操作不会作为业务步骤保存到用例中。

密码与敏感输入

录制 password 类型输入框(或 name/id 含 password 的字段)时,步骤会标记为脱敏,保存到服务器后加密存储;中台步骤列表与编辑框不显示明文

若需修改密码:在用例详情中打开该步骤,重新输入新密码并保存。界面会提示:此密码已加密存储,若忘记密码请重新输入新密码并保存

回放时扩展通过授权接口获取解密后的值并填入页面。请使用测试环境专用密码,请勿录入生产环境真实凭据。

步骤维护

录制完成后,可以在用例详情页继续维护步骤:

  • 编辑步骤名称、等待时间、输入值或断言值。
  • 为输入步骤设置固定值、随机字符串、随机数字、时间戳或前缀加时间戳。
  • 对密码类输入值使用敏感值保存,避免界面展示明文。
  • 拖拽调整步骤顺序。
  • 复制单个步骤或批量复制步骤。
  • 在当前用例或其他用例中粘贴步骤。
  • 删除不必要的步骤。
  • 使用撤销恢复上一步编辑。

这些能力适合处理页面小改版。只有当业务路径整体变化时,才建议重新录制整条用例。

更多字段说明见 步骤配置。如果需要用自然语言描述复杂操作,可参考 智能步骤

多标签页录制

如果业务操作会打开新标签页,CueCast 会接管由当前录制页派生的新 tab,并在用户第一次进入该 tab 操作时自动插入「切换标签页」步骤。

当前支持的典型场景:

  • 点击 target="_blank" 链接打开新 tab。
  • 页面通过 window.open 打开新 tab。
  • 在新 tab 操作后切回原 tab 继续录制。
  • 新 tab 完成业务后关闭,再回到原 tab 继续录制。

录制时,CueCast 会为当前用例维护 tab 上下文:

text
tab #0:起始页
tab #1:由 tab #0 打开的新标签页
tab #2:后续打开的新标签页

保存后的用例步骤中会出现「切换标签页」。该步骤用于回放时切换到对应 tab,不需要手动录制。

当前边界:

  • 只自动接管由当前录制 tab 派生的新 tab。
  • 用户手动打开且没有 opener 关系的无关 tab,不会自动纳入录制。
  • iframe 上下文切换暂未支持。iframe 场景建议先作为能力边界验证,后续版本会单独增强。

动态属性过滤

现代前端框架经常生成运行时 id、随机 class 或 aria 关联属性。录制时如果把这些临时值作为关键定位依据,下一次打开页面就可能失效。

CueCast 会在生成定位信息时过滤一部分明显不稳定的动态属性,例如:

  • 框架生成的动态 id,例如部分 Element Plus / 组件库运行时 id。
  • 随机 class、构建产物 class、开发模式临时 class。
  • 仅用于运行时关联的 aria 属性,例如临时 aria-controlsaria-describedby
  • 常见状态 class,例如 loading、active、selected、disabled 等不会单独作为稳定身份。

过滤动态属性不是完全忽略 id 和 class。稳定的业务 id、data-testidname、可读文本和组件上下文仍然会被优先使用。

截图策略

用例可以选择不同截图策略:

策略适用场景注意事项
标准截图日常录制和回放体积较小,加载更快。
高清整屏截图需要完整页面上下文排障会增加存储和页面加载开销。

下拉框录制

对于 iView、Ant Design、Element 等 Select/Combobox 组件,CueCast 会优先记录组件根节点和上下文候选,减少同类下拉框误定位。

如果左右两个下拉框功能和选项高度相似,建议业务页面尽量提供稳定 class、data-testid 或可区分的结构信息。

可测性建议

为了提升长期稳定性,建议业务系统在关键控件上提供稳定标识:

  • 使用稳定的 data-testiddata-cy 或业务语义 class。
  • 避免关键按钮只有图标且没有可读文本。
  • 下拉框、弹窗、表格行等复杂组件尽量有可区分上下文。
  • 页面加载完成后再隐藏 loading,避免自动化误判可操作状态。

常见问题

现象可能原因建议处理
录制不到操作扩展未启用或页面未刷新检查插件状态,刷新产品页和目标页。
输入步骤过多输入时多次停顿或焦点切换编辑步骤,保留最终输入值。
新建数据重名固定输入值被重复使用将输入值类型改为前缀加时间戳或随机字符串。
下拉选项回放失败浮层结构变化或同类组件太多补充稳定标识,必要时重新录制该段。
回放时未登录登录态失效执行计划建议启用登录准备;单条调试时可先在目标页面完成登录。

回演 CueCast 产品文档