软件测试技术整体概述

来源:软件水平考试    发布时间:2012-11-05    软件水平考试视频    评论

  1、软件测试概述与必要性

  软件是由人来完成的,所有由人做的工作都不会是完美无缺的。问题在于应该如何去避免错误的产生和消除已经产生的错误,使程序中的错误密度达到尽可能低的程度。

  随着软件规模的增大,软件的复杂程度也越来越大,与其他系统的接口不断增多应用越来越广泛,集成度越来越高,这使得没有现代软件开发经验的人很难理解它。为了尽可能地减少错误,软件测试这一环节必须得到重视。

  中国软件外包市场巨大,国内软件外包服务多属于为客户提供技术和质量服务的中间环节。以占中国软件外包总量近85%的对日软件外包来说,业务内容基本都针对测试环节。这就要求我们加强对软件测试的重视。

  质量不佳的软件产品不仅会使开发商的维护费用和用户的使用成本大幅增加,还可能产生其他的责任风险,在一些关键应用,如民航订票系统、银行结算系统、证券交易系统等中使用质量有问题的软件,还可能造成灾难性的后果。这使得软件测试环节显得尤为重要。

  2、软件测试技术分析

  2.1 软件测试的概念

  软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一组测试数据,并利用这些测试数据运行程序,以发现程序错误的过程。根据测试数据设计方法,软件测试可分为结构测试和功能测试。在结构测试过程中,测试者对程序的语句、分支和逻辑路径进行各种覆盖测试,可以在不同点检查程序的状态,以确定实际状态与预期状态是否一致。软件测试的目的是发现错误,而不是确认其正确性,而对已进行的测试过程的程度进行评估。

  2.2 软件测试的目的

  软件测试的目的是为了保证软件产品的最终质量,在软件开发的过程中,对软件产品进行质量控制。一般来说软件测试应由独立的产品评测中心负责,严格按照软件测试流程,制定测试计划、测试方案、测试规范,实施测试,对测试记录进行分析,并根据回归测试情况撰写测试报告。测试是为了证明程序有错,而不能保证程序没有错误。

  2.3 软件测试的方法和过程

  软件测试的种类可以分为人工测试和基于计算机的测试。而基于计算机的测试又可以分为白盒测试和黑盒测试。原则上讲,软件测试分为静态测试和动态测试两类。静态测试包括代码审查和静态分析,动态测试包括白盒测试和黑盒测试。[2]

  测试虽然是软件生存周期的一个独立阶段,但测试工作却渗透到从分析、设计直到编程的各个阶段中,如测试计划的编写从分析和设计阶段就开始了,而具体的测试工作随编程工作的不断深入也在进行中。在实际工作中,测试环节可分为明显的、同等重要的三个阶段:即单元测试、集成测试(又称构件测试)和系统测试。

  2.3.1 单元测试

  软件单元定义了一个软件很底层的块,用PB开发的客户机/服务器的软件系统中,一个窗口、函数、菜单、报表或一个存储过程都可以作为一个单元进行测试。单元测试是测试的第一步。由开发者自己进行测试最合适,一般采用白盒测试。

  2.3.2 集成测试

  在将所有的单元经过测试以后,接着进行集成测试。集成测试也称综合测试,即将已分别通过测试的单元按要求组合起来再进行的测试,以检查这些单元之间的接口是否存在问题。要求参与的人熟悉单元的内部细节,又要求他们能够从足够高的层次上观察整个系统。集成测试阶段是以黑盒法为主,在自底向上集成的早期,白盒法测试占一定的比例,随着集成测试的不断深入,这种比例在测试过程中将越来越少,渐渐地,黑盒法测试占据主导地位。

上一页12下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答