从测试设计方法分类
测试名称 | 测试内容 |
---|---|
黑盒测试 | 把软件系统当作一个“黑箱”,无法了解或使用系统的内部结构及知识。从软件的行为,而不是内部结构出发来设计测试. |
白盒测试 | 又称为结构测试或逻辑驱动测试,是一种按照程序内部逻辑结构和编码结构,设计测试数据并完成测试的一种测试方法。 |
灰盒测试 | 介于黑盒和白盒之间。是一种综合测试法,它将“黑盒”测试与“白盒”测试结合在一起,是基于程序运行时的外部表现又结合内部逻辑结构来设计用例,执行程序并采集路径执行信息和外部用户接口结果的测试技术。 |
从是否执行代码角度
测试名称 | 测试内容 |
---|---|
手动测试 | 测试人员用鼠标去手动测试 |
自动化测试 | 用程序测试程序 |
对于项目来说, 手动测试和自动化测试同等重要,都是保障软件质量的方法。
目前大部分的项目组都是手动测试和自动化测试相结合。
因为很多测试无法做成自动化,很多复杂的业务逻辑也很难自动化, 所以自动化测试无法取代手动测试。
总的来说,手工测试胜在测试业务逻辑,而自动化测试胜在测试底层架构。
功能测试
测试的范围从小到大,从内到外, 从程序开发人员(单元测试)到测试人员,到一般用户Alpha/Beta测试
单元测试
在最低的功能/参数上验证程序的准确性,比如测试一个函数的正确性(开发人员做的)
功能测试
验证模块的功能 (测试人员做的)
集成测试
验证几个互相有依赖关系的模块的功能 (测试人员做的)
场景测试
验证几个模块是否能完成一个用户场景 (测试人员做的)
系统测试
对于整个系统功能的测试 (测试人员做的)
Alpha 测试
软件测试人员在真实用户环境中对软件进行全面的测试 (测试人员做的)
Beta 测试
真实的用户在真实的用户环境中进行的测试, 也叫公测 (最终用户做的)
非功能测试
一个软件除了基本功能之外,还有很多功能之外的特性,这些叫“Quality of Service requirement”服务质量需求。没有软件的功能,这些特性都无从表现出来,因此,我们要在软件开发的适当阶段-基本功能完成后做这些测试。
压力测试
验证软件在超过负载设计的情况下仍能返回正确的结果,没有崩溃
负载测试
测试软件在负载情况下能否正常工作
性能测试
测试软件的效能,是否提供满意的服务质量
Accessibility test
软件辅助功能测试-测试软件是否向残疾用户提供足够的辅助功能
Localization/Globalization
本地化/全球化测试
Compatibility Test
兼容性测试
Configuration Test
配置测试-测试软件在各种配置下能否正常工作
Usability Test
可用性测试 –测试软件是否好用
Security Test
软件安全性测试