软件测试理论篇
按照测试方法分类
1、动态测试:运行程序,输入数据,查看预期结果是实际结果之间的差异
2、静态测试:不运行程序,查看代码的缺陷
3、黑盒测试:以数据为驱动,不考虑程序内部结构,查看功能是否满足需求
4、白盒测试:以逻辑为驱动,考虑程序内部的分支和循环结构以及逻辑结构
5、冒烟测试:正式进入全面测试之前,验证核心流程或基本流程是否通过
6、回归测试:对已经测试过的功能再一次进行测试
7、功能测试:根据产品特征、操作描述和用户方案,测试一个产品的特征和可操作行为以确定他们满足设计需求
8、性能测试:评价一个产品或组件与性能需求是否符合的测试。包括负载测试、强度测试、数据库容量测试、基准测试等类型。
9、压力测试:测试软件负载的极限值,瞬间峰值。这是一种破坏性的测试
10、负载测试:多个用户对软件施加一定的负载,验证软件的负载能力
11、易用性测试:主要从使用的合理性和方便性等角度对软件系统进行检查,发现人为因素或使用角度上的问题,界面要便于使用、输入的响应时间和响应方式合理、输出有意义,正确,错误信息能够引导用户去解决问题,文档全面、确切等。易用性测试多数情况下没有一个量化的指标,主观性较强
12、安装测试:确保该软件在正常情况和异常情况的不同条件下能够正确安装
13、界面测试:指测试用户界面的风格是否满足客户需求,文字是否正确,界面是否美观,文字图片组合是否完美,操作是否友好等
14、文档测试:主要检查文档的正确性、完备性和可理解性
15、兼容性测试:软件测试是否和系统的其它与之交互的元素之间兼容
16、安全性测试:检查系统对非法入侵的防范能力,检查系统中已经存在的系统安全性、保密措施是否发挥作用,有无漏洞
17、恢复测试:主要检查系统的容错能力
18、随机测试:没有书面测试用例、记录期望结果、检查列表、脚本或指令的测试。主要根据测试者的经验对软件进行功能和性能抽查
19、手工和自动化测试:手工测试是采用手工的方式执行测试;自动化测试:使用自动化测试工具来进行测试,这类测试一般不需要人干预,通常在GUI、性能等测试中用的较多
20、通过测试:是使用满足需求的数据测试系统的过程
21、失败测试:是使用不满足需求的数据测试系统的过程
22、错误测试:错误猜测测试是通过直觉发现程序中的错误和缺陷的能力