软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件测试技术>>其他相关>>正文
软件测试是提高软件产品质量的必要条件(1)
文章出处: 作者:李理 发布时间:2006-10-26

对于一个成熟的软件产业来说,软件产品的质量至观重要。人们设定软件产品的质量目标就是要找到用户的质量需求与这些质量特性的相关性,并将其转化为开发过程中可度量的技术指标或能力指标,作为质量控制的依据。

随着社会上软件产品应用的日益普及,市场对软件产品质量的要求会不断提高,致使软件测试的地位变得越来越来重要了。软件质量是指软件产品中能满足给定需求的各种特性的总和。这些特性称做质量特性,ISO/IEC 9126中规定了软件的6个质量特性(如图1所示),即功能性(functionality)、可靠性(reliability)、易用性(usability)、效率(efficiency)、维护性(maintainability)和可移植性(portability),每个特性包含若干子特性。人们设定产品的质量目标就是要找到用户的质量需求与这些质量特性的相关性,并将其转化为开发过程中可度量的技术指标或能力指标,作为质量控制的依据。

图1 ISO/IEC 9126的质量模型

不容忽视的软件测试

软件测试是从大量的测试用例中选择有限的测试用例,发现软件中的大部分缺陷的一种技术。它是目前用来验证软件是否能够完成所期望的功能的唯一有效方法。软件测试通常要在不同层次上执行,大体上划分为三大阶段:单元测试、集成测试、系统测试。

单元测试 用于验独立软件模块的功能与《详细设计说明书》的符合程度。软件模块可以是独立子程序,也可以是由紧密相关的数个单元组成的较大构件。单元测试一般需要对被测代码进行访问和借助测试工具的支持,并且可能需要被测代码编程人员的介入。

集成测试 在单元测试的基础上,检验系统各模块间的交互性与《概要设计说明书》的符合程度。通常采用自顶向下(需要提供桩模块)或自底向上(不需要提供桩模块)的集成方法,用于传统的、分级的结构化软件系统。现代的集成测试策略更多是结构驱动的,这意味着对软件模块或子系统的集成是基于确定的功能线程,因此集成测试是一个连续活动,在每一阶段测试人员必须抽象出低一级的情况并集中于正在处理的这一级的状况。

系统测试 检验整个系统是否满足《需求规格说明书》所提出的所有需求。它需要将系统与非功能性系统需求进行比较,非功能性系统需求指系统的安全性、速率、精确性、可靠性等。系统与其它软件、应用程序、硬件设备或操作环境的外部接口评估也在系统测试中进行。系统测试的类别有:功能测试;性能测试(包括负载测试、压力测试等);外部接口测试;人机界面测试;安全性测试;可靠性测试(包括强度测试、恢复测试等)。

作好测试工作,首先可以验证软件是否满足软件科研任务书、需求规格说明书和软件设计所规定的技术要求;其次,通过测试,人们可以尽早发现软件缺陷,并确保其得以修复;最后,完善的测试为软件可靠性与安全性评估提供了重要依据。


站内搜索
相关文章
◎软件测试:不可忽略的阶段
◎自动化测试的优缺点
◎实施IPD
◎软件项目中测试人员的考核
◎走出软件测试的困境
◎加快回归测试的步伐:累积测试分析和目标测试入门
◎《软件测试艺术》读书笔记(10)_人工测试技术
◎《软件测试艺术》读书笔记(9)_原则解析
◎《软件测试艺术》读书笔记(8)_经济学视角解析
◎《软件测试艺术》读书笔记(7)_心理学视角解析(下)
◎《软件测试艺术》读书笔记(6)_心理学视角解析(中)
◎《软件测试艺术》读书笔记(5)_心理学视角解析(上)
◎如何准备软件工程师的面试
◎《软件测试艺术》读书笔记(4)_初次探究
◎测试职业发展生涯
◎《软件测试艺术》读书笔记(3)_一次自我检测
◎《软件测试艺术》读书笔记(2)_前言
◎《软件测试艺术》读书笔记(1)_引子
◎软件测试的艺术
◎有感于软件测试常识
◎软件测试工程师为何而生?
◎软件测试常见问题——(三)测试流程常见问题
◎软件测试常见问题——(二)测试管理常见问题
◎软件测试常见问题——(一)基础知识部分
◎从程序员到技术领导者
◎面向对象的软件测试与传统测试的比较
◎测试部门经理工作感受(三)
◎测试部门经理工作感受(二)
◎测试部门经理工作感受(一)
◎关于测试的个人总结
◎从微软的今天看软件测试的明天
◎软件测试职业规划(一)
◎用别的眼光去感悟软件测试
◎软件测试与三十六计
◎C++TEST所支持的平台
◎软件测试的前途(一)
◎何时应进行自动化测试?4(原创文章【翻译】)
◎软件测试自动化神话和事实
◎何时应进行自动化测试?3(原创文章【翻译】)
◎给事业刚起步者的九个忠告
◎嵌入式软件测试的十大秘诀
◎何时应进行自动化测试?2(原创文章【翻译】)
◎详解如何选择软件测试职业培训机构
◎何时应进行自动化测试?1(原创文章【翻译】)
◎基于模块化设计的嵌入式软件测试方法
◎基于PB环境下的软件测试
◎用Visual Basic 6.0实现自动化测试
◎主流软件测试工具介绍
◎软件测试人员提高测试效率与测试质量的六大非技术措施
◎新人如何开始QA/测试生涯
热门文章
◎软件测试工程师面试问题选登
◎一个初级测试工程师的工作总结
◎软件测试常用术语表
◎测试人员面试三步曲
◎DOS命令大全
◎什么样的测试人员是好的测试人员
◎软件测试基本方法
◎好的测试工程师应具备的素质
◎软件测试入门书籍(2)
◎我在软件公司成长的三年
◎面试官最爱问的问题背后真相
◎软件测试工程师面试题
◎应届毕业生少走弯路的十条忠告
◎有关软件测试的术语定义集锦
◎微软的软件测试方法(一)
◎我的测试经历(1)
◎全景记录:软件测试工程师的一天
◎软件测试步骤
◎谈谈对测试职业的看法
◎漫谈软件测试工程师的角色定位
◎测试需要掌握什么
◎软件测试员自身素质培养
◎测试小技巧集锦之一黑盒测试
◎近10年最强的50本计算机图书,您读过几本?
◎软件测试人员职业发展助手
◎测试要点总结
◎如何制定成功的测试计划
◎测试的主要评测方法(1)
◎什么是ERP,通俗版解释
◎测试经验交流
◎软件测试及其支持工具
◎编写优秀Bug报告的艺术
◎软件产品测试标准
◎从程序员到测试工程师
◎微软的软件测试方法(二)
◎软件测试应遵循的八条原则
◎测试版本大全
◎我的测试经历(2)
◎测试人员的挑战
◎网管和黑客都必须知道的命令
◎QA活动的理解与实施
◎Alpha和Beta测试简介
◎网络最经典命令行
◎想编写出优秀技术文档,先学学这四招
◎个人职业生涯规划发展
◎你适合做测试吗?
◎软件测试的误区
◎我的测试经历(3)
◎软件测试的心理学问题
◎软件测试组织与方法

Google提供的广告