一、软件测试常见概念扫盲
1、软件测试行业前景及职业规划
1.1、测试行业前景
1.2、测试职业规划
1.3、总结
- 行业前景
有前途,有“钱”途 - 职业规划
技术路线与管理路线
2、软件测试常见概念扫盲
2.1、软件产品的质量模型
- 功能性
能够满足明确和隐含要求的功能 - 可靠性
能够处理异常情况,在错误中很快恢复 - 易用性
易懂、易学、易用、漂亮好看 - 效率性
占用少量的资源,提供适当的性能 - 维护性
是指产品可被修改的能力 - 可移植性
是指软件产品从一种环境迁移到另一种环境的能力
2.2、软件测试常见分类
- 是否覆盖源代码
① 黑盒测试
不关注程序里面的源代码,而关注具体的客户需求(即表面上的实现),这里功能的实现往往两部分就能看出来功能是否正常,一个是输入,一个是输出;给定一个特殊的输入,看看它的输出是否正确,如果正确就满足了客户需求,别的就不考虑了
② 白盒测试
与黑盒测试相反,白盒测试不仅关注源代码,还关注源代码的细节
③ 灰盒测试
既关注我们的用户需求能不能实现,又关注到技术的实现上,但不像白盒测试那样关注到代码细节中
- 按照阶段
① 单元测试
对软件中最小的可测单元进行的测试
② 集成测试
在单元测试的基础上,对多个单元组装后的产物进行测试
③ 系统测试
在集成测试的基础上,把软件看作一个整体进行测试
④ 验收测试
也叫交付测试,以最终用户的角度确认软件是否符合预期
- 按照是否运行
① 静态测试
测试代码的编写规范、命名规范、注释规范等待
② 动态测试
让代码运行起来进行测试
- 按照是否自动化
- 更多分类
① 冒烟测试
对基本功能、主要功能进行测试,避免测试资源的浪费
② 回归测试
对bug或测试用例进行回归测试
③ 随机测试
假设第一次接触软件进行随机测试,避免惯性思维
④ 探索测试
同时做测试设计和测试执行,探索复杂场景、容易被忽略的场景
2.3、软件开发常见模型
- 瀑布模型
- 快速原型模型
- 总结
① 瀑布模型
过程:需求分析、概要设计、详细设计、编码、软件测试、软件维护
优点:阶段清晰
缺点:依赖于需求分析的成果
适用:需求明确的,大型项目
② 快速原型模型
过程:快速分析、构造、运行、客户评价
优点:支持客户参与,适应需求灵活的项目
缺点:文档不完善,不能满足大型项目的要求
适用:需求灵活的中小型项目
2.4、软件测试常见模型
- V模型
- W模型
- 总结
① V模型
过程:开发半个V,测试半个V
优点:包含底层测试和高层测试
缺点:测试介入时间晚
② W模型
过程:开发一个V,测试一个V
优点:测试介入时间早
缺点:步骤复杂,对人员要求高
2.5、软件缺陷
- 定义与标准
- 缺陷报告的关键
- 总结
① 定义
软件或程序中存在的各种问题以及错误
② 判定标准
违反需求、违反标准和规范、违反易用性
③ 缺陷报告的要素
缺陷ID、缺陷状态、缺陷标题、严重程度、优先级、详细描写