Files
cherry-studio/docs/zh/guides/test-plan.md
fullex bb41709ce8 docs: update docs directory structure
- Updated links in CONTRIBUTING.md and README.md to point to the correct Chinese documentation paths.
- Removed outdated files including the English and Chinese versions of the branching strategy, contributing guide, and test plan documents.
- Cleaned up references to non-existent documentation in the project structure to streamline the contributor experience.
2025-11-26 13:17:01 +08:00

4.7 KiB
Raw Permalink Blame History

测试计划

为了给用户提供更稳定的应用体验并提供更快的迭代速度Cherry Studio推出“测试计划”。

用户指南

测试计划分为RC版通道和Beta版通道吗区别在于

  • RC版预览版RC即Release Candidate功能已经稳定BUG较少接近正式版
  • Beta版测试版功能可能随时变化BUG较多可以较早体验未来功能

用户可以在软件的设置-关于中,开启“测试计划”并选择版本通道。请注意“测试计划”的版本无法保证数据的一致性,请使用前一定要备份数据。

用户选择RC版通道或Beta版通道后若发布了正式版仍旧会升级到正式版。

用户在测试过程中发现的BUG欢迎提交issue或通过其他渠道反馈。用户的反馈对我们非常重要。

开发者指南

参与测试计划

开发者按照贡献者指南要求正常提交PR并注意提交target为main)。仓库维护者会综合考虑(例如该功能对应用的影响程度,功能的重要性,是否需要更广泛的测试等),决定该PR是否应加入测试计划。

若该PR加入测试计划,仓库维护者会做如下操作:

  • 通知PR提交人
  • 设置PR为draft状态(避免在测试完成前意外并入main
  • milestone设置为具体测试计划版本
  • 修改PR标题

PR提交人在参与测试计划过程中,应做到:

  • 保持PR分支与最新main同步(即PR分支总是应基于最新main代码)
  • 保持PR分支为无冲突状态
  • 积极响应 comments & reviews修复bug
  • 开启维护者可以修改PR分支的权限以便维护者能随时修改BUG

加入测试计划并不保证PR的最终合并,也有可能由于功能不成熟或测试反馈不佳而搁置

测试计划负责人

某个维护者会被指定为某个版本期间(例如1.5.0-rc)的测试计划负责人。测试计划负责人的工作为:

  • 判断某个PR是否符合测试计划要求,并决定是否应合入当期测试计划
  • 修改加入测试计划的PR状态,并与PR提交人沟通相关事宜
  • 在测试计划发版前,将加入测试计划的PR分支逐一合并采用squash mergetestplan对应版本分支,并解决冲突
  • 保证testplan分支与最新main同步
  • 负责测试计划发版

深入理解

关于PR

PR是特定分支及commits、comments、reviews等各种信息的集合也是测试计划的最小管理单元

相比将所有功能都提交到某个分支,测试计划通过PR来管理功能,这可以带来极大的灵活度和效率:

  • 测试计划的各个版本间,可以随意增减功能,而无需繁琐的revert操作
  • 明确了功能边界和负责人bug修复在各自PR中完成,隔离了交叉影响,也能更好观察进度
  • PR提交人负责与最新main之间的冲突;测试计划负责人负责各PR分支之间的冲突,但因加入测试计划的各功能相对比较独立(话句话说,如果功能牵涉较广,则应独立上测试计划),冲突一般比较少或简单。

testplan分支

testplan分支是用于测试计划发版所用的临时分支。

注意:

  • 请勿基于该分支开发。该分支随时会变化甚至删除且并不保证commit的完整和顺序。
  • 请勿向该分支提交commitPR,将不会得到保留
  • testplan分支总是基于最新main分支(而不是基于已发布版本),在其之上添加功能

RC版分支

分支名称:testplan/rc/x.y.z

用于RC版的发版x.y.z为目标版本号注意无论是rc.1还是rc.5只要主版本号为x.y.z都在该分支完成。

一般而言,该分支发版的版本号命名为x.y.z-rc.n

Beta版分支

分支名称:testplan/beta/x.y.z

用于Beta版的发版x.y.z为目标版本号注意无论是beta.1还是beta.5只要主版本号为x.y.z都在该分支完成。

一般而言,该分支发版的版本号命名为x.y.z-beta.n

版本规则

测试计划的应用版本号为:x.y.z-CHA.n,其中:

  • x.y.z为一般意义上的版本号,在这里称为目标版本号
  • CHA为通道号Channel现在分为rcbeta
  • n为发版编号,从1计数

完整的版本号举例:1.5.0-rc.31.5.1-beta.11.6.0-beta.6

测试计划的目标版本号指向希望添加这些功能的正式版版本号。例如:

  • 1.5.0-rc.3是指,这是1.5.0正式版的预览版(当前最新正式版是1.4.9,而1.5.0正式版还未发布)
  • 1.5.1-beta.1是指,这是1.5.1正式版的测试版(当前最新正式版是1.5.0,而1.5.1正式版还未发布)