你准备好探索不同类型的软件测试了吗?
作为测试人员,我们知道各种类型的软件测试,例如功能测试、非功能测试、自动化测试、敏捷测试、还有它们的子类型等等。
测试过程中,我们都会遇到几种类型的测试。可能听说过一些,也可能研究过一些,但并不是每个人都了解所有的测试类型。
每类测试都有其自己的特点、优点和缺点。这篇教程主要涵盖了日常测试中经常使用到的软件测试类型。
我们去看看它们吧!!
你将学习到以下内容:
不同类型的软件测试
#1) Alpha 测试
#2) 验收测试
#3) 临时测试
#4) 可达性测试
#5) Beta 测试
#6) 后端测试
#7) 浏览器兼容性测试
#8) 向后兼容性测试
#9) 黑盒测试
#10) 边界值测试
#11) 分支测试
#12) 比较测试
#13) 兼容性测试
#14) 组件测试
#15) 端到端测试
#16) 等价分区
#17) 实例测试
#18) 探索性测试
#20) 功能测试
#21) GUI测试
#22) 大猩猩测试
#23) 乐观路径测试
#24) 增量集成测试
#25) 安装/卸载测试
#26) 集成测试
#27) 负载测试
#28) 猴子测试
#29) 变异测试
#30) 负面测试
#31) 非功能测试
#32) 性能测试
#33) 可恢复性测试
#34) 回归测试
#35) 基于风险的测试 (RBT)
#36) 健全性测试
#37) 安全测试
#38) 冒烟测试
#39) 静态测试
#40) 压力测试
#41) 系统测试
#42) 单元测试
#43) 可用性测试
#44) 漏洞测试
#45) 容量测试
#46) 白盒测试
结论
不同类型的软件测试
下面列出了一些常见的软件测试类型:
功能测试类型包括:
-
单元测试
-
集成测试
-
系统测试
-
健全性测试
-
冒烟测试
-
接口测试
-
回归测试
-
Beta/验收测试
非功能测试类型包括:
-
性能测试
-
负载测试
-
压力测试
-
容量测试
-
安全测试
-
兼容性测试
-
安装测试
-
可恢复性测试
-
可靠性测试
-
可用性测试
-
合规性测试
-
本地化测试
让我们探索更多关于测试类型的知识。
#1) Alpha 测试
软件行业最常用的测试。其测试目的是在软件发布给市场或用户之前,找到所有可能的问题或缺陷。
Alpha 测试是在软件开发的最后阶段,但早于 Beta 测试之前进行。Alpha 测试结束后,有可能根据测试结果做一些软件设计的变更。
Alpha 测试是在开发环境下进行,可以创建一个内部的虚拟用户环境用来测试。
#2) 验收测试
验收测试是由客户发起验收,验收测试的目的在于检查端到端的软件系统是否满足业务需求,是否符合最终用户的需求。
只有当软件的所有特性和功能都符合预期时,客户才会接受该软件。这是测试的最后一个阶段了,这之后软件就会进入生产阶段。所以这个测试也被称为用户验收测试(UAT)。
#3) 随机测试
测试名字就说明了该项测试是随机的,即不会参考测试用例,也没有针对该项测试的任何计划或者文档。
该测试的目的是通过从任一入口执行应用程序或者随机抽查功能来查找缺陷或破坏应用程序。
随机测试是通过非正式的手段来发现缺陷,它可以由项目中的任何人来执行。不根据测试用例测,很难发现缺陷。但是有时候现有测例发现不了的缺陷,随机测试有可能能发现。
#4) 可达性测试
可达性测试的目的在于看软件或者应用程序是否对残疾人可用。
这里的残疾指的是耳聋、色盲、智障、盲人、老年等有障碍群体。我们需要做一系列的检查,比如给视觉障碍者提供的字体大小,给色盲者提供的色彩和色彩对比等。
#5) Beta 测试
Beta测试是由用户来完成的一种软件测试。把产品发布给实际最终用户之前,在真实的环境中进行的测试。
Beta测试要保证软件或产品没有重大bug,且符合最终用户的业务需求。用户接受了该软件,Beta测试也就成功了。
通常这项测试都是由最终用户或非项目组成员完成的。这是在做商业发布前的最终测试了。一般情况下,发布的软件或产品的 Beta 版仅限于特定区域的一定数量的用户。
这项测试是由最终用户实际使用软件,并反馈问题给公司。然后公司在全面正式发布前,根据反馈信息做一些必要的调整。
#6) 后端测试
任何时候在前端的输入信息都会被存储在数据库中。我们把对数据库的测试称为数据库测试或后端测试。
数据库有好几种,比如SQL Server、MySQL 和 Oracle 等。数据库测试包括测试表结构、语法、存储过程、数据结构等。
后端测试不包括GUI,测试人员直接连接到数据库,通过一系列查询命令来验证数据。
在后端测试中可能会发现数据丢失、死锁、数据损坏等问题,在软件系统进入生产环境之前,这些问题必须被修复完成。
#7) 浏览器兼容性测试
这是兼容性测试的一个子类型,由测试团队执行。
浏览器兼容测试的测试对象是web应用程序,是为了保证其在不同的浏览器和不同的操作系统下均可运行。还包括验证web应用程序在所有浏览器的所有版本上均可以运行。
#8) 向后兼容性测试
向后兼容性测试是用于验证新开发的软件或更新的软件在旧版本的环境中运行是否良好。
该项测试会检查新版本软件是否可以兼容旧版本软件创建的文件格式,同时还检查新版本软件是否兼容旧版本软件创建的数据表、数据文件和数据结构。
软件更新后,都应该保证其可以在先前的版本上良好运行。
#9) 黑盒测试
黑盒测试不管系统内部是如何设计的,只基于需求和功能进行测试。
#10) 边界值测试
边界值测试检查应用程序对边界的处理情况。
执行该项测试以检查边界值处是否存在缺陷。边界值测试是测试一个范围内的不同数字。每个范围都有一个上限和一个下限,边界值测试就是对这些边界值进行测试。
比如,一个测试的范围是1到500,那么它的边界值就是 0、1、2、499、500 和 501。
未完待续。。。