持续集成与持续部署最佳实践

持续集成与持续部署最佳实践
    马上咨询


    赵老师   毕业于清华大學(xué)软件學(xué)院

    • 具有(yǒu)14年敏捷与自动化测试项目实战经验,其中6年互联网金融数据通信与银行项目测试经验,10年敏捷项目实战经验,12年培训授课经验。包括金融系统、广告系统、企业信息化、企业互联网应用(yòng),AI技术与应用(yòng)等。
    • 曾任IBM中國(guó)研发中心任测试主管、测试专家,带领测试团队完成多(duō)个跨國(guó)项目的集成、系统、验收测试,并且将敏捷测试很(hěn)好的应用(yòng)于项目开发中。
    • 曾于世界500强金融外企任首席软件测试开发工程师兼自动化测试主管,参与多(duō)个项目的敏捷转型、敏捷项目管理(lǐ)、自动化测试工具设计、框架开发以及部署工作。
    • 主要擅長(cháng)自动化与敏捷测试,DevOps架构设计与实施,持续集成环境构建,测试框架与工具开发,Scrum团队管理(lǐ),端到端自动化部署等。作為(wèi)测试专家和敏捷教练,将敏捷测试与实践深入到项目各个环节中。
    • 多(duō)界TID大会特约测试专家讲师,QConDevOps专家讲师。
    • 曾获得PMP,ISTQB,國(guó)家软件评测师,6 Sigma GB等多(duō)项认证。

    课程特点

    • 更多(duō)的将理(lǐ)论与实践相结合,提出现实可(kě)行的问题解决方案
    • 强调与學(xué)员互动,采用(yòng)讨论+实践相结合的方式,在积极思考和实践中更好的掌握知识
    • 以动手实践為(wèi)主,结合企业实际项目提出问题解决方案
    • 展示大量的图示,便于學(xué)员更形象的理(lǐ)解知识点及相关内容

    课程大纲

    DevOps常见问题分(fēn)析与讨论 ~ 0.25小(xiǎo)时

    常见问题分(fēn)析与讨论

    • 问题分(fēn)析练习
    • 讨论
    DevOps过程与體(tǐ)系~ 0.5小(xiǎo)时

    DevOps概述

    • 什么是DevOps
    • DevOps发展现状
    • DevOps的作用(yòng)
    • DevOps未来发展趋势

    DevOps过程与體(tǐ)系

    • DevOps与敏捷开发过程
    • DevOps对应用(yòng)程序发布的影响
    • 角色定义与分(fēn)工
    • 变更管理(lǐ)
    • 促进DevOps战略
    • DevOps成功的关键因素
    • DevOps五大重点
    • DevOps度量标准
    持续集成概述与实践 ~ 0.5小(xiǎo)时

    持续集成概述

    • 什么是持续集成(CI)
    • 為(wèi)什么需要持续集成?
    • 主流持续集成工具对比分(fēn)析
    • 持续集成的优势
    • 持续集成过程包含要素
    • 持续集成面板
    • 每日构建与持续集成
    • 持续集成常见问题解决方案
    • 持续集成环境配置

    持续集成实践

    • 提高项目的可(kě)见性
    • 持续集成原则
    • 6步提交法
    • 持续集成的主要瓶颈
    • 如何真正做到敏捷测试?
    • 一段视频引发的思考
    • 【案例】传统测试与敏捷测试项目对比
    • 【案例】CI值日生

    Jenkins概述

    • Jenkins简介
    • Jenkins安装方式
    • Jenkins启动方式
    • Jenkins主要功能(néng)
    • Jenkins应用(yòng)场景
    • Jenkins如何实现持续集成
    持续集成过程详解与Jenkins应用(yòng) ~ 5小(xiǎo)时

    质量左移

    • 缺陷修复成本比较
    • 质量左移与右移
    • 质量左移的目的

    静态代码扫描

    • 代码质量
    • 静态代码扫描的重要性
    • 代码的坏味道
    • 烂代码的代价-产生bug的原因
    • 优秀代码的评价标准
    • 静态测试与动态测试
    • SVN/git插件应用(yòng)
    • Sonar cube简介
    • Sonar cube配置
    • 质量阈与扫描规则定义
    • Sonar cube与jenkins集成
    • 【案例】使用(yòng)sonar cube进行代码扫描
    • 【案例】扫描结果邮件与消息通知

    代码编译构建

    • 利用(yòng)maven编译java代码
    • 定时构建
    • 代码提交触发构建-钩子设置
    • 打包版本管理(lǐ)与显示
    • 并行化构建

    构建打包存档

    • 上传jar包至FTP服務(wù)器
    • 构建结束自动通知

    代码覆盖率统计与分(fēn)析

    • java代码覆盖统计工具jacoco
    • 代码覆盖工具与jenkins集成

    测试环境自动化构建

    • 绑定jenkins slave环境
    • slave标签化管理(lǐ)
    • 部署被测系统
    • 指定slave环境运行测试

    自动化测试框架robot framework

    • Robot Framework 简介
    • Robot Framework安装与配置
    • 如何使用(yòng)Robot集成外部脚本与工具
    • 使用(yòng)Robot集成脚本运行结果
    • 【案例】使用(yòng)Robot调用(yòng)外部脚本
    • 【案例】端到端框架架构设计

    web测试自动化与报告

    • selenium环境搭建与安装
    • 常用(yòng)关键字与操作
    • 利用(yòng)python开发自定义关键字
    • 封装关键字并复用(yòng)
    • 使用(yòng)robot +selenium实现web自动化
    • 展示html报告
    • 结果邮件自动通知
    持续集成流水線(xiàn)构建与应用(yòng) ~ 1小(xiǎo)时

    Jenkins实用(yòng)插件案例

    • Pipeline插件应用(yòng)
    • 定时触发job
    • Dashboard插件
    • 邮件通知插件

    流水線(xiàn)构建

    • 上下游job关联
    • 并行job配置
    • 参数上下游传递
    • 定制化流水線(xiàn)
    • 流水線(xiàn)可(kě)视化展示
    自动化持续部署CD~ 1.5小(xiǎo)时

    持续部署

    • 持续交付与持续部署
    • 持续部署的主要过程
    • promote tag机制
    • post check
    • 滚动升级
    • 版本回滚

    蓝绿发布

    • 什么是蓝绿发布
    • 蓝绿发布实现步骤

    使用(yòng)Jenkins实现CD

    • SSH遠(yuǎn)程节点绑定
    • 遠(yuǎn)程部署脚本编写
    • 【案例】使用(yòng)Jenkins实现蓝绿发布

    線(xiàn)上自动化健康检查

    • 接口调用(yòng)检查
    • 流量检查
    • 监控指标检查
    上机实战与练习 ~4小(xiǎo)时 (课堂穿插进行)

    上机练习

    • 安装/配置 Jenkins
    • 常用(yòng)插件安装与配置
    • 构建pipeline流水線(xiàn)
    • 与git集成
    • 编译打包
    • 集成测试环境自动化部署
    • 运行自动化测试
    • 结果邮件通知
    • Job参数传递
    • Jenkins master & slave 配置
    • 自动化持续部署
    • 線(xiàn)上自动化健康检查

    练习常见问题汇总讲解

    • 问题汇总分(fēn)析与讲解
    课程总结与答(dá)疑~0.25小(xiǎo)时
    课程总结与答(dá)疑