按测试过程分:单元测试、集成测试、系统测试按方法分:黑、白、灰盒测试。根据软件主要侧重:性能测试、功能测试、兼容测试、压力测试、负载测试、验收测试。其中验收测试包含:
(1)、软件功能确认测试:功能测试的主要内容包括软件安装、卸载测试,用户手册中提及的所有功能测试及边界值测试。相对于测试内容其测试准则可以规定为被测系统是否可以按照用户文档中的描述能成功的安装和卸载;用户文档中提到的所有功能是否可以顺利执行,并符合用户文档给定的边界值;软件系统的运行是否与用户文档中的描述相互一致。因此可以说功能符合性测试是软件系统最基本的测试。
(2)、安全可靠性测试:用户权限限制测试、留痕功能测试、屏蔽用户操作错误应答测试、系统备份与恢复手段测试、多用户操作输入数据有效性测试、异常情况及网络故障对系统的影响测试。
(3)、易用性测试:易用性测试主要着重易学易用性、联机帮助、功能操作程度的难易性、软件界面清晰程度等几个方面。其测试标准主要考察软件的各个功能项的操作是否有联机帮助,非计算机专业用户是否可通过用户手册轻松操作。其目的是衡量软件系统的普及推广的难易度。
(4)、可扩充性测试:任何一个版本的软件系统都有一定的使用周期,每格一段时间就需要升级,进行功能扩充。此外,有的软件系统还需要与其它软件系统进行数据交流。这就需要检测软件系统升级是否方便;是否留有非本系统的数据接口,以方便数据的传输。此项检测的另一项主要任务就是检测用户是否可以通过修改配置文件或其它非编程方式修改或增减系统功能。
(5)、兼容性测试:兼容性测试是软件测试中的重要一环,其测试内容是软件在规定的不同操作系统中运行是否正常。在规定的不同数据库系统上运行是否正常,以及在规定的不同型号的硬件环境中运行是否正常。
(6)、效率测试:随着局域网站数的增加以及广域网的使用,数据的网络传输时间和存取时间逐渐变成软件使用中的瓶颈,所以如何提高运行效率已成为各方面注意的焦点,也成为衡量软件产品质量的指标之一。进行这一测试技术性较强,需要了解待测软件系统采用什么样的传输协议,已及什么样的传输方式。测试时需要必要的测试环境及使用专用网络测试工具。
(7)、资源占用率测试:系统资源一般是指内外存储、CPU、通讯端口以及网络带宽等系统资源。如何合理利用系统资源是与软件系统的性能密切相关的。例如,如果软件系统运行的CPU利用率超过50%,或系统内存的占有率一直居高不下则系统运行的速度就会令人无法忍受;若随意占有通讯端口就会照成一些通用的通讯软件无法运行。同样如果采用广播式发送,就会占用网络带宽,使网络的通讯速度降低。这些都会给用户造成不变,使用户不得不升级硬件系统或扩展网络带宽。因此,资源占有率的测试越来越显示出其重要性。
(8)、用户文档资料验收:使用手册对用户可调用的所有功能有完整的描述;使用手册能使正常执行其产品的用户充分理解的产品的性能;使用手册易于浏览,并有目录和索引;文档中的所有资料没有错误的表达;文档的内容说明与系统实际的结果相互一致;管理员手册中具有软件的标识和运行环境的说明;管理员手册具有安装和维护的有关说明;管理员手册提供正常运行的边界值。
山东省软件评测中心根据多年经验提供全程软件质量保障服务,在规划阶段、实施阶段、交付阶段、运维阶段分别提供相应阶段的质量保障服务。
-按照软件特性来划分测试类型有功能测试和性能测试
其中功能测试包括:
逻辑功能测试
界面测试
易用性测试
安装测试
兼容性测试等
性能实际上是功能的另一个指标,主要关注软件中的某一功能在特定的时间、空间条件下,功能是否使用正常;比如负载测试和压力测试都属于性能测试,两者可以结合进行。
--按照测试技术划分测试类型有黑盒测试、白盒测试和灰盒测试
黑盒测试只关注输入输出,也就是程序的外在表现;
白盒测试是既关注程序的外在表现,又关注程序内部结构是如何实现的;
灰盒测试就是介于2者之间的;
--按照开发阶段来划分测试类型有单元测试、集成测试、系统测试和验收测试
单元测试又称模块测试,是针对软件设计的最小单位,单元测试需要从程序的内部结构出发设计测试用例;
集成测试也叫做组装测试,是检验程序单元或部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统;
系统测试是在真实的系统运行的环境下,检查完整的程序系统能否和系统(包括硬件、外设、网络和系统软件、支持平台等)正确配置、连接,并最终满足用户的所有需求;
验收测试是软件产品检验的最后一个环节。按照项目任务书或合同、供需双方约定的验收依据文档进行的对整个系统的测试与评审,决定是否接收或拒收系统。
最后:
黑盒测试和白盒测试的主要区别在于是否了解系统或程序的内部结构和代码;
单元测试主要运用白盒测试;
集成测试主要是白盒为主,黑盒为辅;
系统测试主要是黑盒为主,白盒为辅;
验收测试主要是运用黑盒测试。
这些分类只是对软件测试工作中的测试过程、测试使用方法、然后再结合软件的需求来测试,比如性能、功能、界面、兼容、压力、负载、安装卸载、接口、这些都需求中明确了要求,软件需要做到的一些指标,所以都需要测试,比如说测试一个WEB项目,需求中要求性能达到初次进入系统页面打开时速度必须在5秒内,非第一次进入系统再3秒内,又比购物网站软件,要求同时能允许至少10万个用户同时对某一商品做购买操作(秒杀商品此需求较多),这些都是需求类的,我这大概给你讲了一点点例子,呵呵,这些都属于测试理论一类的,你可以到51testing网站上找一些理论方面的教材看看,然后再结合公司的一些实际项目,你就会真正了解他们的关系的。
软件测试分类有哪些呢?卓码软件测评小编从以下三个方面进行分类:
1. 按照代码可见程度
测试行业人们比较熟悉的名词大概就是黑盒测试、白盒测试、灰盒测试了。这也是根据软件产品代码的可见程度来进行区分的。黑盒测试就是指专注于产品外部机构的测试,不考虑源代码和逻辑等。而像白盒测试就是打开“软件盒子”内部,研究程序的构造等。灰盒测试则是介于两者之间。
2. 按照软件测试内容
按照软件测试内容划分的话,主要是对产品的性能测试、功能测试、压力测试等,测试软件系统的功能及稳定性等。更多测试资讯你也可以上卓码测评官网看看
3. 按照项目周期
还有常见的就是在软件项目不同的研发周期开展的软件测试,比如是开发前期程序单个模块开展的单元测试,接着是在单元测试基础上开展的集成测试、系统测试等,还包含在软件交付阶段的验收测试等。
软件测试分类如下:
按照项目流程阶段划分:单元测试、集成测试、系统测试、验收测试
按照软件代码可见程度划分:黑盒测试、白盒测试、灰盒测试
按照软件的不同测试面划分:功能测试、性能测试
按照测试工作的自动化程度划分:手工测试、自动化测试
还有一些出现在软件是的周期中,既不算具体明确的测试阶段,也不是具体的测试方法:冒烟测试、回归测试、随机测试、探索性测试、安全测试
分层的自动化测试有:单元自动化测试、接口自动化测试、UI自动化测试