2022年操作系统课后答案 .pdf
《2022年操作系统课后答案 .pdf》由会员分享,可在线阅读,更多相关《2022年操作系统课后答案 .pdf(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 第 1 章 软件测试的基本概念1、什么是软件测试?软件测试的定义(IEEE1983):是使用人工和自动手段来运行或测试某个系统的过程,目的在于检验其是否满足规定的需要或是弄清楚预期结果与实际结果之间的差别。2、什么是软件缺陷?软件缺陷的定义(IEEE1983):从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题。从产品外部看,软件缺陷是系统所需实现的某种功能的失效或违背。3、什么是测试用例?测试用例的定义(IEEE1990):是一组测试输入、执行条件和预期结果,目的是要满足一个特定的目标,比如执行一条特定的程序路径或检验是否符合一个特定的需求。4没有安装操作系统的
2、裸机中有软件吗?有软件。在主板上的CMOS 芯片中嵌入了BIOS程序,可以看做是一个简单的嵌入式软件。5软件测试就是通过运行程序来查看错误。对吗?错。软件测试不仅包括动态测试,还包括静态的检查。测试的对象不仅针对查程序,还需要针对文档。6软件产品发布给用户之后发现了缺陷,将导致怎样的后果?软件产品发布给用户之后,若由用户发现了缺陷,则视缺陷的严重程度和影响范围,导致的后果不同。若导致用户系统崩溃、严重数据丢失、巨大的经济损失,甚至造成人身伤害,则对公司的影响很大。若只是造成用户使用不便,则其产品可能遭到用户的抛弃或投诉。7手机测试是硬件测试,还是软件测试?既是硬件测试,又是软件测试。针对手机外
3、壳、抗摔、防水等方面的测试是硬件测试,针对手机的通话质量、短信、游戏等方面的测试属于软件测试。8为什么说软件的需求规格说明书往往是软件缺陷的最大来源?其结论对软件测试工作有何启发?需求规格说明是通过需求分析得到,需求的变动,需求本身描述的不一致、不正确、不完整将导致设计的变更和设计的缺陷,并进一步影响编码的正确性。因此,导致软件与预期结果的偏差越来越大。9请仿照 NextDate 问题,针对PrevDate 问题设计测试用例。PrevDate 问题的功能简述如下。当用户输入有效日期时(从 1800 年 1 月 1 日到 2050 年 12 月 31日之间的所有日期),系统将自动计算出前一天的日
4、期,否则,系统不执行日期的计算,并给出消息提示输入无效。名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 20 页 -2 10请仿照 NextDate 问题,针对 NextMultiDate问题设计测试用例。NextMultiDate问题的功能简述如下。若用户输入有效日期(从 1800 年 1 月 1 日到 2050 年 12 月 31日之间的所有日期),并指定延迟的天数(最多不超过 366 天),假设为 n,则系统将自动计算出从有效日期往后n 天的日期。对于无效日期或无效延迟天数,系统不执行日期的计算,并给出消息提示输入无效。11若需要对多个测试用例进行管理,除了ID、输入和输出
5、之外,需针对每个测试用例补充哪些信息?测试用例的构成:ID、项目/软件、程序版本、编制人/编制时间、功能模块、测试项、测试目的、预置条件、参考文献、测试环境、测试输入、操作步骤、预期结果、执行结果、优先级、测试用例之间的关联。12请针对 145 节 NextDate 问题的第二次测试中所给出的测试用例,补充测试环境。NextDate 的测试环境应根据实际的开发和使用环境而定,从软件使用环境、开发平台等角度考虑即可。13请针对第6 题的 PrevDate 问题,补充测试环境。同上题。第 2 章 软件测试原理1、对待缺陷我们应遵循哪些基本原则?对待缺陷的基本原则:缺陷的群集现象、缺陷有免疫力(测试
6、要使用不同的测试方法)、缺陷关联和依赖(单纯依赖、多重依赖、复合依赖)。2、当受到进度压力的时候,是优先进行黑盒测试还是白盒测试?应优先进行黑盒测试,因为黑盒测试不需要了解程序实现的细节,通过黑盒测试至少可以证明:被测软件系统可以完成哪些功能,哪些功能不能正确的实现,哪些功能甚至完全没有实现。3、针对同样的问题(例如相同的代码段),采用黑盒测试与白盒测试方法得到的测试用例会有很多是重复名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 20 页 -3 的,那么,白盒测试有意义吗?白盒测试有重要的意义,它主要是覆盖黑盒测试方法检查不到或难以发现的某项缺陷,白盒测试指标还可以充当对黑盒测
7、试方法效果的检查,判断测试是否存在漏洞或冗余。4、静态测试不需要执行程序,那么,是否可以用静态测试替代动态测试呢?不可以。静态测试与动态测试之间即具有一定的协同性,同时又具有相对的独立性。程序静态分析的目标不是证明程序完全正确,而是作为动态测试的补充,在程序运行前尽可能多地发现代码中隐含的缺陷。5、良好的单元测试是否可以替代集成测试?不能。良好的单元测试只能确保通过测试的单元内部基本可以正常工作,但不能保证单元集成在一起之后,能够正常工作,特别要关注可能存在误差累积的情况。在单元测试与集成测试的关系中,即使保证每个单个的单元具有优秀性能,也不能确保整体的性能。6、自动化测试工具可以让繁重的手工
8、劳动变得轻松,那么,我们还有必要做手工测试吗?自动化测试目前不可能完全替代手工测试,一方面是由于自动化测试工具的适用面都相对较窄,一种测试工具往往仅能处理很小一方面的测试问题,另外,有些测试活动需要重复发挥人的创造力,采用自动化测试工具不可能收到同样的效果。7、只要学会某种时下流行的自动化测试工具的使用,就可以轻松搞定测试工作了,是这样吗?不管是什么测试工具,它实质反映的是其背后的测试思想,因此,抛开测试方法去学习测试工具的使用,是没有任何意义的。而且,测试工具使用的前提是必须有测试用例为指导,得到的测试脚本才具有复用性,而测试用例的设计涉及多种测试方法。因此,完全不懂测试技术是不能胜任软件测
9、试岗位的。8、什么是冒烟测试?如何实施?冒烟测试是通过简单测试来判断系统基本功能(通常是核心业务模块)的覆盖率如何,而不验证正确性。例如能否正确安装/卸载,主要功能是否实现,是否存在严重死机或数据严重丢失等缺陷。冒烟测试工作一般需要实现自动化,可以借助诸如WinRunner、QTP这样的工具来录制自动化测试脚本,脚本由专人维护,且随着测试的进展对脚本不断进行增补。9、随机测试就是随便测试,往往会取得意想不到的效果,因此,我们应在软件开发过程中广泛使用随机测试。是这样吗?不能这样。随机测试是没有测试用例的,且往往是不可重复的。这对缺陷的重现十分不利,且广泛采用随机测试将不能保证测试的全面性,无法
10、了解测试的整体效果。若在软考开发过程中广泛使用,可以表明测试过程是混乱的,缺乏管理的,则最终提交的软件产品质量是完全无法保证的。10、在任何情况下,我们执行回归测试时,都应将以前测试过的用例全部执行一遍,是这样吗?不是这样的。回归测试是贯穿在整个测试的各个阶段的一个测试活动,主要是对修改过的软件重新进行测试,目的是为了验证修改的正确性及其影响。回归测试包的选择应根据进度、风险、修改情况等全盘考虑。11、我们该如何应用各种测试过程模型?12、软件测试的目的是证明程序可以工作。软件测试的目的是证伪。这两种说法哪个正确?两种说法都正确,但有存在片面性,应视不同的情况予以应用。13、对比软件测试工程师
11、的素质要求,你认为自己可以胜任软件测试工程师的岗位吗?软件测试工程师的素质要求:两项意识:服务意识、团队合作意识。三颗“心”:耐心、细心、信心。四种能力:技术能力、沟通能力、逆向思维能力、移情能力。五个特性:实在幽默、十足记忆、时刻怀疑、十面督促、十分周全。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 20 页 -4 第 3 章 黑盒测试技术1进行边界值测试时,为何要以边界点为中心,以一个单位长度作为邻域,而不是直接选择“1”为邻域?进行边界值测试时,当以一个单位长度为邻域时,邻域随着单位长度的变化而改变。若研究的粒度较精细,可选择更小的邻域,而若边界粒度较粗,则应适当增加单位
12、长度,扩大边界的邻域范围。单位长度可方便地调节边界值测试的邻域。若直接选择“1”为邻域,则有时会造成边界影响面太小,导致遗漏缺陷。2边界值测试中所选择的输入测试数据一定是有效数据。是这样吗?不一定。边界值测试仅关注边界,设计测试用例时不区分系统输入在边界点上是否有效。因此,系统输入在边界点上可能是有效的,也可能是无效的。3边界值测试中,若考虑边界的组合情况,即缺陷出现在多个输入条件的边界或边界附近,则称这样的策略为最坏情况测试。若给出两个输入条件x,y,其中条件x 具有 3 个极值点(x1,x2,x3),条件 y 具有 2个极值点(yl,y2),如图 3-1 所示。请采用最坏情况测试方法,导出
13、测试用例的数目,并设计相应的测试用例。最坏情况测试方法相当于在基本边界值分析的基础上,考虑 x,y 条件同时取得边界,所以图 1 中矩形框的边界和边界附近都应取到测试用例。测试用例如图3-1 所示。测试用例数目为4 7427 143。名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 20 页 -5 名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 20 页 -6 4对于 328 节的 Commission 问题,请采用基本边界值分析方法,从输入域设计测试用例。从输入域采用基本的边界值分析,得到测试用例集合见表3-2。表中预期输出是指销售员的总提成。表 3-2 输入域的基
14、本边界值分析测试用例(Commission 问题)5对于 328 节的 Commission 问题,请分析案例实践二(见本书光盘部分的图31)中所有边界点是如何得到的。各种酒的单价为:白酒 168 元/瓶,红酒 120 元/瓶,啤酒 5 元/瓶。各销售员每月至少需售出白酒50 瓶,红酒 30 瓶,啤酒300 瓶。由此得到最低销售额:1.35 万元,对应最小边界点。每个销售员的月供最高为白酒 5000 瓶,红酒 3000 瓶,啤酒30000 瓶,由此得到最高销售额:135 万元,对应最大边界点。销售员的提成公式中,发生提成比例变化的点为:2 万元和 4.5 万元,由此得到中间的两个边界点。6当时
15、间有限时,应优先针对输入域进行边界值测试,还是针对输出域分析边界?为什么?当时间有限时,应优先从输入域考虑边界值测试。因为系统总是根据输入情况来决定如何进行输出响应。且输出域的边界值测试用例与输入域的测试用例有很多重复的情况。因此,一般情况下,先对输入域展开测试,然后根据输出域的特殊性,补充更多边界测试用例。7如何才能方便、快捷地了解划分出的等价类是否能够体现真正的等价呢?有两种途径:第一种方式是正向判断法。即从正向观察系统是输入和输出,在划分得到的等价类中随便选择几个数据,并从如下方面来观察:这些数据是否包含相同的输入条件。这些数据是否导致程序执行类似的处理。这些数据是否影响相同的输出结果。
16、这些数据要么都让软件执行错误处理,要么都不让。若以上方面中任何一方面不成立,则等价类划分肯定有问题。第二种方法是结合决策表方法,若从该等价类划分无法得到精确无误的决策表,则说明该等价类划分是不“等价”的。8为什么对无效等价类设计测试用例时要采取一一对应原则,这对测试有何好处?设计测试用例时,采取一一对应原则的含义是每个测试用例唯一覆盖一个无效等价类,这样的处理方式有利于缺陷的定位。一旦某个测试用例失败,我们可以很方便地了解,系统对于哪个输入条件的哪个无效等价类无法适当予以处理。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 20 页 -7 9案例实践三的NextDate 实例中,
17、测试用例ND-EP-001 到 ND-EP-007(见本书光盘)可以很好地考查系统的容错能力,但从满足用户需求的角度而言,这个测试用例的集合违反了实际工作中的一些基本原则,是哪些原则呢?在实际的测试工作中,我们总是优先满足系统的基本功能,即优先测试系统的基本功能,看是否能够正确实现,在测试用例上数目也会更多一些。而在本例中仅有一个测试用例去测试基本功能,却有6 个测试用例考查系统的容错能力,这是不合适的。另外,测试应尽量避免漏洞,而不怕冗余,本例中只有一个针对正常数据的测试用例,由此导致的测试漏洞是很大的,因此也违反了测试应避免漏洞的基本原则。10、对于 NextDate 问题,若将 2000
18、 年从闰年有效等价类中分离出来,其余两输入条件的划分方式参照3 3 8节的第二次等价类划分尝试(见本书光盘部分的表39)。请采用弱组合和强组合方式分别设计等价类测试的测试用例。此时的等价类划分如表3-3 所示。若采用弱组合形式进行等价类测试,得到的一组测试用例构成和最终的用例集合分别如表3-4 和表 3-5 所示。若采用强组合形式的等价类测试,则可得到 45(335)个测试用例,具体的用例设计方法参见表3.14。不再一一列出。11、对于 328 节的 Commission 问题,请针对输入域展开等价类测试。针对 Commission 问题,对输入条件的上、下限构成的边界范围可自然形成一个有效等
19、价类,所以采用等价名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 20 页 -8 类测试,只有一个测试用例。等价类划分见表3-6,测试用例见表3-7。表中预期输出是指销售商的总提成。表 3-6 输入域的等价类划分(Commission 问题)表 3-7 输入域的等价类测试用例(Commission 问题)12、对于如下的枪支销售问题(简称 Sales 问题),分别从输入域和输出域着手,进行边界值测试和等价类测试。Sales 问题的简单描述如下。某步枪销售商负责销售某军火制造商生产的步枪,包括枪机(Lock)、枪托(Stock)和枪管(Barrel)。其中枪机、枪托和枪管的单价分别
20、为45 美元、30 美元和 25 美元。销售商每月至少应卖出一支完整的步枪,同时,销售商每月最多只允许销售70 个枪机、80 个枪托和 90 个枪管。该销售商的提成每月结算一次。根据其销售业绩,制造商按如下计算方式来计算销售商的提成。销售额不足(含)1000 美元的部分,提成比例为10。销售额在 1000 美元(不含)到 1800 美元(含)之间的部分,提成比例为15。超过 1800 美元(不含)的部分,提成比例为20。最终输出为当月销售报告和销售商的总提成。三个输入条件为:枪机、枪托和枪管的销售量。针对输入域展开边界值测试,则枪机的边界点为1 和70,枪托边界点为1 和 80,枪管边界点为1
21、 和 90。基本边界值分析的测试用例集合见表3-8。针对输出域展开边界值测试,以销售额为输出,得到测试用例集合见表3-9。表中预期输出是指销售商的总提成。表 3-8 Sales 问题的边界值测试的测试用例(针对输入域)表 3-9 Sales 问题的边界值测试的补充测试用例(针对输出域)名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 20 页 -9 针对输入域的等价类划分见表3-10。针对输入域的等价类测试用例(强组合形式)见表3-11。表 3-10 输入域的等价类划分(Sales 问题)表 3-11 输入域的等价类测试用例(Sales 问题)针对输出域的等价类划分见表3-12,对
22、应等价类测试用例见表3-13。表 3-12 输出域的等价类划分(Sales 问题,单位:美元)表 3-13 输出域的等价类测试用例(Sales 问题)13、对 356 节的 NextDate 问题进行第一次决策表尝试时,为何所得决策表中会输出不确定的测试用例?该决策表中打问号的测试用例反映出系统对输入的不确定无法处理,输入的含义是:对于任意年份,月份是每月有31 天的月份,日期是31 号,这时存在一个年末日期的问题,对于12 月 31 日,系统输出应为次年的 1 月 1 日,而对于其他月份(如7 月 31 日),系统输出应为下月1 日(如 8 月 1 日),因此,系统无法针对相同的输入等价类给
23、出明确的输出。这时应将月份的等价类进一步划分下去。14、请仿照 NextDate 问题,针对PrevDate 问题使用边界值、等价类和决策表方法展开测试。PrevDate 问题中特殊的日期包括:年初日(即每年的1 月 1 日)、月初日(即每月 1 日)和闰年情况(即3 月 1 日)。PrevDate 问题包括三个输入条件:年份、月份、日。边界点分别为:名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 20 页 -10 年份:1800 年,2050 年月份:1 月,12 月日:1 号,31 号根据这些边界点,使用基本边界值分析方法进行边界值测试,与NextDate 问题的分析方法完全
24、相同,所以得到的测试用例也非常相似(输入完全相同,预期输出不同而已)。等价类划分如表3-14 所示,得到决策表见表3-15,采用决策表得到的测试用例见表3-16。表 3-14 PrevDate 问题的等价类划分表 3-15 PrevDate 问题的决策表表 3-16 PrevDate 问题的测试用例集合名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 20 页 -11 15、根据 375 节的规则(详见本书光盘),检查测试用例表324 发现输入条件“账面余额”未取到“I”,说明测试用例有漏洞,而表324 中又显示测试用例覆盖了所有五个场景,为什么会出现这种相互矛盾的情况?是规则有
25、错,还是别的什么原因呢?对于备选流4 的含义是:输入金额校验失败,这里有很多情况可以导致金额校验失败,如输入金额格式错误、账面余额不足等,表3.24 的测试用例ATM-ST-006的触发事件是输入金额格式错误的情况,而未测试账面余额不足的情况,所以输入条件“账面余额”未取到“I”。这里并不矛盾,因为表3.24 中的第 2 列是从较粗的粒度来考查用例覆盖的,而设计测试用例时若需要覆盖备选流4,却需要从细节来考虑,所以出现了不一致的情况。第 4 章 白盒测试技术1、对于 4.2.2节中的函数FuncSC,随着三个布尔变量取值的不同,在特殊的取值组合条件下,程序的输出与输入是不相等的。请问在什么条件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年操作系统课后答案 2022 操作系统 课后 答案
限制150内