spContent=每一位程序员都应该对自己程序的质量负责。这样的负责不靠海誓山盟。这样的负责需要你掌握卓越的软件测试技术。所以...
每一位程序员都应该对自己程序的质量负责。这样的负责不靠海誓山盟。这样的负责需要你掌握卓越的软件测试技术。所以...
—— 课程团队
课程概述
在本课程中,将学习以下一些基础知识:
- 为何需要软件测试
- 如何进行软件测试
- 如何使用常用测试工具
- 怎样评价测试活动的质量
学习本课程,可满足多样化的能力养成目标:
- 测试工程师(手工测试)
- 测试工程师(自动化测试)
- 测试开发工程师(开发自动化测试脚本)
- 测试开发工程师(开发自动化测试工具)
- 产品开发工程师(具备测试技能、能为质量负责)
课程特色:
- 充分参考国家标准、国际标准中的相关内容
- 全国大学生软件测试大赛/IEEE国际软件测试大赛共同发起人
- Talk is cheap, show me the code!
成绩 要求
总成绩由平时成绩、实验成绩、期末考试考试构成。具体比例依照教务处规定执行。
课程大纲
软件测试入门
1.1 软件测试第一讲
1.1.1 Bug故事
1.1.2 测试课程简介
1.2 软件为何失效
1.2.1 PIE模型
1.2.2 何处是Bug
1.3 基础知识
1.3.1 软件测试中的关键问题
1.3.2 测试活动的层次与分类
1.3.3 常用术语
如何开展软件测试
2.1 软件测试技术总览
2.2 功能测试-探索式测试
2.2.1 功能测试与探索式测试
2.2.2 探索式测试案例1
2.2.3 探索式测试案例2
2.3 输入域测试技术:等价类划分
2.4 输入域测试技术:边界值分析
2.5 输入域测试技术:随机测试
2.6 输入域测试:组合测试
2.6.1 组合测试
2.6.2 默认取值问题
2.7 基于模型的测试技术:决策表
2.8 性能测试
如何评价测试充分性
3.1 基于代码的测试充分性:结构覆盖
3.1.1 程序结构的抽象:控制流图
3.1.2 控制流图结构的覆盖
3.2 基于代码的测试充分性:逻辑覆盖
3.3 基于代码的测试充分性:路径覆盖
3.4 基于代码的测试充分性:数据流覆盖
3.5 基于故障的测试充分性:变异测试
3.6 基于故障的逻辑测试
软件测试工具专题
4.1 C++单元测试工具GTest
4.2 Java随机测试工具Randoop
4.3 安卓随机测试工具Monkey
4.4 组合测试工具PICT
4.5 组合测试国家标准及工具支持
4.6 Web功能测试工具Selenium IDE
4.7 Web功能测试工具WebDriver
4.8 数据驱动的Web功能测试PICT+Selenium IDE
4.9 Web性能测试工具JMeter
展开全部
预备知识
掌握任意一门程序设计语言(建议C++或Java)。
参考资料
[1] Paul Ammann, Jeff Offutt. 软件测试基础(英文版). 北京:机械工业出版社, 2009.
[2] IEEE Computer Society. SWEBOK(Version 3.0). https://www.computer.org/web/swebok.
[3] 史亮, 高翔. 探索式测试实践之路. 北京: 电子工业出版社, 2012.