主要观点:对于很多 Web 团队,新默认是将前端和后端设计在完全独立的仓库中,即使是新项目。有人倾向于将所有内容放入一个仓库,但在多仓库世界中处理测试等问题时面临困难。讨论了多种处理多仓库集成测试的方法,如消费者驱动的契约测试(包括定义接口、编写模拟等)、不同的团队经验(如有的团队将 UI 放在单独仓库部署,有的通过 Nix 整理多仓库等)以及对单仓库和多仓库的看法等。
关键信息:
- 新默认是前端和后端在独立仓库,有人倾向单仓库但多仓库处理难。
- 消费者驱动契约测试的步骤和相关资源。
- 不同团队关于多仓库的实践,如继承多仓库系统后用 Nix 整理、小团队通过 inception spec 管理等。
- 后端提供模拟环境供前端测试的方式及效果。
重要细节:
- 有人认为很多团队默认将前后端放同一仓库,而非分开。
- 消费者驱动契约测试中,消费者写模拟,后端测试代码对模拟的忠实性,可通过定义规格等进一步深入。
- 用 Nix 整理多仓库时,每个 repo 有 default.nix 可构建项目,且可灵活指定依赖。
- 小团队通过 inception spec 明确需求和测试场景,避免依赖文档。
- 某团队后端提供 Docker Compose / Kubernetes 模拟环境供前端测试,前端维护单仓库,后端维护多仓库。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。