GitLab CI跑接口自动化的最小闭环
2023年2月记录,分类「持续集成」。这里不追求大而全,主要记录一个测试点从发现到落地的过程。
最小闭环
GitLab CI 跑接口自动化,我先做最小闭环:拉代码、装依赖、跑用例、留报告。复杂能力后面再加,先保证失败有人看。
这类问题如果只写结论,过一段时间就很难复用,所以我把判断依据也留了下来。
CI里放什么
- 按环境变量传入 host、账号和 token,不写死在仓库。
- pytest 输出 junit 和 html 两份报告。
- 失败时保留请求日志,方便不用进 Runner 也能定位。
api-test:
script:
- pytest tests/api --junitxml=reports/api.xml
artifacts:
when: always
paths: [reports/]
失败怎么处理
- 分支合并前能跑核心接口。
- 失败报告作为 artifact 可下载。
- 环境不可用时能明确标记,不混成业务失败。
如果要自动化,我会先挑稳定、关键、失败后能定位的部分,不急着全量脚本化。
后续扩展
CI 自动化先追求可信,再追求覆盖率。没人信的流水线很快会被跳过。真正有价值的不是这一次解决了什么,而是下次能不能更快定位同类问题。