分享到:
计算机软件 最近更新
讨论未来电商发展趋势论文提纲
浅谈自媒体对现代生活的影响
论文范文:网络发展对青少年心理发展的影响
论我国电子商务应用中的支付问题
电子商务模式研究
中小型企业客户关系管理系统的开发与应用
中石油浙江销售分公司信息管理系统设计
图书馆管理系统分析与设计
物流师职业资格认证报名管理系统
销售管理系统的开发与设计
酒店客房管理系统
财务管理系统的实现
餐饮管理系统设计与实现
社区卫生服务管理系统
汽车营销企业的客户关系管理系统
明道管理咨询有限公司客户关系管理系统设计与开发
企业订单管理系统开发
基于WEB的CRM信息系统的开发与研究
高校科研工作量统计系统的开发与设计
基于Struts的连锁店管理系统
基于Linux的软件测试技术及测试工具应用(2)
分页标题#e#

(二) 标准定义
1. 狭义定义
使用人工或自动手段,来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清楚预期结果与实际结果之间的差别(1983,IEEE软件工程标准术语)。这一定义指出了软件测试是通过运行程序以检验软件是否满足软件需求的一个过程,是狭义的软件测试概念。这一定义相对来说比较完善,但也有不足之处,比如“运行或测试某个系统”,软件测试并不一定要运行系统,测试的定义中也不应该再出现测试的字眼。
2. 广义定义
由于在软件开发的需求分析、设计、编码实现的各阶段都可以把错误引入软件中,为了及时地发现并解决这些错误,避免对软件质量和开发后期工作地影响,需要在软件开发过程中不断地对软件进行复查、评估、检验,确定系统或部件的需求是否完成和正确,每一开发阶段的产品是否实现了在上一阶段规定的需求或条件,以及最后的系统或部件是否依从规定的需求。这些贯穿于软件开发各阶段的复查、评估与检测活动,被统称为软件测试。这种定义超出了狭义上的软件测试的范围,包含了对软件的确认和验证,是软件测试的广义概念。

三、软件测试分类
     目前软件测试领域有许多测试名称,这些名称来自于不同的分类原则,以下是常见测试名称的分类。
(一) 按测试阶段或测试步骤划分
按测试阶段或测试步骤来分,有单元测试(unit testing)、集成测试(integration testing)、系统测试(system testing)和验收测试(acceptance testing)。单元测试,是指对软件中的最小可测试单元进行检查和验证。单元就是人为规定的最小的被测功能模块。目前,国内的很多软件公司的单元测试还很不正规,只是由开发人员来简单地编译和调试一下自己的程序,没有相应的单元测试计划、单元测试用例和代码覆盖率的统计。集成测试,是指将通过测试的单元模块组装成系统或子系统,再进行测试,重点测试不同模块的接口部分。系统测试,指的是将整个软件系统看作一个整体进行测试,包括对功能、性能,以及软件所运行的软硬件环境进行测试。验收测试,指的是系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试,它也是软件正式交给用户使用的最后一道工序。在验收测试中,按照测试的方式又有Alpha测试和Beta测试。这两种测试针对的是由多用户使用的软件,由用户来发现那些似乎只有最终用户才能发现的错误。Alpha测试是这样的测试,在开发方的场所,用户在开发人员的指导下对软件进行测试,测试是受控的,开发人员负责记录错误和使用中出现的问题;Beta测试由软件的最终用户在一个或多个用户场所来进行,开发人员通常不在现场,整个测试不被控制,用户记录下所有的问题,并报告给开发人员。很多软件都有Beta版,比如QQ2009 Beta版、网络游戏Beta版等。其目的是交给用户免费试玩,再根据用户的反馈去修改软件,这个过程中即使有些错误也能被用户理解和接受。Alpha测试和Beta测试都不能由软件开发人员或测试人员完成。
这种划分来自于软件的开发过程,目的是验证软件开发过程各阶段的工作是否符合需求和设计要求。在软件单元完成编码后,首先进行单元测试,验证软件单元是否正确实现了规定的功能和接口等要求;在确认没问题后,将软件单元组装在一起进行集成测试,验证软件是否满足软件需求规格说明的各项需求;最后使通过验收测试的软件与其他系统成分组合在一起,并使其在实际运行环境中运行,进行系统测试。
(二) 按测试对象划分
按测试对象来分,有单元测试、部件测试、配置项测试和系统测试。
(三) 按使用的测试技术划分
按使用的测试技术来分有静态测试和动态测试,他么代表了程序不同的运行状态。动态测试又分为白盒测试和黑盒测试,白盒测试包括逻辑覆盖测试、域测试、程序变异测试、路径测试、符合测试等,黑盒测试包括功能测试、强度测试、边界值测试、随机测试等。
(四) 按软件质量特性划分
     按软件质量特性来分,有功能性测试、可靠性测试、易用性测试、效率测试、可移植性测试和维护性测试。
(五) 按测试项目划分
按测试项目来分,有功能测试、性能测试、接口测试、强度测试、可靠性测试、安全性测试、人机界面测试、健壮性测试、恢复测试、安装测试、压力测试、兼容测试、负载测试、文档测试等。
1. 功能测试
主要针对软件/产品需求规格说明的测试,验证功能是否符合需求,包括原定功能的检验、是否有冗余功能、遗漏功能。
2. 性能测试
测试软件是否达到需求规格说明中规定的各类性能指标,并满足相关的约束和限制条件。
3. 接口测试
测试被测对象与其他软件(包括软件单元、部件、配置项)或硬件的接口。
4. 强度测试
使软件在其设计能力的极限状态下、进而超过此极限下运行。检验软件对异常情况的抵抗能力。
5. 可靠性测试
这里是比较狭义的可靠性测试,它主要是对系统能否稳定运行进行一个估计。
6. 安全性测试
测试软件在没有授权的内部或者外部用户的攻击或者恶意破坏时如何进行处理,是否能保证软件和数据的安全。
7. 人机界面测试
对人机界面提供的操作进行测试,测试人机界面的有效性、便捷性、直观性等,如用户界面是否友好、是否方便易用、设计是否合理、位置是否正确。
8. 健壮性测试
侧重于软容错能力的测试,主要是验证软件对各种异常情况(如数据边界、非法数据、异常中断等)是否进行正确处理。
9. 恢复测试
对每一类导致恢复或重构的情况进行测试,验证软件自身运行的恢复或重构,软件控制的系统的恢复或重构以及系统控制的软件的恢复或重构。
10. 安装测试
安装测试主要检验软件是否可以正确安装,安装文件的各项配置是否有效,安装后能否影响原系统,卸载后是否删除干净,是否影响原系统等。
11. 压力测试
对系统不断施加压力的测试,通过确定一个系统的瓶颈或者不能接收的性能点,获得系统能提供的最大服务级别的测试。例如测试一个Web站点在大量的负荷下,何时系统的响应会退化或失败。压力测试注重的是外界不断施压。

随机推荐
电力系统通信技术建设电力通信网络管理系统
中小型药房进销存管理系统
DOS界面下通用图形编辑软件的设计
餐饮管理系统设计与实现
学生成绩管理系统的设计与实现
会议中心系统设计方案
城市DLG数据库元数据组织与管理研究-结论与展望
软科学学术论文质量评价系统
学籍管理系统软件
浅谈用面向对象建模技术构建企业管理信息系统

设为首页 | 关于我们 | 广告联系 | 友情链接 | 版权申明

Copyright 2009-2014 All Right Reserved [粤ICP备05100058号-11]