课程简介
持续集成(CI)、持续交付(CD)已经是老生常谈的话题了,各大厂都在分享各自的实施经验。可是,这一切似乎离小微规模的研发团队还很遥远。
难道我们真的就不能够用上 CI 或 CD 吗?
当然不是,小微规模的研发团队(15 人以内)不但可以 CI、
CD,而且代价还很低、门槛也不高。
目标收益
在这一天的实战工作坊里,我们一起以 PHP(Laravel 框架)新项目为例,学习怎样一步步完成一整套开发环境、测试环境、生产环境,实现自动化测试、持续集成(CI)和持续交付(CD)流程。
内容包括但不仅限于:
• 使用容器建立统一的开发、测试和生产环境:
• 利用持续集成平台建立测试、集成和交付平台;
• 适应持续集成和交付的版本管理技巧;
• 研发团队和客户、产品经理高效配合交付软件。
培训对象
• 三年以上软件研发工程师、主程(即将走上研发管理岗位);
• 15 人以内软件研发团队 Leader;
• 创业公司 IT 技术负责人。
课程大纲
上午 |
整体目标:学习搭建基本的持续交付流水线。 破冰游戏:寻找队友。 工作坊目标。 环节内容:创建持续交付流水线。 学习目标:整合工具链 Bitbucket、Docker Compose、DaoCloud。 |
下午 |
整体目标:学习应用持续交付的团队需要具备的关键能力。 环节内容:第一个交付物,确保环节连通(PHP Laravel 项目)。学习目标: • 编写第一个 Selenium 验收测试; • 通过持续交付流水线发布一个 Hello World; • 学习识别项目中的关键风险。 环节内容:第二个交付物,展示原型。学习目标: • 实例化需求(Specification by Example)做需求拆分; • 编写第一个面向功能的验收测试; • 测试代码的投资原则; • 发布到与发布环境; • 持续交付中的版本管理。 环节内容:第三个交付物,由假变真: 学习目标: • 保持验收测试通过; • 单元测试/集成测试; • 发布到生产环境; • 任务优先级选择原则。 回顾,工作坊结束。 |
上午 整体目标:学习搭建基本的持续交付流水线。 破冰游戏:寻找队友。 工作坊目标。 环节内容:创建持续交付流水线。 学习目标:整合工具链 Bitbucket、Docker Compose、DaoCloud。 |
下午 整体目标:学习应用持续交付的团队需要具备的关键能力。 环节内容:第一个交付物,确保环节连通(PHP Laravel 项目)。学习目标: • 编写第一个 Selenium 验收测试; • 通过持续交付流水线发布一个 Hello World; • 学习识别项目中的关键风险。 环节内容:第二个交付物,展示原型。学习目标: • 实例化需求(Specification by Example)做需求拆分; • 编写第一个面向功能的验收测试; • 测试代码的投资原则; • 发布到与发布环境; • 持续交付中的版本管理。 环节内容:第三个交付物,由假变真: 学习目标: • 保持验收测试通过; • 单元测试/集成测试; • 发布到生产环境; • 任务优先级选择原则。 回顾,工作坊结束。 |