电子政务系统建设与实施讲座(9)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

电子政务系统建设与实施讲座毛才高倪春洋黎连业电子政务系统建设与实施讲座教材《电子政务系统建设与实施》第1版出版社(2007)第9讲:电子政务的系统测试在完成电子政务程序设计阶段工作后,建立的新系统经程序编码员测试,已初步奠定了基础,本章将进一步完成系统测试工作。我们都知道了解将要新投入运行的系统是否正确无误,这一点极其重要。所以在系统实施这前要施行系统测试。未经周密测试的系统贸然投入运行,将会造成难以想象的后果。尽管各个程序在设计完毕以后都一一作过调试,但能否发挥整个系统的功能尚不清楚。例如:某一程序运行与后续的程序运行是否矛盾?能否顺利连续?整个系统的总测试要等全部程序设计结束且能连续测试时才可进行。在本讲中您能了解如下主要知识点:•系统测试的目标与任务•系统测试方法;•系统测试过程;•系统单元测试;•系统集成测试;•系统测试文档资料。系统测试的目标与任务系统测试目标测试为软件工程师提供了一个既兴奋又担心的问题,兴奋的是将软件工程师们的抽象概念提出的构造软件,现在得以实现,并且到了测试阶段。担心的是,软件在测试过程会出现哪些问题?尤其是自己编制的那一部份会不会给整个系统带来影响?如果别人编的程序都没有问题,就是“我”编的程序出了问题,那又是多么的难看等等。其实系统测试不是针对哪一个人的,而是从整个系统出发,考查设计是否合理,任何一个人都不能把所有问题考虑得面面俱到,总是或多或少地发生差错。对系统而言,就不能有差错。所以测试是非常重要的。测试可以说就是“寻找错误”,特点是寻找不经常出现的错误。尽量把系统中隐藏着的错误消灭在调试期间,测试还要对系统的容错能力、操作错误进行测试。通过测试要达到这样的一个目的,寻找问题,发现问题,纠正错误,提高系统技术能力,使系统早日投入运行。系统测试任务系统测试阶段有几方面的任务:•制定测试大纲;•制作测试数据;•程序测试;•功能测试;•子系统测试;•系统测试;•系统接口测试:•写出测试报告书:•向下阶段工作提交系统运行、维护手册的草案。制定测试大纲测试大纲是测试工作的依据,主要有:•检查每个模块在程序设计中是否已测试过,测试的数据和输出结果是否正确?•检查每个子系统和功能在程序设计中是否已测试过,测试的数据和输出结果是否正确?•检查上一阶段交来的工作文档是否齐全?•确定本阶段测试目标。•制定本阶段测试内容。•编写向下阶段工作提交的文档资料。制作测试数据数据制作好坏,直接影响系统测试的结果,制作测试数据时应注意:•由用户和程序管理组的人员制作,程序编码人员不应介入。•要尽可能多的提供数据,供检测。尤其是交接口数据。提供的数据应分三类:.没错误的数据,以检查功能实现。.各种各机关报错误数据,以检查程序对错误数据处理能力。.提供程序与程序交接口数据(正确的、不正确的),以检查交接口情况。系统测试方法系统的测试方法有两种,即用试题检查和用新旧两个系统作平行处理检查。•用试题检查法此方法是先建立输入数据的模型,并事先用手工求得其预计输出,然后送入模型,与新系统所得结果进行核对,进行测试。这种场合,模型数据通常利用实际上已发生的数据,但有时也可能另外编制大量测试专用数据。用试题测试的方法在小规模系统中较易实现而在大规模系统中,要用这各方法检查所有程序的全部变化很为困难,有时几乎是不可能的,在这种情况下,不能一下子完成所有的运行测试,而要用划分得较细的输入模型,按各个子系统进行测试,尤其是要设法分成三种处理,即基本特殊处理和出错处理,作出相应于各个流程的数据模型。其中,基本处理最好是始终连贯地进行测试。试题要作各种改变,直至取得满意的结果。用新旧两个系统作平行处理检查这一步检查是系统最后的测试,此阶段一结束,就进入系统的全面实施。不论旧系统是手工作业还是计算机处理,本方法都通过旧系统的处理结果与新系统的结果相比较进行检查。这种平均处理的时间视业务内容而定,短则2—3个月,长则半年至一年。它不仅可防止向新系统转换时产生混乱,也可以作为测试新系统可靠性的考机时间。在此期间,不只限于计算机范围的检查,还应检查手工作业和人的因素方面的问题,改正不合理的部分。•在讨论新旧两系统所得到的结果时,要明确新旧系统的不同点。当结果不一致时,不能武断地认为总是新系统出错,还必须考虑是否旧系统的错误。对试题平行处理所得结果的检查应重视以下各项:请参见出版社《电子政务系统建设与实施》(2007.)第1版的第9章图9-1•输入数据要注意新旧两系统中所用数据是否通用,做过部分修订的数据在修订处是否正确。特别是新开始用计算机处理的系统,数据的项目与旧的手工作业相比通常变化较大,所以要应对代码的内容和添加、修订及删除的项目作充分的检查。新系统中所用的所有数据应是事先校验过的正确数据。•程序尽管输入数据是正确的,但如果处理数据的程序有错,仍是徒劳。因此要查看程序是否正确地满足程序说明书中所说的所有条件。此时,若分为区域、常数、输入处理、基本处理、输出处理及特殊处理后进行检查,可迅速而正确地完成任务。•程序说明书程序说明书的内容是程序设计的依据,所以必须正确完整。尤其是因机种更替而变更系统时,可作出添加、修订和删除一览表,写明旧系统程序说明书和新系统程序说明书的处理条件、处理内容、代码及项目等等,突出两者的不同之处。此外,也可考虑用两个程序进行测试的方法。由两组程序员对同一处理分别编制完全相同的程序,然后核对两者结果。此法主要用于测试象技术计算之类程序中找不到可比较结果的新程序。不过若两个程序的结果一致,固然可知正确,若结果不一致,就不能判断何者正确,因为缺乏基准。这种方法的费用也高,不能算是一种好的方法,但对于没有其它测试方法的业务来说,或许也只能如此。由于测试技术的发展,出现了多种测试,如自项向下地测试,自底向上整体测试,整体测试方法有黑箱测试法、白箱测试法等。我们在系统测试中所使用的方法,都兼而有之,希望读者能给予评价。系统测试过程系统的一般测试过程用图9-2表示。请参见出版社《电子政务系统建设与实施》(2007.)第1版的第9章图9-2系统测试实际上是顺序实现四个步骤的序列。最初,测试集中在每个单独的模块,保证它作为一个单元测试。其次,必须将模块加以集中或装配,形成一个完整的功能,整体测试有检验和组装这两重含义。最后必须测试有效性要求。有效性测试最终保证软件符合所有功能上和性能上的要求。最后一个系统测试检验所有元素配合是否合理以及整个系统的性能和功能是否达到。请参见出版社《电子政务系统建设与实施》(2007.)第1版的第9章图9-3系统测试实际上是顺序实现四个步骤的序列。最初,测试集中在每个单独的模块,保证它作为一个单元测试。其次,必须将模块加以集中或装配,形成一个完整的功能,整体测试有检验和组装这两重含义。最后必须测试有效性要求。有效性测试最终保证软件符合所有功能上和性能上的要求。最后一个系统测试检验所有元素配合是否合理以及整个系统的性能和功能是否达到。系统单元测试•程序测试程序测试集中力量来检验软件设计的最小单位—模块。以程序设计说明书为指导,我们测试模块范围内的重要控制路径,以揭露错误。测试的相对复杂性和所发现的错误受到单元测试所限定的范围的限制。当程序编好以后,将它录制在媒体上(卡片或软盘),或者直接由终端键盘输入到中央机进行调试。程序调试是对每个程序的单体调试。主要有以下几步:•程序语法检查;•程序逻辑检查。在程序的逻辑检查之前,首先需要制作测试数据;即假设一些输入数据和文件数据。测试数据直接影响了程序的调试工作,所以制作的数据应该满足以下几个条件:•数据应能满足设计上要求的上下限及循环次数;•数据应满足程序中的各种检验要求的错误数据;•数据应能适宜于人工对程序的检查工作。测试数据的内容包含4个方面:•正常的数据•不同的数据•错误的数据•大量的数据通过以上不同角度的数据检验,证明程序逻辑是对的,程序的调试也就结束了。在程序测试期,评价模块的五个主要特性是:•模块接口•局部数据结构•“重要”的执行路径•错误处理路径•影响上述几点的界限条件在其它任何测试开始之前,需要测试横穿模块接口的数据流。如果数据不是正确地进入和退出,其它的测试就谈不上。在程序测试中接口测试的清单如下:⑴输入参数的数目是否等于变元的数目⑵参数与变元的属性是否匹配⑶参数与变元的单位是否匹配⑷传送给被调用模块的变元数是否等于参数的项目⑸传送给被调用模块的变元属性是否同参数属性一致⑹传送给被调用模块的变元单位是否同参数的单位一致⑺属于内部的函数属性数目及变元次序是否正确⑻对参数的任何访问是否与当前的入口点无关⑼输入是否改动变元⑽跨模块的全程量定义是否相容⑾限制是否作为变元来传送⑿参数是否被重复定义程序测试通常附属于编码步骤来考虑。在开发、复审了源代码并检查了语法正确性之后开发设计单元测试的情况。设计信息量复审为建立测试情况提供了指导,使得测试情况有可能发现上面讨论的各类错误。每个测试情况应有一组预期的结果。由于模块不是一个独立的程序,必须为每个模块测试开发驱动软件和承接软件,在大多数应用中,驱动软件和“主程序”并无区别。客观存在接受测试情况的数据,将这些数据送给模块,并打印有关的结果。承接软件代替被测模块下属模块。承接软件使用下属模块的接口,可以作最少量的数据处理,打印入口检查信息,并将控制返回给它的上级模块。驱动软件和承接软件代表开销。它们都是要书写的软件,但却不是与最后的软件产品一起支付的。当模块设计成高内聚时,单元测试就简化了。当一个模块只描述一个功能时,测试情况的数量就会减少,就可能会更容易地预计和发现错误。程序测试实际上是为了发现错误而执行的程序的,但测试不能发现所有的错误,即使是最彻底的切实可行的检测方法,也只能查出程序所存在的错误的一部分,其余的错误在实际使用过程中才能逐渐发现。因为要检查每一种可能的情况,检测的数目是相当大,实际上不可能实现的,另一方面,一个软件的许多问题是无法通过输入来进行检查的,而是需要使用一些特殊的检测方法。程序测试之后,还需要对每个程序作一份程序测试说明书,以备系统今后修改维护。程序测试说明书的主要内容是:•说明程序测试数据制作的方法•测试方法•测试过程中所产生的问题•其格式请参见出版社《电子政务系统建设与实施》(2007.)第1版的第9章表9-1功能测试在单个程序测试成功的基础上,进行各功能测试。功能测试是综合的测试,因为若干个程序组成一个功能,所以功能测试是将功能内所有程序按处理流程图的次序串联起来进行的综合测试。请参见出版社《电子政务系统建设与实施》(2007.)第1版的第9章图9-4。图9-4中功能处理流程图有4个处理符号,每个处理符号代表着一个程序,其中输入变换和分类处理若计算机系统本身已具有服务程序的话,则此两处理程序可以调用服务程序,因此这个功能需要编写更新和制表两个程序。所谓功能测试即从处理流程输入开始,直至最后执行打印程序为止,如果没有逻辑问题就说明测试成功,此功能符合设计要求。测试工作由程序员担当,测试的结果交系统设计人员审核通过。在各个功能测试成功的基础上,进行各个子系统的测试。每个子系统是由若干个功能所组成的,子系统设计成功与否,不仅决定于每个功能测试成功与否,还决定了按信息传递先后次序串联起来的功能测试成功与否。因此,子系统的测试是一种连接的测试。子系统测试由于范围大、信息多、联系广,所以测试之前必需要做好充分的准备工作。它们是:•作好功能联系图•对于子系统范围内所有功能,它们之间的相互关系要充分了解,把各功能通过接口文件相互联系起来,绘成功能联系图。请参见出版社《电子政务系统建设与实施》(2007.)第1版的第9章图9-5作好处理联系图对于子系统范围内所有的功能,它们的处理先后次序必需作好安排,以免处理时衔接不上。把各功能按处理上要求的时间先后绘成处理联系图。请参见出版社《电子政务系统建设与实施》(2007.)第1版的第9章图9-6作好作业联系图子系统范围内的所有功能可以分成若干个作业,每个作业由若干个程序所组成,作业是上机执行单位,为了掌握作业执行的先后次序,要按作业为单位,并相

1 / 76
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功