软件测试-分阶分类
分阶

- 高级软件测试工程师;介于测试工程师与测试开发工程之间,熟练包含功能测试外其它类测试,及灰盒测试。
- 自动化测试工程师;及熟练开发自动化框架,配合业务需要可随时调整。掌握一门语言、各端自动化工具等。
- 测试开发工程师;开发测试工具、搭建测试平台。通过技术手段解决复杂、人为有限等测试需求。
- 安全测试工程师;及相关安全协议,网络安全,软件防护,用户隐私等。
测试分类
技术划分
- 黑盒测试:注重功能实现;输入与输出对比
- 白盒测试:注重代码逻辑;会看代码;代码评审;单元测试
- 灰盒测试:大概知道代码逻辑又不需要看的所有代码--接口测试
被测对象是否运行
不同测试手段
测试种类划分
- 功能测试;业务逻辑--核心技能
- 界面测试;UI(user interface)--外面美观设计合理主观性强--标准=原型图,ui切图。
- 安全测试;防止攻击,借助工具。初中级如https等,高级如sql脚本注入等。
- 兼容性测试;各种环境;windows、linux、MAcOS、anroid、ios。软件不同版本测试。
- 易用性测试;人性化,简易舒适,使用习惯,用户体验。可参考其他同类产品。
- 性能测试;并发--同时请求等,压力--cpu内存高压时处理程序、稳定性、负载。
测试阶段划分
- 单元测试;主要测试程序代码快,确保单元模块正确编译,类、函数、方法等--开发自测
- 集成测试;各个单元组合成完整体系,整体单位之间接口是否正确--接口测试
- 系统测试;各个集成等系统搭建起来了,测试软件性能功能是否符合需求,是否系统中运行存在漏洞。---很重要,最常见(web,app)基本需要多轮2-4轮不等的测试,每次提测都要先冒烟测试。之后会输出一个文档测试报告;及产品质量报告
- 验收测试;主要是用户/产品/或其他人员检查。会根据所提到需求规格说明书来验证,以确保软件达到符合效果。--依据
- α测试;内测--比如游戏内测;给一部分人权限来验证。
- β测试;公测--及公测版本,Beta版本
- 上线发布;在最少用户使用时间段,如有问题回滚,等着被吊吧
- 回归测试;regression test,修复bug后验证其他没被修改过代码模块的测试,上线之前多轮测试,很重要但很繁琐
- 冒烟测试;本次需求的基本是否实现,对整个软件来说的话就是核心流程
- 探索性/自由测试(测试思维)结合测试人员的经验等