教学优势
曙海教育的课程培养了大批受企业欢迎的工程师。大批企业和曙海
建立了良好的合作关系。曙海教育的课程在业内有着响亮的知名度。
本课程,秉承20年积累的教学品质,以项目实现为导向,老师将会与您分享设计的全流程以及工具的综合使用经验、技巧。
课程大纲
全局质量与自动化测试典型问题分析
• 问题分析
• 讨论
全局质量框架体系
• 需求质量
• 代码质量
• 数据质量
• 产品质量
• 线上质量
• 运营分析
一切从需求开始
• 需求质量管理
• 需求质量度量
• 用户故事地图
• 需求 3 步评审法
代码质量与自动化建设
•质量左移
• 缺陷修复成本比较
• 质量左移与右移
• 质量左移的目的
代码评审与版本管理
• peer review
• git 分支管理
• 6 步提交法
• 代码合并与 tag 管理
静态代码扫描
• 代码质量
• 静态代码扫描的重要性
• 代码的坏味道
• 烂代码的代价-产生 bug 的原因
• 优秀代码的评价标准
• 静态测试与动态测试
• SVN/git 插件应用
• Sonar cube 简介
• Sonar cube 配置
• 质量阈与扫描规则定义
• Sonar cube 与jenkins 集成
• 【案例】使用 sonar cube 进行代码扫描
• 【案例】扫描结果邮件与消息通知
代码编译构建
• 定时构建
• 代码提交触发构建-钩子设置
• 打包版本管理与显示
• 并行化构建打包存档
• 上传 jar 包至 FTP 服务器
• 构建结束自动通知
• 代码覆盖率统计与分析
• java 代码覆盖统计工具jacoco
• 代码覆盖工具与 jenkins 集成
代码质量评估
• 缺陷密度
• 如何统计缺陷密度
• 缺陷密度趋势分析
产品质量自动化建设
测试环境自动化构建
• 绑定 jenkins slave 环境
• slave 标签化管理
• 部署被测系统
• 指定 slave 环境运行测试
自动化测试框架 robot framework
• Robot Framework 简介
• Robot Framework 安装与配置
• 如何使用 Robot 集成外部脚本与工具
• 使用 Robot 集成脚本运行结果
• 【案例】使用 Robot 调用外部脚本
• 【案例】端到端框架架构设计
接口测试自动化
• Restful API 简介
• 同步与异步接口
• 微服务测试逻辑
• 微服务测试要点
• Requests 主要功能
• Requests Lib 安装与配置
• 基础关键字
• 【案例】开发脚本定义关键字
• 使用 request lib 实现接口测试自动化
• Robot+request 开发接口自动化用例
• 接口自动化与 jenkins 集成
web 测试自动化与报告
• selenium 环境搭建与安装
• WebDriver 的工作原理
• Selenium 2 与WebDriver
• 验证页面元素
• 定位页面元素
• API 使用技巧
• Iframe 的处理
• 处理 windows 控件
• 常用关键字与操作
• 利用 python 开发自定义关键字
• 封装关键字并复用
• 使用 robot +selenium 实现 web 自动化
• 展示 html 报告
• 结果邮件自动通知
使用 UIAutomator 进行移动端自动化测试
• UIAutomator 实现移动应用测试自动化
• UiAutomator 概述
• UiAutomator 实现自动化原理
• UiAutomator 环境配置
• UiAutomator 实现自动化工作流程
• UiAutomator 启动与初始化
• 分析待测应用的 UI 元素
• 测试准备工作
• 把待测应用安装到测试手机(设备)上
• 辨别待测应用 UI 控件
• 确保待测应用可用性
• 设置开发环境
• 创建 uiautomator 测试案例
• uiautomator API
• 运行 uiautomator 测试
测试自动化执行流水线
• API 测试自动化
• web 测试自动化
• app 测试自动化
• windows 测试自动化
测试自动化案例实践
• 自动化测试的 T+0 实践
• 稳定性测试常态化实践
• 自动探压测试实践
• 集群并行化测试自动化实践
持续集成与持续交付
DevOps 概述
• 什么是 DevOps
• DevOps 发展现状
• DevOps 的作用
• DevOps 未来发展趋势
DevOps 过程与体系
• DevOps 与敏捷开发过程
• DevOps 对应用程序发布的影响
• 角色定义与分工
• 变更管理
• 促进 DevOps 战略
• DevOps 成功的关键因素
• DevOps 五大重点
• DevOps 度量标准
自动化与持续集成
• 什么是持续集成(CI)
• Jenkins 简介
• Jenkins 主要功能
• 持续集成的优势
• 持续集成面板
• 每日构建与持续集成
• 持续集成常见问题解决方案
• 持续集成环境配置
• 【案例】使用 Jenkins 进行持续集成
• 【案例】Jenkins 与Robot framework 集成
• Build flow 插件应用
• 公告板插件
• 邮件通知插件
持续集成最佳实践
• 开发与测试配合
• 主干代码持续集成
• 分支代码持续集成
• Jenkins pipeline
•创建并行化构建与测试
• 添加 Jenkins Slave
• Jenkins swarm 插件
• 并行化测试
• 测试报告可视化分析
持续部署
• 持续交付与持续部署
• 持续部署的主要过程
• promote tag 机制
• post check
• 滚动升级
• 版本回滚
蓝绿发布
• 什么是蓝绿发布
• 蓝绿发布实现步骤
• 【案例】使用 Jenkins 实现蓝绿发布
测试平台化与工程效率工具链体系建设~2 小时
工程效率赋能
• 什么是工程效率
• 工程效率团队职责
• 工程效率赋能体系建设
• 对各个角色赋能思路
• 工具链构建
• 环境容器化
接口自动化平台-测试用例自动化生成
• 文档规范的前提
• 自动化生成自动化测试用例
• 接口测试用例自动化生成技术框架设计
• 测试用例自动化生成关键点
接口自动化平台-代码覆盖率统计与分析与精准测试
• python 代码覆盖统计工具 coverage
• c++代码覆盖率工具 bullseye
• 精准测试概述
• 如何提升测试效率?
接口自动化平台-环境自动化构建
• 测试环境虚拟化
• 一键创建/删除/还原测试环境
• 容器化建设
• 【案例】docker 一键创建测试环境
• 测试环境共享
接口自动化平台-结果自动化分析
• Bug 自动化定位
• 结果自动化分析技术框架设计
• 结果自动化分析关键点
性能测试平台构建
• 性能测试平台构建需求
• 性能测试平台包含要素
• 如何智能化?
自动化探压系统构建
• 自动化探压逻辑
• 自动化探压技术架构
• 自动化探压实现过程
• 压测环境管理
• 探寻最大并发数
• 探寻最大 TPS
• 效率提升统计
流量回放系统构建
• 什么是流量回放
• 流量回放目标
• 流量回放系统构建过程
瓶颈分析系统构建
• 瓶颈分析目标
• 内存瓶颈分析
• CPU 瓶颈分析
• 网络瓶颈分析
• 磁盘 IO 瓶颈分析
测试人员职业规划
• 测试人员的金字塔模型
• 质效合一 • 技术专家路线
o 技术研发
o 工程效率
o 性能测试
o 安全性测试
o 自动化测试
o 算法测试
• 质量管理路线
• 项目管理路线
• 产品路线
上机实践
• robotframework 搭建
• 接口自动化测试构建
• web 自动化测试构建
• 移动端自动化测试构建
• Jenkins 持续集成流水线构建