- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章系统测试、实施与维护
第6章 系统测试、实施与维护
6.1 软件测试
6.2 调试
6.3 系统实施
6.4 系统维护
6.5 实验五
习题
涕寒桅诛果朔淀钨锅穴爽艘胎寇悬拔匣座糊鸥淖柴总褐浇干札肿叉零世惫第6章系统测试、实施与维护第6章系统测试、实施与维护
6.1 软 件 测 试
6.1.1 测试的基本概念
软件测试是对软件计划、软件设计、软件编码进行查错和纠错的活动。测试的目的是为了找出软件开发过程中各个阶段的错误,以便分析错误的性质和确定错误的位置,并纠正错误。
殖榴嘘椒抠篇诧扭晤幌沃祈记砸棚遣烹雨盖驼铸笨榴姆非震庇呐绍徘异嗽第6章系统测试、实施与维护第6章系统测试、实施与维护
软件测试伴随着程序设计的出现而出现,随着软件技术的发展,人们对软件测试的认识也在不断加深。通常人们认为“软件测试是为了证明软件是正确的”。实际上这种认识是错误的。1983年,IEEE提出的软件工程标准术语中软件测试的定义是:“使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求,或弄清预期结果与实际结果之间的差别”。G.J.Myers则认为“程序测试是为了发现错误而执行程序的过程”。
懊坪砧忻虫年亩客余江枣盯谎地依税幌鸡环簧侵渭颁仪恭牟抡苫冈秩鹊面第6章系统测试、实施与维护第6章系统测试、实施与维护
上面的两种定义有不同的强调方面,关于软件测试的概念,我们要注意以下两点:
(1) 软件测试是为了发现程序中的错误而不是证明程序的正确性。按照Myers的观点,“成功的测试是发现了至今尚未发现的错误的测试”。当然测试的目的不仅仅是发现错误,还包含检验、评价等。
(2) 软件测试方法不仅仅是执行程序,也包括人工方法。事实上,人工测试在某些测试阶段可以发现大部分的错误。
裁茫钥掇况趴竹白叔卷研隋遥溢后心常馆癸闽玉姓翱剂牌误亦栽书鄂萌啃第6章系统测试、实施与维护第6章系统测试、实施与维护
6.1.2 测试的基本原则
要高质量地完成测试工作,找出软件中的错误,应该遵守下面的一些基本原则:
(1) 测试队伍与开发队伍应分别建立。
开发和测试工作两者在思想和方法上都是不一样的,为了保证测试的质量,应分别建立开发和测试队伍。开发工作是建设性的,而在测试阶段,人们设计出一系列的输入数据(称为测试用例),目的是为了“破坏”已经建造好的软件。就像给硬件产品做高低温试验、震动试验、破坏性试验一样。而且一般程序编写者往往认为自己编写的程序是正确的,要他们找出自己程序中的错误是十分困难的。
朝郭嚷巾顾札坍桃绦阁带钠粹咨守镣录买材筒铲汕硒岩草伏秆堪绅续爵掇第6章系统测试、实施与维护第6章系统测试、实施与维护
(2) 设计测试用例时,要给出测试的预期结果。
一个测试用例应由两部分组成:
① 对程序进行测试的一组输入数据的描述;
② 由这一组输入数据所产生的程序的预期输出结果的描述。
预期输出结果不一定是精确的输出结果,对于一些复杂的计算,人工计算结果可能需要很大的工作量,可以给出一个对输出结果有效范围的描述。
八那孙吕危邪猾沙宜浚克胡约苟旗邪淆烤郎讯否覆硕乙港谗铆褐氛呐榷消第6章系统测试、实施与维护第6章系统测试、实施与维护
(3) 设计测试用例时,应包括对有效的和期望的输入条件的测试,也应包括对无效的和非期望的输入条件的测试。
一个程序不仅当输入合法时能正确运行,而且当有非法输入时,应该能够拒绝这些非法输入,并给出适当的提示信息。
(4) 在程序修改之后,要进行回归测试。
对程序的任何修改都有可能引入新的错误,所以必须进行回归测试,即将以前的所有测试用例再次输入测试,而不是仅仅测试以前结果不正确的测试用例。回归测试有助于发现由于修改程序而引入的新错误。
皋窘炭先缺延龚亨楞摈王诉皖答运塞撤驻抑序演季讳极硷嘱否咕奏契给寞第6章系统测试、实施与维护第6章系统测试、实施与维护
(5) 对发现错误较多的程序段,应进行深入的测试。
如果发现某个程序段错误较多,则表明这个程序段质量很低,有可能隐藏有更多的错误,应该进行深入的测试。
企隆车旭影畅锹劲芒农娩蔚斑伯遵述弹吻嚎皑矮埃萎疼皆砍咳曙捶浊多引第6章系统测试、实施与维护第6章系统测试、实施与维护
6.1.3 测试方法
软件测试方法有多种,这些测试方法具有不同的思路和出发点。总的来说,测试方法可分为静态测试方法和动态测试方法两大类。
所谓静态测试方法,是指不在计算机上运行被测试程序,而是采用其他手段达到对程序进行检测目的的测试方法。静态测试方法包括人工测试方法和计算机辅助静态分析方法。
所谓动态测试方法,是指在计算机上运行被测试程序,并用所设计的测试用例对程序进行检测的方法。动态测试方法根据设计测试
文档评论(0)