April 2, 2023
By: Kevin
项目检查清单
版本管理
- 参与者在版本管理工具中有独立一致的名字
- 参与者每次提交有明确的提交信息, 提交格式应该是
[分类] 提交正文, 其中提交正文可以换行, 有详细描述, 可能的分类有:[doc]: document, 文档, 提交正文为文档内容.[cmt]: comment 代码注释, 提交正文为注释内容.[feat]: feature, 新功能, 提交正文为为功能描述[bug]: bug fix, 问题修复, 提交正文为bug的id,和修复内容, 对应的单元测试是否更新[ref]: refactor 代码重构, 提交正文为重构的内容.[ut]: unit test, 单元测试代码正文, 提交消息为单元测试描述.[imp]: improvement, 小改进, 提交正文为改进内容.[wip]: work in progress, 一个大的任务, 可以分成若干进行中的提交, 提交正文为wip的描述.
- 参与者会使用检索提交记录, 以及每次提交的代码变动.
- 参与者不提交无用文件, 项目中有配置合理的
.gitignore文件, 个人不提交log, 第三方库, 个人配置, 编译临时/最终产物等. - 项目参与者掌握评审工作流.
- 项目参与者掌握rebase工作流程.
- 项目参与者掌握cherry pick工作流程.
系统文档以及项目搭建
系统业务流程说明, 根据不同系统的情况.
描述系统的主要业务流程以及组件, 帮助团队成员理解系统构成.
10分钟内搭建一个开发环境, 说明过程完整且规范.
充分自动化, 项目提供数一系列的方便工具, 举例说明:
- 测试数据初始化方法.
- 恢复用户现场的脚本.
项目依赖环境和版本明确且固定.
系统配置说明 说明系统的标注配置选项.
系统的需求, 设计, 测试用例, bug修改有记录
使用系统化的管理工具管理
比如bugzilla, jira, 禅道
系统能够对问题闭环
- 系统记录问题
- 记录分析过程
- 记录解决方法
- 记录测试验证
自动代码检查
- 是否有可以参考的代码规范
- 是否有代码规范的自动化检查的脚本
- 自动执行的结果通知相关项目人员
- 检查项目的可配执行 通过配置可以对某些文件的某些配置开关
自动化测试
- 有测试大纲, 描述了自动测试的覆盖范围.
- 后台业务自动测试, 关键业务覆盖100%.
- 前端自动测试, 能够执行前端业务测试.
- 执行测试能够生成可检查的测试报告.
- 和自动构建系统结合, 能够周期性执行的自动测试.
- 测试积极维护,能够发现系统问题.
项目部署
- 部署环境文档齐全.
- 多环境使用的服务,数据库,域名等信息.
- 访问地址,账号密码等.
- 一个命令生成可以部署的产品
- 如果是服务器部署的产品, 自动脚本化部署(安装)
项目时候有版本发布的管理流程
- 发布的版本需要在代码库上对应TAG, 标记发布时候的commit号.
- 发版要有发版记录(写到文档中).
- 文档中说明发版说明新特性.
- 文档中发版说明已知bug.
- 发布的项目要有可以查到的版本号.