软件研发

单元测试最佳实践课程

2022-04-28 13:48:00 | 来源:中培企业IT培训网
  • 课程背景
该课程包括两个部分:
第一部分:持续交付。持续交付是一个的工具,解决产品研发全过程的角色协同问题,解决研发过程效率提升的问题。

第二部分:单元测试执行与技巧。
早期发现代码的故障非常关键,如何更好的控制单元测试的实施流程、代码检查及审计方法、代码的编写规范、单元测试的测试策略与测试用例设计、测试的覆盖率统计及测试报告等完成的测试过程,是保障代码质量的规范和基础。本课程系统全面地介绍了单元测试技术、方法以及原则,同时通过静态分析Java/C#/C++/C语言程序常见代码发现隐形Bug,而如何采用工具提高单元测试效率,则由讲解使用XUnit等单元测试工具实现,最后使用代码重构改进代码质量和可测性。
  • 课程收益
  • 持续交付的全过程控制与实施、研发过程
  • 自动部署
  • 自动化回归测试
  • 单元测试实施流程
  • 单元测试实施策略
  • 单元测试用例设计
  • 单元测试深度执行
  • 单元测试覆盖率分析与报告
  • 多种技术平台编程语言单元测试实战
  • 单元测试最佳实践经验
  • 静态测试与代码审计
  • 使用重构提高代码可测试性
  • 课程时长
            3天(18课时)
  • 课程大纲
结构 内容
持续交付 持续交付与DevOps系统化知识框架   :
1、传统IT交付模式的问题所在,为什么要转向持续交付与DevOps模式
2、DevOps与敏捷、持续交付等其他管理运动的关系
3、DevOps的常见误区,如何驱散谬见
4、DevOps现状调查报告,业界DevOps发展趋势及关键成功因素
5、DevOps知识体系:敏捷、精益、持续交付、IT运营管理等
6、DevOps实施的三步工作法:流动、反馈、持续学习和实验
持续交付的研发过程实践与案例:
1、介绍DevOps的最佳工程实践:持续交付
2、持续交付所解决的问题
3、大型企业持续交付体系框架
3.1 业务层面:影响地图、用户故事地图、精益看板
3.2 流程层面:可靠可重复的交付流水线、关键实践
3.3 技术层面:基础架构、应用架构
3.4 组织层面:自组织团队、度量驱动改进、成熟度模型
持续交付实践:
  1. 自动化部署
  2. 自动化回归测试
单元测试 单元测试概述
  • 什么叫单元测试?
  • 为什么要做单元测试
  • 单元测试实施流程
  • 单元测试代码的编写规范
  • 单元测试策略
  • 单元测试用例设计
  • 单元测试覆盖率分析
  • 单元测试报告模板
 
单元测试代码结构
  • 实现代码结构与单元测试代码结构对比
  • 单元测试代码结构的可复用性
  • 单元调用接口替身代码结构
  • 集成单元测试代码结构
 
单元测试用例设计
  • 单元测试点之测试技术选择
  • 单元测试点之断言标准设计
  • 单元测试点之测试数据设计
  • 单元测试点集成测试场景设计
  • 基于设计模式实现代码的单元测试设计(创建、结构与行为)
 
应用单元测试框架实践单元测试
  • 单元测试框架概述
  • 编译单元测试框架源代码
  • 使用断言编写单元测试用例
  • 使用Fixture机制灵活支持单元测试
  • 使用参数化批量定义单元测试用例
  • 使用运行参数控制测试用例执行
  • 使用工具生成单元测试覆盖率报告
 
使用Mock实现测试隔离
  • Mock对象的设计和应用原则
  • 如何编写Mock和Stub
  • 使用Mock框架实现测试隔离
  • Mock和Stub的最佳实践
 
单元测试最佳实践经验
  • 根据架构设计分析单元测试策略
  • 基于软件需求、技术设计单元测试用例
  • 自动化回归单元测试用例
  • 生成、分析单元测试覆盖率报告
 
单元测试效率(缩短单元测试时间)
  • 测试的全面性与测试效率
  • 函数级别单元测试与测试效率
  • 简单且可运行实现代码的测试效率
  • 将单元测试代码集成到CI过程中
 
代码覆盖率分析
  • 代码覆盖率的意义
  • 代码覆盖率工具介绍
  • 代码覆盖率实战
  • 代码覆盖率分析
  • 案例:使用工具进行覆盖率测试
 
使用重构提高代码可测试性
重构实践
  • 分析并初步重构一个案例
  • 重构原则
  • 代码的坏味道
  • 构筑测试体系
  • 重构工具
  • 优秀程序结构的风格
  • 如何观察代码
  • 重构名录
  • 重新组织函数与属性
  • 重新组织对象关系
  • 简化表达式
  • 组织继承体系
  • 如何让重构成为习惯
  • 重构案例实践与分析
  • 重构工具
  • 案例:使用IDE工具进行重构实战
 
静态测试与编码规范
  • 代码编写规范
  • 静态测试的目的
  • 静态测试的原则
  • 静态测试实战
  • 案例:使用CheckStyle,PMD,Findbugs进行校验代码规则,发现重复代码,检查代码注释率
总结与答疑
以上内容还可根据具体需求进行微调