软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件测试技术>>用例设计>>正文
系统测试设计的层次
文章出处:TestWin Team 作者:SpiderMan(ShenZhen) 发布时间:2006-01-13
   随着国内软件行业的不断发展,国内软件公司也越来越注重于软件的质量,越来越关注软件的可靠性,因此,做为质量保证的重要手段,软件测试过程的实施与管理成为一个热点,其中系统测试是整个测试活动的一个重要的阶段,系统测试的设计也就成为了关注点之一。以下是本人从事系统测试工作中的一些体会。

1、系统测试的定义:
   系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不相符合或与之矛盾的地方。

 

2、系统测试的对象:
  系统测试的对象不仅仅包括需要测试的产品系统的软件,还要包含软件所依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。因此,必须将系统中的软件与各种依赖的资源结合起来,在系统实际运行环境下来进行测试。

 

3、系统测试的设计
   系统测试过程包含了测试计划、测试设计、测试实施、测试执行、测试评估这几个阶段,而整个测试过程中的测试依据主要是产品系统的需求规格说明书、各种规范、标准和协议等。在整个测试过程中,首先需要对需求规格进行充分的分析,分解出各种类型的需求(功能性需求、性能要求、其他需求等),在此基础之上才可以开始测试设计工作,而测试设计又是整个测试过程中非常重要的一个环节,测试设计的输出结果是测试执行活动依赖的执行标准,测试设计的充分性决定了整个系统过程的测试质量。因此,为了保证系统测试质量,必须在测试设计阶段就对系统进行严密的测试设计。这就需要我们在测试设计中,从多方面来综合考虑系统规格的实现情况。通常需要从以下几个层次来进行设计:用户层、应用层、功能层、子系统层、协议层

3.1、用户层:
     主要是面向产品最终的使用操作者的测试。这里重点突出的是在操作者角度上,测试系统对用户支持的情况,用户界面的规范性、友好性、可操作性,以及数据的安全性。主要包括:
3.1.1、用户支持测试
     用户手册、使用帮助、支持客户的其他产品技术手册是否正确、是否易于理解、是否人性化。
3.1.2、用户界面测试
     在确保用户界面能够通过测试对象控件或入口得到相应访问的情况下,测试用户界面的风格是否满足用户要求,例如:界面是否美观、界面是否直观、操作是否友好、是否人性化、易操作性是否较好。
3.1.3、可维护性测试
    可维护性是系统软、硬件实施和维护功能的方便性。目的是降低维护功能对系统正常运行带来的影响。例如:对支持远程维护系统的功能或工具的测试。
3.1.4、安全性测试
    这里的安全性主要包括了两部分:数据的安全性和操作的安全性。核实只有规格规定的数据才可以访问系统,其他不符合规格的数据不能够访问系统;核实只有规格规定的操作权限才可以访问系统,其他不符合规格的操作权限不能够访问系统;

 

3.2、应用层:
     针对产品工程应用或行业应用的测试。重点站在系统应用的角度,模拟实际应用环境,对系统的兼容性、可靠性、性能等进行的测试。
3.2.1、系统性能测试
     针对整个系统的测试,包含并发性能测试、负载测试、压力测试、强度测试、破坏性测试。并发性能测试是评估系统交易或业务在渐增式并发情况下处理瓶颈以及能够接收业务的性能过程;强度测试是在资源情况低的情况下,找出因资源不足或资源争用而导致的错误;破坏性测试重点关注超出系统正常负荷N倍情况下,错误出现状态和出现比率以及错误的恢复能力。
3.2.2、系统可靠性、稳定性测试
     一定负荷的长期使用环境下,系统可靠性、稳定性。
3.2.3、系统兼容性测试
     系统中软件与各种硬件设备兼容性,与操作系统兼容性、与支撑软件的兼容性。
3.2.4、系统组网测试
     组网环境下,系统软件对接入设备的支持情况。包括功能实现及群集性能。
3.2.5、系统安装升级测试
     安装测试的目的是确保该软件在正常和异常的不同情况下进行安装时都能按预期目标来处理。例如,正常情况下,第一次安装或升级、完整的或自定义的安装都能进行安装。异常情况包括磁盘空间不足、缺少目录创建权限等。还有一个目的是核实软件在安装后可立即正常运行。另外对安装手册、安装脚本等也需要关注。

 

3.3、功能层
     针对产品具体功能实现的测试。
3.3.1、业务功能的覆盖
     关注需求规格定义的功能系统是否都已实现。
3.3.2、业务功能的分解
     通过对系统进行黑盒分析,分解测试项及每个测试项关注的测试类型。
3.3.3、业务功能的组合
     主要关注相关联的功能项的组合功能的实现情况。
3.3.4、业务功能的冲突
     业务功能间存在的功能冲突情况。比如:共享资源访问等。

 

3.4、子系统层
     针对产品内部结构性能的测试。关注子系统内部的性能,模块间接口的瓶颈。
3.4.1、单个子系统的性能
     应用层关注的是整个系统各种软、硬件、接口配合情况下的整体性能,这里关注单个系统。 3.4.2、子系统间的接口瓶颈
     例如:子系统间通讯请求包的并发瓶颈。
3.4.3、子系统间的相互影响
     子系统的工作状态变化对其他子系统的影响。

 

3.5、协议/指标层
     针对系统支持的协议、指标的测试。
3.5.1、协议一致性测试
3.5.2、协议互通测试


站内搜索
相关文章
◎快速划分测试用例的优先级
◎为什么测试全覆盖很难?
◎边界值法
◎如何写性能测试用例
◎安装测试指南
◎强化测试用例在测试活动中的作用
◎高手过招的乐趣---测试用例预演
◎构件可测试性挑战
◎软件测试入门书籍
◎一个基于UML协作图的集成测试用例生成方法(三)
◎一个基于UML协作图的集成测试用例生成方法(二)
◎一个基于UML协作图的集成测试用例生成方法(一)
◎细说软件测试错误
◎测试用例设计的误区
热门文章
◎软件测试入门书籍
◎黑盒测试的测试用例设计方法
◎用例建模指南
◎如何写性能测试用例
◎测试用例设计的误区
◎高手过招的乐趣---测试用例预演
◎用路径分析的方法编写测试用例
◎一个基于UML协作图的集成测试用例生成方法(一)
◎边界值法
◎细说软件测试错误
◎谈谈关于测试覆盖
◎界面测试
◎软件测试用例的认识误区
◎测试用例的有效维护
◎如何设计编制软件测试用例
◎功能测试用例的书写方式(适于新手学习)
◎快速划分测试用例的优先级
◎通用设计的原则
◎强化测试用例在测试活动中的作用
◎使用组合改进软件测试用例的生成
◎安装测试指南
◎设计功能和界面测试用例一
◎一个基于UML协作图的集成测试用例生成方法(三)
◎为什么测试全覆盖很难?
◎前期测试用例编写规范和流程
◎构件可测试性挑战
◎一个基于UML协作图的集成测试用例生成方法(二)
◎设计功能和界面测试用例二
◎掌握可用性规则
◎黑盒测试之边界值分析、错误猜测-《软件测试艺术》读书笔记(19)
◎黑盒测试之因果图分析-《软件测试艺术》读书笔记(20)
◎测试用例容易遗漏的内容
◎黑盒测试之等价类划分-《软件测试艺术》读书笔记(18)
◎JUnit in java 真正的测试用例实战
◎覆盖率测试用例设计
◎白盒测试-《软件测试艺术》读书笔记(17)
◎测试用例设计自动化
◎浅谈测试用例-《软件测试艺术》读书笔记(16)
◎从测试用例看测试的问题及变化
◎测试用例具体用法
◎界面测试经验总结
◎测试用例的复审
◎测试用例具体用法续
◎测试驱动开发全攻略

Google提供的广告