单元测试与持续集成

敏捷开发中单元测试、持续集成是两个不可或缺的最佳实践。为此,培训中心特推出“单元测试及持续集成实战”培训班,具体事宜通知如下:

一、受众群体

1) 软件开发人员

2) 软件项目经理

3) 软件测试人员

4) EPG、QA等等

二、授课老师

由业界知名人士亲自授课:

冯老师:培训中心高级讲师,研究领域:CMMI、软件项目管理、软件质量管理等。

1、服务过多家大型软件企业。凭借外资、国企多年丰富的项目管理经历以及咨询培训的经验,帮助众多企业提升组织与个人绩效。

2、软件企业CMMI提升顾问、实战派项目管理、质量管理咨询专家。

三、培训要点:

在所有的软件项目质量控制环节中,单元测试发现缺陷效率最高,单元测试是提升软件产品质量最为关键的环节。但是不幸的是,国内大多数软件开发项目无法有效实施单元测试。不能有效实施单元测试是中国IT企业的一个“通病”。传统单元测试实施成本较大,不适合目前大规模开发,如何对经典单元测试理论进行改进,确保在有限资源等成本约束情况下有效实施单元测试?如何在倒排工期等工期固定情况下确保实施单元测试的效果?项目经理、QA如何量化监控单元测试的效果?这一系列问题是目前中国IT项目质量管理面临的巨大挑战与机会。

持续集成能够利用准专业测试人员“编译器先生”,不知疲倦、在项目前期发现缺陷,使得开发人员能够大胆地对系统划分模块、放心实施小迭代、尽早完成高质量的代码。数据证明,持续集成能够有效节省项目10%的工作量。那么持续集成是不是遥不可及的?是不是一定需要特殊工具支持?持续集成如何分级实施?这些问题困扰着喜欢增量迭代式开发的技术人员。

本课程从项目经理、开发人员角度设计,描述在一个JAVA开发项目场景中如何有效实施单元测试、持续集成。本课程采用专题讨论、案例练习等多种方式,使得学员能够在2天的时间中,获得相关知识精髓,进一步与自己的实际工作进行对比,从而增强实际工作能力。

四、主要内容

1、项目A单元测试、持续环境示例

2、单元测试快速入门

1)       单元测试是什么?

2)       单元测试包含哪些内容

3)       单元测试与其他QC环节效果的数据对比

4)       单元测试是敏捷开发顺利开展的基石

5)       单元测试是中国IT企业的“通病”

6)       单元测试与代码重构

7)       单元测试在对日外包软件中的典型使用

3、项目经理如何对单元测试进行管理?

1)       单元测试什么时候开始?

2)       单元测试工作量真的需要很大吗?

3)       如何在限定资源、工期等条件下对单元测试进行策划?

4)       如何对单元测试进行跟踪监控?

5)       为什么要局部文档标准化?

6)       如何对单元测试效果进行量化评价?

7)       什么时候该结束单元测试了?

8)       问题探讨:单元测试谁来做?各种做法的缺陷及弥补办法

4、经典单元测试方法如何实施?

1)       传统单元测试的过程

2)       白盒测试方法及示例

3)       桩和驱动的书写示例

4)       不容忽视的结果比对

5)       逻辑覆盖、路径覆盖、循环覆盖练习

6)       传统单元测试实施有什么难点?

7)       传统单元测试的常见问题

5、项目落地:单元测试改良示例

1)       改良后的单元测试

2)       黑盒?白盒?无谓之争

3)       什么是“大单元”?

4)       大单元的优缺点?

5)       改良后的单元测试实施

6)       练习:单元测试用例设计

7)       示例:web项目大单元实施

8)       示例:专业测试人员如何有效参与单元测试?

6、项目落地:单元测试裁剪示例

1)       工作量受限下的单元测试

2)       固定工期下的单元测试

3)       单元测试的横向裁剪

4)       单元测试的纵向裁剪

7、单元测试的工具使用说明

1)       Junit测试框架

2)       Jtest测试

3)       代码覆盖率检查工具

4)       代码静态检查工具

8、静态单元测试—code review

1)       矛盾:最简单、最有效、最难落地

2)       Code review实施关键点

3)       Code review自动化工具

4)       Code review企业落地

9、持续集成的分级管理

1)       软件研发交付面临的挑战

2)       基于持续集成的研发流程

n  自动构建

n  自动代码检查

n  自动部署

n  自动化测试

n  自动下发版本

n  持续交付

3)       持续集成的最佳实践?

4)       持续集成的分级管理

n  低成本的持续集成

n  高自动化的持续集成

5)       应用CI进行每日构建以频繁地交付可工作的软件

6)       基本脚本的自动化部署缩短系统部署时间

10、使用持续集成工具自动化

1)       持续集成的作用过程和优势

2)       持续集成常见工具介绍

3)       Jenkins/Hudson工具介绍

4)       Jenkins/Hudson简介和安装

5)       Jenkins/Hudson系统设置

6)       案例:使用Jenkins/Hudson工具进行每天集成

你可能感兴趣的:(技术,单元测试,软件工程)