测试方法【总结】

测试方法

从测试设计方法分类

测试名称

测试内容

黑盒测试

把软件系统当作一个黑箱,无法了解或使用系统内部结构及知识

白盒测试

设计者可以看到软件系统的内部结构,并且使用软件的内部知识来指导测试数据及方法的选择

灰盒测试

介于白盒和黑盒之间

总结:在实际工作中,对系统的了解越多越好,目前大多数的测试人员都是做黑盒测试,很少做白盒测试。因为白盒测试对程序员的要求很高,需要有编程能力,例如python程序,你要会python程序

 

从测试是手动还是自动上分类

 

测试名称测试内容
手动测试测试员用鼠标去手动测试
自动化测试用程序测程序

对于项目来说,手动测试和自动化测试同等重要,都是保障软件质量的方法。目前大多数的项目组都是采用手动加自动化测试相结合。因为很多测试无法自动化,很多复杂的业务逻辑也很难自动化,所以自动化测试无法替代手动测试。

对于软件测试个人发展来说,做自动化是一个很好的发展方向,需要测试人员学习大量的开发知识。

手工测试胜在测试业务逻辑,自动化测试胜在测试底层架够


如果测试的程序可测性好,很有必要做成自动化测试的

1 测试存储过程 例如用C去测试存储过程

2 测试web service 例如用soupui工具 或者C java去测试web service

3 界面和业务逻辑分离的系统,比如 mvc 可以用测试脚本去测试这些程序的API


从测试的目的分类

功能测试   非功能测试  性能测试 安全性测试

功能测试:范围从小到大,从内到外,从程序开发人员到测试人员

测试名称测试内容
单元测试(开发人员做)在最低的功能上验证程序的正确性,比如测试一个函数的正确性
功能测试验证模块的功能
集成测试验证几个互相有依赖关系的功能
场景测试验证几个模块是否能完成一个用户场景
系统测试对于整个系统功能的测试
Alpha测试测试人员在真实的环境中对软件进行全面的测试
Beta公测 真实的用户在真实的用户环境中进行的测试(用户做的)


非功能测试

一个软件除了基本功能之外,还有很多功能之外的特性。没有软件的功能,这些都无从表现出来,因此我们要在软件开发-基本功能完成后做这些功能

测试名称测试内容
压力测试验证软件在超过负载的情况下能否返回正常结果,没有崩溃
负载测试测试软件在负载的情况下能否正常工作
性能测试测试软件的效能,是否提供满意的服务质量
Accessibility test软件功能辅助测试-测试软件是否向残疾用户提供足够的辅助功能
Localization/Globalization本地化/全球化测试
Compatibility Test兼容性测试
Configuration Test配置测试-测试软件在各种配置下能否正常工作
Usability Test
可用性测试-测试软件是否好用
Security Test软件安全性测试


性能测试

性能测试要求测试人员熟练性能测试工具,比如QTP LoadRunner  Jmeter  

性能测试非常有技术含量,也是软件测试的一个职业方向


按测试时机和作用分类

在开发软件的过程中,测试起着“烽火台”的作用,他告诉我们软件开发的流程是否畅通


按测试策略分类

测试名称测试内容
回归测试对一个新的版本,重新运行以前的测试用例,看看新版本和以前的版本是否有退化
探索性测试随机进行的,探索性测试
sanity test粗略的测试,只需要执行部分的测试用例

回归测试

对软件测试人员来说就是重复测试,所以回归测试最好用自动化的,否则测试人员就要一遍一遍地重复测试

1 开发人员做些小改动,就需要测试人员做回归测试,确保现有的功能没有被破坏

2 Bug Fix也要做回归测试,确保新的代码恢复了,也确保现有功能没有被破坏

3 项目后期,需要做一个完整的回归测试,确保所有的功能都是好的


探索性测试

平时要喜欢做随机测试,抛开测试用例,自己按照自己的思路随便点点。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章