软件测试作业及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章
1.选择题
(1)软件本身的特点和目前软件开发模式使隐蔽在软件内部的质量缺陷不可能完全避免,在下列关于导致软件质量缺陷的原因的描述中,不正确的是(C)
A.软件需求模糊以及需求的变更,从根本上影响着软件产品的质量
B.目前广为采用的手工开发方式难以避免出现差错
C.程序员编码水平低下是导致软件缺陷的最主要原因
D.软件测试技术具有缺陷
(2)缺陷产生的原因是(D)
A.交流不充分及沟通不畅、软件需求的变更、软件开发工具的缺陷
B.软件的复杂性、软件项目的时间压力
C.程序开发人员的错误、软件项目文档的缺乏
D.以上都是
2.判断题
(1)缺乏有力的方法学指导和有效的开发工具的支持,往往是产生软件危机的原因之一。(√)
(2)目前的绝大多数软件都不适和于快速原型技术。(√)
(3)在程序运行之前没法评估其质量。(×)
(4)下列哪些活动是项目
探索火星生命迹象(√)
向部门经理进行月工作汇报(×)
开发新版本的操作系统。(√)
每天的卫生保洁。(×)
组织超级女声决赛。(√)
一次集体婚礼。(√)
3.简答题
(1)什么是软件?软件经历了哪几个发展阶段?
答:软件是一系列按照特定顺序组织的计算机数据和指令的集合。一般来讲软件北划分为系统软件,应用软件和介于着两者之间的中间件。其中系统软件为计算机使用提供最基本的功能,但是并不是针对某一特定领域,而应用软件则恰好相反,不同的应用软件更根据用户和所服务的领域提供不同的功能。
20世纪50年代初期至60年代中期是软件发展的第一阶段(又称程序设计阶段);
第二阶段从20世纪60年代中期到70年代末期是程序系统阶段。
第三阶段称为软件工程阶段,从20世纪70年代中期到80年代中期,由于微处理器的出现,分布式系统广泛应用,以软件的产品化,系列化,工程化和标准化为特征的软件产业发展起来,软件开发有了可以遵循的软件工程化的设计原则,方法和标准。
第四阶段是从20世纪80年代中期至今,客户端/度武器(C/S)体系结构,特别是Web技术和网络分布式对象技术法飞速发展,导致软件体系结构向更加
灵活的多层分布式结构演变,CORBA,EJB,COM/DCOM等三大分布式的对象模型技术相继出现。
(2)软件质量与软件测试有什么关系?
答:软件测试和软件质量的概念是分不开的。测试是手段,质量是目的。软件测试能够提高软件质量,但是软件测试和软件质量保证二者之间既存在包含又存有交叉的关系。软件测试能够找出软件缺陷,确保软件产品满足需求。但是测试不是质量保证。测试可以查找错误并进行修改,从而提高软件产品的质量。软件质量保证则是避免错误以求高质量,并且还有其他方面的措施以保证质量问题。
(3)软件质量框架是什么?包括什么内容?
答:第一部分是前提,说明了软件框架的适用范围,以及适合的环境,和方法学一样,没有泛之四海皆准的方法学,所以软件质量框架也需要一个上下文环境。
第二部分是价值观,价值观说明了软件质量框架中强调的价值,在软件框架的结构和实践中,都将充分的的表现出一开始我们定义的价值。
第三部分是结构。结构定义了软件质量框架的组成部分,以及软件质量框架和开发过程之间的关系。
第四部分是文章中着墨最多的部分,即优秀实践。优秀实践通过具体、实际的分析、举例,深入阐述了软件质量框架的价值观和结构。
(4)CMM是什么?具体内容是什么?CMMI与CMM的关系是什么?
答:CMM是由美国软件工程学会(Software Engineering Institute)制定的一套专门针对软件产品的质量管理和质量保证标准。该标准最初是为美国军方选择软件产品提供商时评价软件企业的软件开发质量保证能力而制定,所以称为软件企业能力成熟度模型(Capability Maturity Model,简称CMM)。该标准将软件企业的能力成熟度划分为5个等级,级别越高表明该企业在提供合格软件产品方面的能力越强。
软件过程包括管理过程(软件项目策划、软件项目管理)、组织过程(跨项目过程、培训、基础设施)、工程过程(需求分析、设计、编码、测试)。CMM分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。成熟度反映了软件过程能力的大小,任何一个软件机构的软件过程必定属于其中某个级别。除了第一级以外,每级成熟度又由若干关键过程域构成。CMM结构中关键实践描述了对关键过程域有效实施和制定化起重要的作用的基础设施和活动,有5个共同特征:执行约定、执行能力、进行的活动、测量和分析、验证实施。
CMM:软件能力成熟度模型,是对组织软件过程能力的描述。CMMI:能力成熟度模型集成,目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。
CMMI 模型的前身是SW-CMM 和SE-CMM,前者就是我们指的CMM。CMMI与SW-CMM的主要区别就是:
一、覆盖了许多领域;到目前为止包括四个下面领域:(1)、软件工程(SW-CMM);(2)、系统工程(SE-CMM);(3)、集成的产品和过程开发(IPPD-CMM);(4)、采购(SS-CMM)。
二、CMMI有两种表示方法,一种就是与CMM一样的阶段式表现方法(把CMMI
中的若干个过程区域分成5个成熟度级别);另一种是连续式的表现方法(将CMMI中过程区域分为四大类:过程管理、项目管理、工程以及支持)。
三、CMM2级有6个关键过程区域,在CMMI中增加了一个:度量与分析;CMM4级有2个关键过程区域,在CMMI中也是2个,只是名称与内容有所改变;在CMM5级中有3个KPA,在CMMI中合并了,改为2个。最显著还是在CMM3级中,原来的7个KPA改为14个。
(5)软件测试与软件开发具有什么关系?
答:1、没有软件开发就没有测试,软件开发提供软件测试的对象。
2、软件开发和软件测试都是软件生命周期中的重要组成部分
3、软件开发和软件测试都是软件过程中的重要活动。
4、软件测试是保证软件开发产物质量的重要手段。
第二章
1.选择题
(1)软件测试按照测试技术划分为(C)
A.性能测试、负载测试、压力测试
B.恢复测试、安全测试、兼容测试
C.A与B都是
D.单元测试、集成测试、验收测试
(2)软件测试目的(C)
A.避免软件开发中出现错误
B.发现软件开发中出现错误
C.尽可能发现并排除软件中潜藏的错误,提高软件的可靠性
D.修改软件中出现错误
(3)各个地方对软件测试定义不同,请根据软件测试方面、理论方面、代码角度测试填空。
代码方面分为(A)、集成测试、系统测试、验收测试
理论方面分为(C)、动态测试、静态测试
测试方面分为(B)、压力测试、回归测试、负载测试、恢复测试、安全性测试、兼容性测试、内存泄露测试、比较测试等。
A.单元测试
B.黑盒测试
C.白盒测试
D.负载测试