SCE122:测试驱动开发实践-TDD

开班计划时间:12 小时
  • 具体开课时间请咨询课程顾问
预约试听 马上咨询
课程介绍
适用对象:软件编程人员
学习收获:理解测试驱动开发原理、作用和技巧 、在构建程序时能够合理地选择恰当的测试工具与测试技术 、通过测试驱动开发,确保最终开发出的程序高质量,便于维护和检查
详细大纲
1 软件代码新视角
1.1 软件可维护性的特征
1.2 好代码和糟糕代码之间的区别
1.3 劣质代码的代价
1.4 优秀代码的评价标准
1.5 代码设计与代码质量
1.6 案例分析:不同质量的代码对比
2 TDD的依赖-用户故事的细节
2.1 依据模糊简单的用户故事编写程序会出现什么问题
2.2 如何获得用户故事的细节?
2.3 基于BDD的获取用户故事的细节
2.4 基于ATDD的获取用户故事的细节
2.5 来自于美国空军的描述需求的方法-IDEF0
2.6 对比用户故事与Use Case
2.7 TDD依赖于功能的外部的周密细节
2.8 讨论:敏捷扑克牌估算的基础是什么?FPA估算出现的问题是什么?
3 TDD的基础-单元测试
3.1 单元测试的原理与测试代码结构
3.2 依据函数单元的“输入与输出”构造测试用例
3.3 测试输入数据穿越程序结构路径与单元测试覆盖率
3.4 如何全面构造测试输入数据
3.5 动手实践:依据讲师提供的案例构造测试输入数据
3.6 讨论:单元测试能够验证“非功能性实现”吗
3.7 选择合适的测试结果判断的方案-Assert形式化语言
3.8 不同单元测试框架给出的不同Assert的形式化语言的结构
3.9 动手实践:依据讲师提供的案例构造测试断言
3.10 函数单元的依赖关系的构造-Mock与Stub的方法
3.11 对比单元测试与Code Review的效率
4 TDD的初级阶段
4.1 功能逻辑流程的单元分解-单元列表
4.2 功能单元的输入域与输出域分析
4.3 依据输入域构造测试输入数据
4.4 依据输出域构造测试判断标准
4.5 参照单元测试代码规范编写测试代码
4.6 定义测试用例和程序接口的契约
4.7 基于契约设计方法编写实现代码
4.8 迭代实现所有功能单元列表
4.9 动手实践:依据讲师提供的案例体验TDD初级开发过程
5 TDD的中级阶段
5.1 使用测试技术全面构造测试输入数据-保证代码实现的全面性
5.2 建立输入-输出对照表
5.3 展示自动化构造测试输入数据的工具
5.4 功能逻辑的分解原则
5.5 功能逻辑分解的方案
5.6 健壮性编程-约束规则罗列与程序覆盖
5.7 从测试角度检查程序设计:功能、扩展、可靠
5.8 动手实践:依据讲师提供的案例体验TDD中级开发
6 TDD的高级阶段
6.1 程序面向测试的设计原则
6.2 功能逻辑迭代-核心功能-外围功能
6.3 测试依赖构造
6.4 功能实现层次迭代-功能层-边界层-效率层-安全层等等
6.5 TDD测试代码执行失败-代码调试手段
6.6 合理断点的设置与调整
6.7 持续添加目标功能代码、测试
6.8 动手实践:依据讲师提供的案例体验TDD高级开发
7 TDD效果评价与TDD思维
7.1 单元测试的执行效果评价-覆盖率思维与质量思维
7.2 问题输入域的覆盖率、逻辑场景覆盖与上下文覆盖
7.3 利用黑盒测试的结果作为评价标准-问题发生率计算
7.4 设计思维、测试思维与程序思维和谐统一
课程评价

课程评价({{EvaluationTotal}})

课程满意度

评价

您还没有给课程评分哦

满意度

    追加评价:

课程咨询
内容:

您还没有填写内容!

暂无问答,赶紧去提问吧
{{item.AnswerState==1?"已解决":"未解决"}}
{{item.Content}}
{{item.StudentAskTime}}
{{itemanswer.UserName}}
{{itemanswer.Content}}
{{itemanswer.StudentAskTime}}
同类课程推荐 more
嘉为大讲堂 more
原创文章 more

您好! 欢迎来到学领未来 !

学领未来提供线上及线下的学习服务,根据您的位置,为您推荐最近的线下培训地点 分站,你选择: