2.5 KiB
2.5 KiB
13-快速检查清单
Python 开发日常自查
开工前 Check
- 代码在云电脑内编写(代码不出研发云)
- 技术选型符合统一技术栈要求
- Git 仓库已创建,
.gitignore已配置 - 需求文档已评审通过
编码中 Check
Python 编码
- 命名:类用驼峰,函数/变量全小写+下划线
- 缩进:4 个空格,无 Tab
- 每行 ≤ 80 字符
- 导入顺序:标准库 → 第三方 → 应用
- 禁止隐式相对导入
- 函数有文档字符串(Args/Returns/Raises)
if foo is None:而非== None- 禁止循环中用
+拼接字符串 - 常量在左、变量在右
安全
- 无硬编码密码/密钥
- 口令哈希已加盐(盐 ≥ 8 字节随机数,≥ 50000 次迭代)
- 使用强随机数
- 日志不输出敏感信息
- 用户输入已验证(服务端验证)
- 错误消息不暴露系统信息
- 无后门代码/调试入口
数据库
- 表名/字段名全小写+下划线
- 表和字段已添加注释
- 无外键
- WHERE 条件列有索引
- 无
SELECT * - DELETE/UPDATE 带 WHERE 条件
- 无隐式类型转换
- DDL 已提前通知 DBA
提交前 Check
Git
- Commit message 格式:
type(scope): subject+%workItemId - 已精简合并 commit(≤ 5 个)
- 无敏感信息(密码/密钥/账号)
- 无二进制文件 > 10MB
- 无 PDF/DOC/压缩包/音视频
- 第三方依赖来自制品库(非直接提交)
测试
- 单元测试已编写
- 测试覆盖率达标
- 无致命/严重缺陷未关闭
流水线 Check
- 代码质量扫描通过(无阻断/严重级问题)
- 代码安全扫描通过
- 构建成功
- 制品已上传统一制品库
部署前 Check
- 测试报告已提交
- 部署计划/实施方案已准备
- 回退方案已准备
- 制品已从快照版本转为正式版本
- K8S 镜像未使用
latest标签 - 部署审批已通过
安全红线(一票否决)
| 问题 | 后果 |
|---|---|
| 代码中包含硬编码密码/密钥 | 禁止上线 |
| 使用弱加密算法(MD5/DES/SHA1) | 禁止上线 |
| 日志打印用户密码/敏感信息 | 禁止上线 |
| 存在高危安全漏洞未修复 | 禁止上线 |
| 未通过代码安全扫描 | 禁止上线 |
| 代码存储在外部云服务 | 违规 |
| 未经审批部署到生产环境 | 违规 |
| 直接连接生产数据库 | 违规 |