文章目录
- 1. 按测试对象分类
- 2. 按照是否查看代码划分
- 3. 按照开发阶段划分
1. 按测试对象分类
- 可靠性测试
- 容错性测试
- 安装卸载测试
- 内存泄露测试
- 弱网测试
(1)可靠性测试
可靠性 = 正常运行时间 / (正常运行时间 + 非正常运行时间) * 100% (最高 100%)
如果想要达到 4 个 9(99.99%),对于全年不休息的系统来说,不可用的时间是多少?
(2)容错性测试
容错性和可靠性的区别
有一架飞机(容错性好),飞机有四个引擎,假如说有一个引擎坏掉了(不可靠的表现),但是飞机能够正常飞行
(3)安装卸载测试
注意:工作中很容易遗漏安装和卸载的测试
(4)内存泄露测试
具体测试的方法为
- 人工检查 2. 借助工具进行代码静态扫描
(5)弱网测试
比如,安卓手机如果一直刷不到内容,可能会出现 anr 弹窗,如果有段时间网不太好(WIFI、5G、4G、3G、2G),可能会造成客户端
那么怎么实现弱网测试?可以借助 Fiddler 工具模拟弱网环境
- 打开弱网设置选项
- 打开设置弱网的脚本
如何计算 2G 和 3G 的上下行速率?
2. 按照是否查看代码划分
- 黑盒测试:纯功能测试,不关心具体怎么实现(系统测试)
- 白盒测试:关注程序的内部实现 (单元测试)
- 灰盒测试:介于黑盒和白盒之间 (集成测试)
为什么不能让灰盒测试取代黑盒测试和白盒测试?
灰盒测试没有白盒测试那么详尽,灰盒测试没有黑盒测试覆盖产品的广度大。所以灰盒测试不能取代黑白盒
面试题:哪种测试方法用的多?
黑盒测试和白盒测试,测试人员都会使用到,具体要根据工作中的实际情况来结合黑白盒测试。通常情况下测试人员使用黑盒测试相对多一些
3. 按照开发阶段划分
- 单元测试:对程序 “最小单元” 进行测试
- 冒烟测试:开发人员完成开发任务之后,交给测试人员进行测试的第一步,评估软件/系统是否具备可测试的条件
- 回归测试:对历史版本、历史功能进行测试,保证功能都是符合要求的。借助自动化来进行回归测试。