软件测试--各种测试的概念

作者:shizhi57     分类:软件测试     时间:2014-06-06     浏览:42     评论:0 来源:博客园

集成测试黑盒或灰盒测试,将相关联的程序模块分别组合进行测试以检查模块间接口、功能、信息传递的正确性。侧重功能测试。

功能测试(function testing):是在规定的一段时间内运行软件系统的所有功能,以验证这个软件系统有无严重错误。

回归测试(regression testing):这种测试用于验证对软件修改后有没有引出新的错误,或者说,验证修改后的软件是否仍然满足系统的需求规格说明。

可靠性测试(reliability testing):如果系统需求说明书中有对可靠性的要求,则需进行可靠性测试。通常使用平均失效间隔时间MTBF与因故障而停机的时间MTTR来量度系统的可靠性。

强度测试(stress testing):强度测试是要检查在系统运行环境不正常到发生故障的情况下,系统可以运行到何种程序的测试。因此进行强度测试,需要提供非正常数量、频率或总量资源来运行系统。强度测试的一个变种是敏感性测试,以发现在有效输入类中可能引起某种不稳定性或不正常处理的某些数据的组合。

性能测试(performance testing):性能测试是要检查系统是否满足在需求说明书中规定的性能。特别是对实时系统或嵌入式系统,软件只满足需求的功能而达不到要求的性能是不行的。性能测试可以出现在测试过程的各个阶段,当然,只有当所有系统的元素全部组装完毕,系统性能才能完全确定。

恢复测试(recovery testing):恢复测试是要证实在克服硬件故障(包括掉电、硬件或网络出错等)后,系统能否正常地继续进行工作,并不对系统造成任何损害。为此,可采用各种人工干预的手段,模拟硬件故障,并由此检查:

① 错误探测功能——系统能否发现硬件失效或故障;

② 能否切换或启动备用的硬件;

③ 在故障发生时能否保护正在运行的作业和系统状态;

④ 在系统恢复后能否从最后记录下来的无错误状态开始继续执行作业等。

如果系统的恢复是自动的(由系统自身执行),则应对重新初始化、数据恢复、重新启动等逐个进行正确性评价。如果恢复需要人工干预,就需要对恢复的平均时间进行评估以判定它是否在允许的范围之内。

启动/停止测试(startup/shutdown testing):这类测试的目的是验证在机器启动及关机阶段,软件系统正确处理的能力。

配置测试(configuration testing):这类测试是要检查计算机系统内各个配置或各种资源之间的相互联结和功能分配中的错误。它主要包括以下几种:

① 配置命令测试:验证全部配置命令的可操作性(有效性);特别对最大配置和最小配置要进行测试。软件配置和硬件配置都要测试。

② 循环配置测试:证明对每个设备物理与逻辑的、逻辑与功能的每个循环置换配置都能正常工作。

③ 修复测试:检查每种配置状态及哪个设备是坏的。并用自动的或手工的方法进行配置状态间的转换。

安全性测试(security testing):系统的安全性测试是要检验在系统中已经存在的系统安全性、保密性措施是否发挥作用、有无漏洞。为此要了解破坏安全性的方法和工具,并设计一些模拟测试用例对系统进行测试,力图破坏系统的保护机构以进入系统。

可使用性测试(usability testing):可使用性测试主要从使用的合理性和方便性等角度对软件系统进行检查,发现认为因素或使用上的问题。

可支持性测试(supportability testing):这类测试是要验证系统的支持策略对于公司与用户方面是否切实可行。它所采用的方法是试运行支持过程(如对有错部分打补丁的过程,热线界面等),对其结果进行质量分析,评审诊断工具、维护过程、内部维护文档;衡量修复一个明显错误所需的平均最少时间。还有一种常用的方法是,在发行前把产品交给用户,向用户提供支持服务的计划,从用户处得到对支持服务的反馈。

安装测试(installation testing):安装测试的目的不是找软件错误,而是找安装错误

互连测试(interoperability testing):互连测试是要验证两个或多个不同的系统之间的互连性。这类测试对支持标准规格说明,或承诺支持与其他系统互连的软件系统有效。

兼容性测试(compatibility testing):这类测试主要想验证软件产品在不同版本之间的兼容性。有两类基本的兼容性测试:向下兼容(测试软件新版本保留它早期版本的功能)和交错兼容(验证共同存在的两个相关但不同的产品之间的兼容性)。

容量测试(volume testing):容量测试是要检验系统的能力最高能达到什么程序。在使系统的全部资源达到“满负荷”的情形下,测试系统的承受能力

文档测试(documentation testing):这种测试是检查用户文档(如用户手册)的清晰性和精确性。确保叙述正确无误。

本文转载自:http://www.cnblogs.com/shizhi57/p/3557575.html

上一篇:Java从控制台接受输入字符

下一篇:继续寻找app开发的技术方案


0 评论

查看所有评论

给个评论吧