软件测试是什么?
软件测试就是查找软件中的缺陷,即常说的bug,以保障软件的质量。
软件测试的分类
按生产阶段划分
按照生产阶段进行划分,软件测试主要分为4种:
- 单元测试
主要是针对程序源代码进行测试,此部分为开发自测。 - 集成测试
针对模块之间的交互功能进行测试,又称为组装测试。由测试人员进行测试。 - 系统测试
对整个系统进行全面的测试。此部分也是由开发人员进行测试。 - 验收测试
以用户代表为主,验证项目是否符合预期要求。由用户自测
按照代码可见度划分
- 黑盒测试
针对有UI界面软件系统输入输出类测试 - 灰盒测试
针对无UI界面软件系统输入输出和内部逻辑结 构的测试(能看到部分源代码) - 白盒测试
针对程序源代码及内部逻辑本身进行测试
其他测试
-
冒烟测试
对核心功能进行验证,以保障提测内容具备可测性。即对业务流程的正向用例进行测试。 -
回归测试
对已修复bug/更新后,对已测内容再次测试,以保证bug修复或确保新功能对旧功能没有影响。
软件质量模型
软件质量模型,就是进行软件测试时,我们应该从哪些维度来评估软件的质量。
-
功能性
软件是否具备某项功能。即是都满足用户所提出的功能需求。 -
性能
多用户同时使用能否满足要求(如,时间,资源) -
兼容性
在不同的设备或者平台上是否都能正常使用,不受影响。 -
易用性
易学易用,用户粘性好。以给用户提供更好的体验。 -
可靠性
长期运行稳定,不会出现死机,无响应,卡顿等异常情况。 -
安全性
对于敏感数据进行加密传输,以保障数据安全。 -
可维护性
在系统运行时出现异常,是否容易修复。 -
可移植性
应用系统升级或者进行数据迁移时不会产生数据丢失的情况。