mcpField
G
gplay-testers-orchestration

gplay-testers-orchestration

github.com/tamtom测试与质量52360 次安装13 周前更新
代码仓库

关于 gplay-testers-orchestration

用于通过 gplay CLI 管理 Google Play 测试轨道中的测试者,并在轨道间推进构建版本。适合负责应用发布与测试的团队;所有变更须在编辑会话中提交后生效。

主要功能

  1. 01读取轨道测试者
  2. 02替换或增补测试者名单
  3. 03按邮箱或 Google 群组分配
  4. 04创建封闭测试轨道
  5. 05在轨道间晋级构建版本

适用场景

  1. 01查看 alpha 轨道的测试者
  2. 02新增测试者且保留现有名单
  3. 03创建 QA 封闭测试轨道
  4. 04将 beta 构建晋级至 production

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tamtom/gplay-cli-skills --skill gplay-testers-orchestration

安装后在 Claude Code 中输入/gplay-testers-orchestration确认已加载。

详细介绍

Google Play 测试人员编排

使用此技能为某个轨道分配测试人员,并推动构建版本通过测试流程。所有测试人员变更都在编辑会话中进行,只有执行 gplay edits commit 后才会生效。

测试轨道

轨道类型测试人员上限审核生效时间
internal内部测试100否即时
alpha封闭式测试不限否数分钟
beta开放式或封闭式测试不限否/是数分钟
自定义轨道封闭式测试不限否数分钟
production公开发布不限是数天

alpha 是封闭式轨道(仅限受邀者),并非公开轨道。内部测试和封闭式测试轨道上的测试人员通过电子邮件地址或 Google 群组进行管理。

测试人员命令

gplay testers 只有三个子命令。没有 testers list——要列出某个轨道上的测试人员,请使用 testers get。

  • gplay testers get — 读取某个轨道上的测试人员。
  • gplay testers update — 替换整个测试人员集合(未包含的电子邮件地址/群组会被移除)。
  • gplay testers patch — 与现有集合合并(保留省略的字段)。
列出(获取)某个轨道上的测试人员
gplay testers get \
  --package com.example.app \
  --edit $EDIT_ID \
  --track alpha
分配测试人员(替换整个集合)
gplay testers update \
  --package com.example.app \
  --edit $EDIT_ID \
  --track alpha \
  --emails "[email protected],[email protected]"

使用 Google 群组而非个人电子邮件地址:

gplay testers update \
  --package com.example.app \
  --edit $EDIT_ID \
  --track alpha \
  --google-groups "[email protected],[email protected]"
添加测试人员,但不移除现有人员(patch)
gplay testers patch \
  --package com.example.app \
  --edit $EDIT_ID \
  --track alpha \
  --emails "[email protected]"
移除测试人员(update = 替换为缩减后的集合)

update 会替换资源,因此请重新发送你想保留的测试人员:

CURRENT=$(gplay testers get --package com.example.app --edit $EDIT_ID --track alpha \
  | jq -r '.testers[]?')
KEEP=$(echo "$CURRENT" | grep -v "[email protected]" | paste -sd "," -)

gplay testers update \
  --package com.example.app \
  --edit $EDIT_ID \
  --track alpha \
  --emails "$KEEP"

在编辑会话中分配测试人员(规范流程)

测试人员分配不是 gplay release 的标志。任何地方都没有 --testers 标志。实际流程是使用编辑会话:

# 1. Create an edit
EDIT_ID=$(gplay edits create --package com.example.app | jq -r '.id')

# 2. Upload the build
gplay bundles upload \
  --package com.example.app \
  --edit $EDIT_ID \
  --file app-release.aab

# 3. Assign the release to the track
gplay tracks update \
  --package com.example.app \
  --edit $EDIT_ID \
  --track alpha \
  --releases '[{"versionCodes":["123"],"status":"completed"}]'

# 4. Assign testers to the track
gplay testers update \
  --package com.example.app \
  --edit $EDIT_ID \
  --track alpha \
  --emails "[email protected],[email protected]"

# 5. Commit (nothing applies until this succeeds)
gplay edits commit --package com.example.app --edit $EDIT_ID

创建封闭式测试轨道

自定义封闭式轨道在编辑会话中创建,然后以相同方式分配测试人员:

EDIT_ID=$(gplay edits create --package com.example.app | jq -r '.id')

gplay tracks create \
  --package com.example.app \
  --edit $EDIT_ID \
  --track qa-ring

gplay testers update \
  --package com.example.app \
  --edit $EDIT_ID \
  --track qa-ring \
  --emails "[email protected],[email protected]"

gplay edits commit --package com.example.app --edit $EDIT_ID

在轨道之间推广构建版本

推广操作会将源轨道的版本代码复制到目标轨道。--rollout 的值是一个小数(0.0–1.0),而非百分比:

# Internal -> closed alpha
gplay promote --package com.example.app --from internal --to alpha

# Closed beta -> production at 10% staged rollout
gplay promote --package com.example.app --from beta --to production --rollout 0.1

Agent 行为

  • 没有 testers list 子命令;使用 gplay testers get --track <track> 读取某个轨道的测试人员。
  • 切勿向 gplay release 传递 --testers;应在编辑会话中通过 testers update/patch 分配测试人员,然后提交。
  • 使用 update 设置确切的测试人员集合,使用 patch 添加人员而不移除现有人员。
  • --rollout 的值是小数(0.1 = 10%),范围为 0.0–1.0。
  • 始终执行 gplay edits commit——提交前,测试人员变更不会生效。
  • 运行前使用 --help 确认标志。

评论

支持 Markdown