测试用例软件工程基础_第1页
测试用例软件工程基础_第2页
测试用例软件工程基础_第3页
测试用例软件工程基础_第4页
测试用例软件工程基础_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1第5章软件开发技术基础程序设计基础

软件工程基础

结构化程序设计

面向对象程序设计测试用例软件工程基础全文共39页,当前为第1页。2程序设计基础程序设计程序设计(Programing)是指利用计算机解决问题的全过程,它包含多方面的内容,而编写程序只是其中的一部分。

分析问题确定处理方案确定操作步骤编写程序上机运行程序整理结果

程序设计的一般步骤:测试用例软件工程基础全文共39页,当前为第2页。3程序设计方法与风格程序设计方法是指关于以什么观点来研究问题并进行求解,以及如何进行系统设计的软件方法学。程序设计方法主要经过了结构化程序设计和面向对象程序设计两个阶段。

程序设计基础测试用例软件工程基础全文共39页,当前为第3页。4程序设计方法与风格程序设计风格是指编写程序时所表现出的特点、习惯和逻辑思路。程序设计风格强调简单和清晰。“清晰第一,效率第二”的观点是当今主导的程序设计风格程序设计基础测试用例软件工程基础全文共39页,当前为第4页。5结构化程序设计采用自顶向下、逐步求精的方法程序结构模块化,每个模块只有一个入口和一个出口使用三种基本控制结构描述程序流程原则:结构化程序设计是指:为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则。所谓模块化就是把一个大型的程序按照功能分解为若干相对独立的、较小的子程序(即模块),并把这些模块按层次关系进行组织。

测试用例软件工程基础全文共39页,当前为第5页。6顺序结构、选择结构、循环结构结构化程序设计基本结构:AB假真PAB真假A

P真假A

P测试用例软件工程基础全文共39页,当前为第6页。7

数据与对数据的操作(函数)相分离可重用性差结构化程序设计

程序结构良好程序清晰易读、易于使用和维护提高编程的效率,降低开发成本优点缺点测试用例软件工程基础全文共39页,当前为第7页。8面向对象程序设计对象在现实生活中,所有东西都是对象。任何对象都有两个共同的特点:对象的属性和对象的操作。一个对象通常由对象名、属性和操作组成。概念测试用例软件工程基础全文共39页,当前为第8页。9面向对象程序设计属性是用来描述对象的状态,对象的状态又称为对象的静态属性。概念属性测试用例软件工程基础全文共39页,当前为第9页。10面向对象程序设计对象的操作又称为对象的行为,主要表述对象的动态属性。概念操作测试用例软件工程基础全文共39页,当前为第10页。11面向对象程序设计封装就是把对象的属性和操作结合成一个不可分割的整体。封装就是使一个对象形成接口和实现两个部分。对于用户来说,接口是可见的,实现是不可见的。概念封装测试用例软件工程基础全文共39页,当前为第11页。12面向对象程序设计是一组具有相同属性和相同操作的对象的集合。一个类中的每个对象都是这个类的一个实例。概念

类测试用例软件工程基础全文共39页,当前为第12页。13面向对象程序设计继承是表达类之间相似性的一种机制,即在已有的类的基础之上增加构造新的类,前者称为父类(或超类),后者称为子类。子类除自动拥有父类的全部属性和操作外,还可以进一步定义新的属性和操作。如果子类只从一个父类继承,则称为单一继承;如果子类从一个以上父类继承,则称为多重继承。优点:能清晰地体现相关类之间的层次结构关系;可以减少代码和数据的冗余,增加程序的复用能力。概念继承测试用例软件工程基础全文共39页,当前为第13页。14面向对象程序设计对象在收到消息时要予以响应,不同的对象收到同一消息可产生完全不同的结果,这一现象叫做多态性。多态性增强了软件的灵活性和重用性。多态性与继承性相结合使软件具有更广的重用性和可扩充性。概念多态性测试用例软件工程基础全文共39页,当前为第14页。15面向对象程序设计面向对象程序设计的基本思想特性:基本思想:

将人们在日常生活中习惯的思维方式和表达方式应用在程序设计中,以客观世界中的对象为中心,以类和继承为构造机制来进行软件开发活动。优点:

符合人们通常解决问题的思维方式;对象结构稳定;软件具有易于扩充、修改和维护的特性。封装性、继承性、多态性测试用例软件工程基础全文共39页,当前为第15页。16软件工程基础

1.软件危机

软件危机是指在软件的开发和维护过程中所遇到的一系列严重问题。软件危机主要体现在以下几个方面:①

软件开发的实际成本和进度估计不准确②开发出来的软件常常不能使用户满意③软件产品的质量不高,存在漏洞,需要经常打补丁④大量已有的软件难以维护⑤软件的开发和维护成本不断提高,直接威胁计算机应用的扩大⑥软件生产技术进步缓慢,跟不上硬件的发展和人们需求的增长测试用例软件工程基础全文共39页,当前为第16页。17看一个实际例子:Windows7的诞生过程2007年12月20日:新技术预览版正式上线;2008年12月12日:软件评测版(有“发送反馈信息”链接)正式上线;微软2009年10月22日于美国、2009年10月23日于中国正式发布Windows72011年2月22日:RTMSP1(补丁)正式上线。测试用例软件工程基础全文共39页,当前为第17页。18软件工程基础软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来开发与维护软件的学科。研究软件工程的主要目的就是在规定的时间、规定的开发费用内开发出满足用户需求的高质量的软件系统(高质量是指错误率低、好用、易用、可移植、易维护等)。2.软件工程概述

测试用例软件工程基础全文共39页,当前为第18页。19软件工程的原则:①制定阶段计划②阶段评审③制定规范,实行严格的产品控制2.软件工程概述软件工程基础测试用例软件工程基础全文共39页,当前为第19页。20将软件产品从开始计划起,到废弃不用止,称为软件生命周期。软件生命周期一般划分为计划、开发和运行3个时期,每一时期又区分为若干个阶段。

计划时期有问题定义和可行性研究两个阶段; 开发时期有需求分析、设计、编码和测试4个阶段; 运行时期主要是系统维护阶段。

—软件生命周期软件工程基础2.软件工程概述测试用例软件工程基础全文共39页,当前为第20页。21目的:弄清“用户需要计算机解决什么问题”,以及项目所需的资源和经费任务:编写出“系统目标与范围说明书”软件工程基础—问题定义3.软件工程过程测试用例软件工程基础全文共39页,当前为第21页。22目的:弄清“用户要解决的问题是否能够解决和值得解决”任务:写出“可行性论证报告”。 应制订出“项目实施计划”,或提出终止该项目的建议软件工程基础—可行性研究3.软件工程过程测试用例软件工程基础全文共39页,当前为第22页。23目的:要解决的问题是“做什么”。具体而言,就是通过对问题及其环境的理解、分析和综合,以确定最终的目标系统必须做哪些工作任务:编写“需求规格说明书”,这份文档应包括对软件的性能需求、功能需求、环境约束和外部接口等描述软件工程基础—需求分析3.软件工程过程测试用例软件工程基础全文共39页,当前为第23页。24目的:确定软件的总体结构、数据结构、用户界面和算法细节任务:软件设计文档软件设计分为总体设计和详细设计

软件工程基础—软件设计3.软件工程过程测试用例软件工程基础全文共39页,当前为第24页。25总体设计目的:要解决的问题是“怎样实现目标系统”

任务:确定软件的总体结构,进行模块划分,确定每个模块的功能、接口及模块之间的调用关系,并对全局数据结构进行设计,同时产生概要设计说明书软件工程基础—软件设计3.软件工程过程测试用例软件工程基础全文共39页,当前为第25页。26详细设计

目的:要解决的问题是“应该怎样具体实现目标系统”

任务:在概要设计的基础上,设计每个模块实现的细节及对局部数据进行设计(包括模块的数据结构和所需的算法),同时产生详细设计说明书软件工程基础—软件设计3.软件工程过程测试用例软件工程基础全文共39页,当前为第26页。27目的:产生能在计算机上执行的程序任务:把详细设计的结果翻译成用该程序设计语言编写的程序代码(源程序)软件工程基础—软件编码3.软件工程过程测试用例软件工程基础全文共39页,当前为第27页。28软件测试是为了发现程序中的错误而执行程序的过程目的和任务:通过在计算机上执行程序来尽可能多地发现软件产品中的错误和缺陷,并改正程序中的错误,以保证程序的可靠运行软件测试分为静态分析和动态测试动态测试又分为白盒测试和黑盒测试

软件工程基础—软件测试3.软件工程过程测试用例软件工程基础全文共39页,当前为第28页。29白盒测试

是测试者完全了解被测程序的内部逻辑结构和处理过程,因此,可以对其内部结构和处理过程进行测试,检验内部控制结构和数据结构是否有错,实际的运行结果与期望的结果是否一致软件工程基础—软件测试3.软件工程过程测试用例软件工程基础全文共39页,当前为第29页。30黑盒测试

是测试者已经知道被测程序的功能,而对程序内部的逻辑结构和处理过程完全不用考虑,只是对它的每一个功能进行测试,将测试后的结果与期望的结果进行分析比较,检查程序的功能是否符合规格说明书的要求。软件工程基础—软件测试3.软件工程过程测试用例软件工程基础全文共39页,当前为第30页。31软件测试的每一次测试都需要准备好一些测试数据,与被测程序一起输入到计算机中执行;一般把程序执行一次需要的一组测试数据和该组测试数据可以得出怎样的输出结果(期望结果)称为一个“测试用例”软件工程基础—软件测试3.软件工程过程测试用例软件工程基础全文共39页,当前为第31页。32测试用例设计测试用例是由测试数据和期望结果组成。设计测试用例的目的就是用尽可能少的测试数据,达到尽可能大的程序覆盖面,发现尽可能多的软件错误和问题软件工程基础—软件测试3.软件工程过程测试用例软件工程基础全文共39页,当前为第32页。33软件测试的原则①确定期望输出结果②测试者应避免测试自己的程序③对非法和非期望的输入数据也要像合法的和期望的输入数据一样编写测试用例④程序模块经测试后,残存的错误数目与已发现的错误数目成正比⑤严格按测试计划执行,避免测试的随意性⑥对每一个测试结果应当做全面检查⑦妥善保存测试计划、测试用例、出错统计和最终分析报告,为软件维护提供方便软件工程基础—软件测试3.软件工程过程测试用例软件工程基础全文共39页,当前为第33页。34软件测试的实施①单元测试:是对每一个编制好的模块进行测试,其目的在于发现和排除各模块内部可能存在的差错及详细设计中产生的错误。进行单元测试时,根据程序的内部结构设计测试用例,主要采用白盒测试法软件工程基础—软件测试3.软件工程过程测试用例软件工程基础全文共39页,当前为第34页。35软件测试的实施②集成测试。是在单元测试的基础上,将所有模块按照设计要求组装成为系统而进行的测试,它的任务是检查模块间的接口和通信、各子功能的组合能否达到预期要求的功能、全程数据结构是否有问题等。集成测试主要发现设计阶段产生的错误,通常采用黑盒测试法软件工程基础—软件测试3.软件工程过程测试用例软件工程基础全文共39页,当前为第35页。36软件测试的实施集成测试时,将各个模块组装成系统的方法有:非增量组装方式是先分别对每个模块进行单元测试,再把所有模块按设计要求组装在一起进行测试,最终得到所要求的软件增量组装方式是把下一个要测试的模块同已经测试好的那些模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试软件工程基

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论