关于对软件测试的学习理解概述(二)
来源:广州中睿信息技术有限公司
发布时间:2012/10/21 23:25:16 编辑:itlead 阅读 1392

   软件测试的分类

 

  一、 常用分类
    1.从是否需要执行被测软件的角度,可分为:

  --静态测试
    --动态测试

  2.从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为 :

  --白盒测试
    --黑盒测试

 

  二、黑盒测试和白盒测试

  黑盒测试:
    指的是把被测软件看作是一个黑盒子,我们不去关心盒子里面的结构是什么样子,只关心软件的输入数据和输出结果。

  黑盒测试方法是在程序接口上进行测试,主要是为了发现以下错误:

  • 是否有不正确或遗漏了的功能?
    • 在接口上,输入能否正确地接受? 能否输出正确的结果?
    • 是否有数据结构错误或外部信息(例如数据文件)访问错误?
    • 性能上是否能够满足要求?
    • 是否有初始化或终止性错误?

  黑盒测试的测试用例设计

  •等价划分法
    •边界值法
    •错误推测法
    •因果图法

  白盒测试:

  白盒测试的主要方法:

  1.基本路径测试
    2.逻辑驱动测试:

  •语句覆盖
    •判断覆盖
    •条件覆盖
    •判定-条件覆盖
    •条件组合覆盖
    •路径覆盖

  白盒测试的主要目的:

  1、保证一个模块中的所有独立路径至少被执行一次;
    2、对所有的逻辑值均需要测试真假两个分支;
    3、在上下边界及可操作范围内运行的所有循环;
    4、检查内部数据结构以确保其有效性

  静态测试

  是指不实际运行被测软件,而只是静态的检查程序代码、界面或文档中可能存在的错误的过程。
    其中包括代码测试、界面测试和文档测试3个方面。对于代码测试,主要测试代码是否符合相应的标准和规范。对于界面测试,主要测试软件的实际界面与需求中的说明是否相符。对于文档测试,主要测试用户手册和需求说明是否符合用户的实际要求。

  动态测试

  是指实际运行被测程序,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程。所以,我们判断一个测试属于动态还是静态测试 ,唯一的标准就是看是否运行程序。其主要包含以下两种测试:

  1、单元测试
    是指对软件中的最小可测试单元进行检测和验证。

  (1)什么时候进行单元测试?
    通常在程序员编码以后,代码已经通过编译后进行单元测试,而且在前期就应该做一些准备工作,比如撰写单元测试计划、编写单元测试用例等。千万不要等到项目后期再进行单元测试,那样就失去了检查代码、预防缺陷的意义了。

  (2)由谁来进行单元测试?
    单元测试一般由白盒测试工程师或开发人员来测试。如果由开发人员来测试,最好做到交叉测试,避免1个人只测试自己的代码。

  (3)单元测试的依据是什么?
    单元测试依据主要有两个,一个事源程序本身,包括代码和注释;还有一个是项目的《详细设计》文档。

  (4)如何进行单元测试?
    主要用白盒测试方法,一般先静态检查代码是否符合规范,然后动态地运行代码,检查其实际运行结果。当然检查运行结果是否正确是一个最基本的要求,我们还要检查很多项,比如程序的容错处理,程序的边界值处理等。

  三、集成测试

  集成测试(也叫组装测试或联合测试)是在单元测试的基础上,将所有模块按照设计要求集成为系统或子系统,并进行测试。如果是集成为子系统,也可以叫做部件测试。

  目的

  当单个模块集成为系统的过程中,软件仍然可能出现问题。比如:
    •穿越模块接口的数据是否丢失;
    •一个模块功能的实现可能破坏了另一个模块的功能;
    •子功能组合之后不一定可以达到预期的功能;
    •全局数据可能被异常修改;
    •单个模块的误差被放大到了不能接受的地步。

  软件测试的过程

  软件测试一般依照下面的过程进行系统测试:
    单元测试->集成测试->确认测试->系统测试->验收测试

  对软件测试的感想

  经过这一门课程的学习和这么长时间的工作经历,意识到测试并非是我想像的从客户角度任意使用软件产品,从而发现有无质量问题,它有它的理论和实践体系。软件测试是一项严谨的工作,软件测试员一个基本的素质是打破砂锅问到底。喜欢找出那些深藏不露的系统冲突,乐于处理最复杂的问题,外表上热衷于来回奔忙,追求尽善尽美,为征服系统而尽自己最大努力,另外,软件测试需要各个测试员之间的默契完美的配合,只有团队的力量凝聚起来才能测试出软件的不足,这样才能完善的改正软件的错误,以此达到软件系统的完美。

 

本站技术原创栏目文章均为中睿原创或编译,转载请注明:文章来自中睿,本站保留追究责任的权利。