共计 2332 个字符,预计需要花费 6 分钟才能阅读完成。
一、软件测试的目标
发现缺点
尽早和尽量多的发现被测对象中的缺点,应该是测试人员测试过程中最常提起的一个测试指标,也是所谓测试价值的一个的重要体现。发现缺点的目标是推动开发人员定位和修复问题,测试人员通过再测试和回归测试,确保开发人员已修复缺点,并没有影响原来失常的区域,从而进步产品质量。开发生命周期的每个阶段,都应该有测试的参加,并尽量多的发现本阶段的缺点,从而大大提高本阶段的缺点阶段遏制能力,从而进步测试效率、降低成本和提高质量。
二、软件测试的两大分类
1、白盒测试
白盒测试是把测试对象看作一个关上的盒子。利用白盒测试法进行动静测试时,须要测试软件产品的内部结构和处理过程,不需测试软件产品的性能。
白盒测试法的笼罩规范有逻辑笼罩、循环笼罩和根本路劲测试。其中逻辑笼罩包含语句笼罩、判断笼罩、条件笼罩、断定 / 条件笼罩、条件组合笼罩和门路笼罩。
白盒测试是晓得产品外部工作过程,可通过测试来检测产品外部动作是否依照规格说明书的规定失常进行,依照程序外部的构造测试程序,测验程序中的每条通路是否都有能按预约要求正确工作,而不顾它的性能,白盒测试的次要办法有逻辑驱动、基路测试等,次要用于软件验证。
2、黑盒测试
黑盒测试是依据软件的规格对软件进行的测试,这类测试不思考软件外部的运作原理,因而软件对用户来说就像一个黑盒子。
测试人员以用户的角度,通过各种输出和察看软件的各种输入后果来发现软件存在的缺点,而不关怀程序具体如何实现的一种软件测试办法。
三、白盒测试具体分类
(1)单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。
桩模块(stud)是指模仿被测模块所调用的模块,驱动模块(driver)是指模仿被测模块的下级模块,驱动模块用来接管测试数据,启动被测模块并输入后果。
(2)集成测试(integration testing),是单元测试的下一阶段,是指将通过测试的单元模块组装成零碎或子系统,再进行测试,重点测试不同模块的接口部门。
集成测试就是用来查看各个单元模块联合到一起是否协同配合,失常运行。
(3)零碎测试(system testing),指的是将整个软件系统看做一个整体进行测试,包含对性能、性能,以及软件所运行的软硬件环境进行测试。
零碎测试的次要根据是《零碎需要规格说明书》文档。
(4)验收测试(acceptance testing),指的是在零碎测试的前期,以用户测试为主,或有测试人员等品质保障人员独特参加的测试,它也是软件正式交给用户应用的最初一道工序。
验收测试又分为 a 测试和 beta 测试,其中 a 测试指的是由用户、测试人员、开发人员等独特参加的内部测试,而 beta 测试指的是内测后的公测,即齐全交给最终用户测试。
四、黑盒测试具体分类
1) 功能测试(function testing),是黑盒测试的一方面,它查看理论软件的性能是否合乎用户的需要。
包含逻辑功能测试(logic function testing)
界面测试(UI testing)UI=User Interface
易用性测试(usability testing):是指从软件应用的合理性和方便性等角度对软件系统进行查看,来发现软件中不不便用户应用的中央。
兼容性测试(compatibility testing):包含硬件兼容性测试和软件兼容性测试
2) 性能测试(performance testing)
软件的性能次要有工夫性能和空间性能两种
工夫性能 :次要指软件的一个具体事务的响应工夫(respond time)。
空间性能 :次要指软件运行时所耗费的系统资源。
软件性能测试分为:
个别性能测试 :指的是让被测系统在失常的软硬件环境下运行,不向其施加任何压力的性能测试。
稳定性测试也叫可靠性测试(reliability testing):是指间断运行被测系统查看零碎运行时的稳固水平。
负载测试(load testing):是指让被测系统在其能忍耐的压力的极限范畴之内间断运行,来测试零碎的稳定性。
压力测试(stress testing):是指继续一直的给被测系统减少压力,直到将被测系统压垮为止,用来测试零碎所能接受的最大压力。(Validate the system or software can allowed the biggest stress.)
3) 接口测试(Interface Testing)
接口测试是测试零碎组件间接口的一种测试。接口测试次要用于检测内部零碎与零碎之间以及外部各个子系统之间的交互点。测试的重点是要检查数据的替换,传递和管制治理过程,以及零碎间的互相逻辑依赖关系等。
举荐一款接口测试和接口文档生产工具:apipost
五、其余测试类型
回归测试(regression testing) 是指对软件的新的版本测试时,反复执行上一个版本测试时的用例。(When a new build or release is deployed, repeat all the test cases which has executed in the last build or release.)
冒烟测试(smoke testing),是指在对一个新版本进行大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性。(validate the major function is deployed or not in software of system when a new build or release is implement.)
随机测试(random testing),是指测试中所有的输出数据都是随机生成的,其目标是模仿用户的实在操作,并发现一些边缘性的谬误。(means or all the test data is random, to validate the some edge bugs.)