分享到:
计算机软件 最近更新
讨论未来电商发展趋势论文提纲
浅谈自媒体对现代生活的影响
论文范文:网络发展对青少年心理发展的影响
论我国电子商务应用中的支付问题
电子商务模式研究
中小型企业客户关系管理系统的开发与应用
中石油浙江销售分公司信息管理系统设计
图书馆管理系统分析与设计
物流师职业资格认证报名管理系统
销售管理系统的开发与设计
酒店客房管理系统
财务管理系统的实现
餐饮管理系统设计与实现
社区卫生服务管理系统
汽车营销企业的客户关系管理系统
明道管理咨询有限公司客户关系管理系统设计与开发
企业订单管理系统开发
基于WEB的CRM信息系统的开发与研究
高校科研工作量统计系统的开发与设计
基于Struts的连锁店管理系统
基于Linux的软件测试技术及测试工具应用(3)
分页标题#e#
12. 兼容测试
测试软件在一个特定的硬件/软件/操作系统/网络等环境下的性能如何。
13. 负载测试
负载测试是性能测试的一种,通常是指让被测系统在其能忍受的压力的极限范围之内连续运行,来测试系统的稳定性。
14. 文档测试
测试开发过程中生成的文档,以需求规格说明、软件设计、用户手册、安装手册等为主,检验文档是否和实际存在差别。文档测试不需要编写测试用例。
(六) 回归测试、冒烟测试、随机测试
这3个概念很重要,但是它们既不算是测试阶段,也不算是具体的测试方法。回归测试(regression testing),是指对软件的新的版本测试时,重复执行上一个版本测试时的用例。回归测试可以再任何测试阶段进行,既有黑盒测试的回归,也有白盒测试的回归。冒烟测试(smoke testing),是指对一个新版本进行系统大规模的测试之前先验证一下软件的基本功能是否实现,是否具备可测性。冒烟测试和回归测试往往结合起来使用:每当我们拿到一个新版本时,都首先进行冒烟测试,如果通过,则进行回归测试。随机测试(random testing),是指测试中所有的输入数据都是随机生成的,其目的是模拟用户的真实操作,并发现一些边缘性的错误。

四、软件测试技术
软件测试技术主要有两大类:静态测试技术和动态测试技术。
(一) 静态测试
静态测试是不执行程序代码而采用其他手段寻找文档和代码中可能存在的错误或评估程序代码的过程。静态测试可以手工进行,也可以借助软件工具自动进行。静态测试技术主要用于软件单元、部件的源代码、在狭义的测试概念范畴,静态测试技术主要包括桌面检查、代码审查、代码走查和静态分析。
1. 桌面检查
桌面检查通常是在程序通过编译之后,由人工模拟程序执行情况,逐步检查源代码清单、测试结果或其他文档,以发现其中有无逻辑或语法错误、对标准的违反或其他错误情况。
2. 代码审查
代码审查是通过对程序的可视检查,以发现软件错误、对开发标准的违反情况以及其他问题的一种有效地静态测试技术。IBM的统计数据显示,用代码审查发现的错误占全部查出错误的80%。
3. 代码走查
代码走查与代码审查有些相似,也是由一组程序和错误检查技术组成,只是所用的技术不同于代码审查。代码走查过程由准备、生成测试实例、会议走查、形成报告4个步骤组成。
桌面检查、代码审查和代码走查3种技术比较而言,后两种比第一种更能有效地发现软件错误。Myers研究发现,代码审查和代码走查平均查出全部错误的38%。而且与其他测试技术相比,代码审查和代码走查也有许多优点。例如,当发现错误时,代码审查和代码走查知道错误的性质和位置,不需要开发人员用大量的时间去寻找错误的位置。
4. 静态分析
    静态分析师一种对程序代码进行机械性、程序化的特性分析方法,一般包括控制流分析、数据流分析、接口分析、表达式分析。
(二) 动态测试
动态测试是在抽样测试数据上执行软件并分析输出以发现错误的过程。根据测试理论,如果抽样测试数据满足一定要求,那么测试可以发现软件中的大多数错误。
动态测试的优点是:通过实际运行被测软件,可获得软件运行的实际情况。但这也给动态测试提出了要求,即软件的运行需要实际运行环境、输入数据及输出处理,有时还需要有控制运行的手段。因此,动态测试的工作量很大。
动态测试需要测试数据,如何用少的测试数据发现尽可能多的软件错误是动态测试的关键,黑盒测试和白盒测试就是两类从不同方面设计测试数据的方法,灰盒测试是这二者的一种有效结合。
1. 白盒测试
白盒测试又称结构测试、逻辑测试或基于程序的测试,这种测试是对软件的内部结构和工作原理进行检查。常用的白盒测试技术有逻辑覆盖、数据流测试、基本路径测试、域测试、程序插装、符合求值、程序变异、弱程序变异。
2. 黑盒测试
黑盒测试又称功能测试、数据驱动测试或基于规格说明的测试。顾名思义,黑盒测试是把被测程序看成是内部不可见的黑盒子,测试人员完全不考虑程序内部逻辑结构和内部性,也不考虑程序中的语句及路径,只依靠软件的需求规格说明、设计文档或用户手册等相关资料,根据软件的功能及输入和输出关系设计测试用例,检查软件是否符合需求。常用的黑盒测试技术有:功能分解等价类划分法、边界值分析法、判定表法、因果图法、随机测试、猜错法、正交验证法、域测试、场景法、功能图法。
3. 灰盒测试
    灰盒测试是近年来提出的,它是介于黑盒测试和白盒测试之间的一种测试技术。灰盒测试结合了白盒测试和黑盒测试的要素,基于白盒方法分析软件结构的逻辑覆盖,基于黑盒方法生成满足覆盖条件的输入和输出组合的测试数据。在关注输出对于输入的正确性的同时,也关注了软件的内部结构。但它关注软件内部结构不像白盒测试那样详细和完整,它通过一些表征性的现象、事件、标志来判断软件内部的运行状态。
   
五、软件测试过程
(一) 测试策划阶段
在测试策划阶段,测试人员应对测试要求(例如合同、项目计划、任务书等)及被测软件进行分析,规划整个测试过程。策划的启动时间不应太晚,否则会影响到整个测试工作。同时软件开发方应尽早向测试方提供受控的、版本明确的被测软件(包括文档、程序和数据)。测试策划阶段的主要活动有12项,他们是确定测试目标、确定测试需求、确定测试技术和方法、确定充分性要求、确定终止要求、确定资源要求、确定测试通过准则、确定测试进度、风险分析、确定工作产品、编制文档、阶段评审。
(二) 测试设计和实现阶段
软件测试设计和实现阶段的工作由测试设计人员和测试程序员按照上一阶段制定的测试计划来实施。该阶段的主要活动有:设计测试用例、设计和获取测试数据、获取测试资源、开发测试程序、建立和校准测试环境、编制文档、评审。
其中设计测试用例的目的是告诉测试人员“怎样测”,它是软件测试核心,也是软件测试的难点。所谓测试用例就是在测试活动中为特定目的开发的一组测试输入、执行条件和期望结果。有效的测试用例能够覆盖用户的需求并发现软件中存在的错误,避免测试的盲目性,提高测试效率。测试用例的设计不仅需要采用适当的技术和方法,还要遵守一些规则,这样才能保证测试用例是有效地。这些原则有:基于测试需求原则、基于测试技术原则、可重复性、不要使单个测试用例覆盖过多的条件、明确测试期望结果。

随机推荐
计算机专业毕业设计报告(java)
浅谈用面向对象建模技术构建企业管理信息系统
Asp+Sql网上书店系统论文开题报告
浙江星奥消防工程有限公司客户管理系统开发与实现
电力系统通信技术建设电力通信网络管理系统
在线软件销售系统的设计与实现
高校科研工作量统计系统的开发与设计
库存优化管理信息系统
新世纪的软件产业与集成电路产业
某商城在线购物系统的开发

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

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