第10章 程序的调试与测试.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 程序的调试与测试

第10章 程序的调试与测试 通过前面各章节的学习,此时应该已经能够编写具有一定功能的COBOL小程序了。在程序开发的过程中以及开发结束后,必然会涉及到对程序的调试与测试。实际上,在整个软件生存周期中,对于软件的后期维护工作通常占到80%以上。而软件后期维护工作主要是建立在程序的调试与测试的基础之上的。因此,本章所讲解的内容十分重要。 10.1 调试与测试的基本概念 程序的调试与测试实际上是两个不同的概念。调试有时也叫Debug,主要是针对程序源代码的查错与排错;而测试则通常被称作Test,主要是用于对软件产品性能的分析。下面分别对二者的基本概念进行具体的介绍。 10.1.1 调试的基本概念 程序的调试实际上属于程序开发的一部分。并且,一个人Debug能力的大小通常也反映了其开发能力的大小。程序的调试主要是指在开发过程中,以及开发完成后对程序源代码的查错与排错。调试程序的目的是为了确定和修复造成程序不良功能的原因,主要是为了保证程序的正确性。在程序的编写之中,任何人都难免会造成这样或那样的错误,此时便需要不断地对程序进行调试。例如,下面为一段COBOL中的小程序。 IDENTIFICATION DIVISION. PROGRAM-ID. ERROR-PROG. AUTHER. XXX. * ENVIRONMENT DIVISION. * DATA DIVISION. 01 OUTPUT-DATA PIC X(20). * PROCEDURE DIVISION. 100-INIT-STATE. MOVE ‘hello world’ TO OUTPUT-DATA. 200-OUTPUT-SATE /*此处的句点没有标注,错误*/ DISPLAY OUTPUT-DATA.   STOP RUN. 在编码中因处理过程或语句的句点没有标注而造成程序不能正确编译是时有发生的。此时必须要对程序进行调试。此外,有时程序虽然能够被编译运行,但却得不到所期望的运行结果。这时也需要对程序进行调试。实际上,前一个例子中所出现的错误属于语法错误,而此处则属于逻辑错误。关于程序调试中所需处理的错误类型,以及常用的调试方法,将在后面的章节中详细讲解。 10.1.2 测试的基本概念 程序的测试和程序开发是两个独立的概念。实际上,程序的测试和程序的开发是两种不同的工作性质。然而,二者同时又是紧密相连的,在具体工作中需要经常联系和配合。 测试主要是针对由程序所形成的软件产品的性能而言的。用于进行测试的程序,都应该是通过调试之后,可以运行的程序。测试是在完成初期开发之后进行的,主要用于检测软件产品质量是否符合客户的要求。 此外,测试也应该包括对程序算法设计质量的检测。通常而言,一个好的算法应该考虑达到以下4个目标。 正确性:此处所说的正确性不仅是指程序能够对于一组特定的输入数据得出正确的结果。而是通常指程序对于精心选择的典型、苛刻而带有刁难性的几组输入数据也能得出正确的结果。 可读性:可读性好坏主要是指其逻辑结构是否清晰,代码注释是否到位等等。一段可读性好的代码是利于其后期的维护以及基于此的二次开发。 健壮性:健壮性是指当输入数据非法时,算法也能适当地做出反应或进行处理。而不至于产生莫名其妙的输出结果。 效率与低存储量需求:效率是指算法的执行时间,执行时间越短,效率越高。存储量需求指的是算法在执行过程中所需要的最大存储空间。对于实现同样功能的算法,通常存储量需求越低,该算法越好。 例如,下面为一段求两个数之和的程序。其中一个数字由程序所给定,另一个数字通过用户从键盘输入。该段程序完整的代码如下。 IDENTIFICATION DIVISION. PROGRAM-ID. SUM-PROG-ONE. AUTHER. XXX. * ENVIRONMENT DIVISION. * DATA DIVISION. WORKING STORAGE SECTION. 01 NUM1 PIC 99. 01 NUM2 PIC 99. 01 SUM PIC 999. * PROCEDURE DIVISION. MOVE 20 TO NUM1. ACCEPT NUM2. ADD NUM1 TO NUM2 GIVING SUM. DISPLAY ‘THE SUM IS:’ SUM.   STOP RUN. 该段程序在输入正确数据的前提下是可以正常执行的。但是,假若此处用户输入数据非法时,程序将会产生莫名其

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档