软件测试期末复习(按题型)

文章目录

    • 选择题
    • 判断题
    • 填空题
    • 简答题
        • 1. 软件测试执行阶段分为几个步骤?
        • 2. 请列举软件开发生命周期的主要模式。
        • 3. 关于黑盒测试和白盒测试:
        • 4. 列举几种不修复软件缺陷的原因:
        • 5. 质量是免费的吗?请说明理由。
        • 6. 什么是单元测试?什么是集成测试?两者应当先做哪一个?
        • 7. 软件质量保证人员的职责是什么?他们和测试员有什么区别?
        • 8. 什么是测试桩?什么是测试驱动?两者的区别是什么?
        • 9. 软件缺陷的生命周期中的三种基本状态和两种扩展状态分别是什么?
        • 10. 软件缺陷的生命周期的有哪三种基本状态?它们之间如何转换?
        • 11. 什么是灰盒测试?它与白盒测试和黑盒测试的区别是什么?
        • 12. 请列举并简单介绍软件测试的四种基本技术。
        • 13. 所谓的测试“猴子”做的测试是指哪一种测试?它分为几种类型?
        • 14. 什么是确认?什么是验证?两者是不是等价的?
        • 15. 什么是通过性测试?什么是失效性测试?在软件测试工作中应当先做哪一种?

选择题

A 下面属于软件缺陷的是:

  1. 软件没有实现说明书要求的功能 :
  2. 软件实现了说明书没有提到的功能:
  3. 软件太大,占据硬盘空间太多:
  4. 软件出现了说明书中指明不应该的错误:

B 关于标准和规范,下列说法均正确:

  1. 标准是强制的,规范是建议的
  2. 标准和规范都是软件开发中一些需要遵守的规则
  3. 原则上软件开发中标准和规范都要遵守,在确实无法保证的情况下可以不遵守规范,但不能违反标准。

如果规定程序中不允许使用goto语句,这是标准

C 关于通过性测试和失效性测试,下列说法均正确:

  1. 通过性测试是确认软件能否在正常情况下完成预定的任务
  2. 失效性测试是努力使软件失败或者工作不正常,希望在极端情况下暴露软件缺陷
  3. 总是先做通过性测试,再做失效性测试
  4. 通过性测试和失效性测试都必须做

判断题

  1. 计算机时间格式中的“千年虫”是一种软件缺陷。yes
  2. 测试工作的目标是完全测试一个软件,尽可能找出所有缺陷。no 因为完全测试一个软件一般是不可能的。
  3. 单元测试和集成测试之间的关系,正确的是,单元测试和集成测试都必须做,先做单元测试,再做集成测试。yes
  4. 灰盒测试是介于黑盒测试和白盒测试之间的一种测试技术。yes
  5. 导致软件无法启动的缺陷应当属于严重性1级、优先级1级。yes
  6. 在软件某部分发现软件缺陷越多,通常意味着还有更多的缺陷未发现。yes
  7. 如果测试工作中每天发现的软件缺陷数目持续明显下降至很少,通常说明:测试工作临近结束。yes
  8. 由于时间紧张,项目经理决定不做内部测试,直接交给用户作beta测试。no 该做法是错误的,beta测试不能取代正规的内部测试。
  9. 软件文档需要测试吗?需要 yes
  10. 没有产品说明书和需求文档的情况下能做黑盒测试。yes
  11. 关于软件缺陷的修复:
    ● 软件缺陷一经发现,必须修复,否则产品不能发布 no
    ● 测试员可以决定不修复软件缺陷 no
    ● 程序员可以拒绝修复软件缺陷,直接通知测试员该缺陷取消 no
    ● 被发现的软件缺陷是可能不予修复的,通常这由项目经理或者更高层决定 yes

填空题

  1. 软件测试员的目标是:尽可能早地发现软件缺陷并确保其得到修复

  2. 静态白盒测试的过程是:正式审查,它的方式有三种:同事审查、走查、检验;最正式最严格的是***检验***。
    在这里插入图片描述

  3. 动态白盒测试和调试的关系是在隔离缺陷的位置和原因上有交叉,但是目的不同,动态白盒测试是为了***发现软件缺陷***,后者是为了***修复缺陷***。

  4. 白盒测试的三种代码覆盖是***语句覆盖、分支覆盖、条件覆盖***,其中,***条件覆盖***是最好的最全面的。

  5. 如果开发小组规定,变量名必须用长度不超过8的小写英文字符串来表示,这是***标准***。

  6. 当测试员发现软件缺陷并且汇报时,软件缺陷进入***打开***状态;当程序员修复了缺陷之后,软件缺陷转入***解决***状态;当测试员最终确定软件缺陷已经不复存在,软件缺陷进入***关闭***状态。

  7. 如果程序员宣称已经修复了软件缺陷,测试员应该做***回归测试***,确定缺陷是否真的已不存在。

  8. 现实中产品的质量和可靠性并不一定是一致的,请举出一个实例来说明这一点:
    赛车,质量很高,但是可靠性很差

  9. 对于测试计划来说,最终生成详细的、书面的文档是***非必需***的

  10. 测试员不能保证软件质量。

  11. 软件的本地化不仅仅是翻译。

  12. 自动化测试工具***不能***取代测试员。

  13. 软件的错误提示信息用户很难理解***是***一种软件缺陷。

  14. 如果测试中一段时间里每天发现的软件缺陷的数目基本上保持不变,则说明此时测试工作还***不能***结束。

  15. 软件缺陷一旦被发现,***不一定***修复。

  16. Beta测试***不是***可有可无的。

  17. 测试中提到的所谓的“猴子”做的测试,指的是***随机测试***。

  18. 软件缺陷总是成群出现,意味着如果你在某个部分已经发现了很多软件缺陷,那么这个部分还有很多没有发现的缺陷。

  19. 没有计划,仅凭测试员坐在电脑前自由探索以找到缺陷,这种测试方法叫做***特别测试***。

  20. 如果程序员声称缺陷已修复,则测试员重新测试该部分以验证缺陷是否真的不存在了,这叫做***回归测试***。

简答题

1. 软件测试执行阶段分为几个步骤?

单元测试、集成测试、确认测试、系统测试、验收测试
在这里插入图片描述

2. 请列举软件开发生命周期的主要模式。

大爆炸模式、边写边改模式、瀑布模式、螺旋模式、敏捷开发

3. 关于黑盒测试和白盒测试:

黑盒测试是看不到软件的内部构造和源代码,测试软件在给定输入下的行为;
白盒测试可以查看软件内部构造和源代码,从而帮助确定测试用例;
编写黑盒测试用例的基础是产品说明书(需求说明书);
编写白盒测试用例的基础是代码。
白盒测试的功能比黑盒测试更强,但是不能说做了白盒测试的话就可以不做黑盒测试了,两种测试都必须做;
白盒测试因为要求读懂源代码,由此对测试员的要求比较高;

4. 列举几种不修复软件缺陷的原因:
  1. 进度中没有安排足够的时间
  2. 不是软件缺陷
  3. 修复风险太大,不值得
  4. 软件缺陷没有正确报告
5. 质量是免费的吗?请说明理由。

质量是免费的。产品的费用包括了一致性费用和不一致性费用,生产高质量的产品在前期可能带来较多的一致性费用,但是质量低劣的产品会带来后期巨大的不一致性费用,从而可能总的费用远远高于高质量的产品。所以,生产高质量的产品的费用并比不上生产低质量产品多。

6. 什么是单元测试?什么是集成测试?两者应当先做哪一个?

在底层进行的测试叫做单元测试,它测试基本模块;单元经过测试,底层软件缺陷找出来并修复之后,集成在一起,对模块的组合进行测试叫做集成测试。先做单元测试再做集成测试。

7. 软件质量保证人员的职责是什么?他们和测试员有什么区别?

软件质量保证人员的职责是检查和评估当前软件的开发过程,找出改进过程的方法,以达到防止软件缺陷出现的目标。
质量保证人员和测试人员的区别是:
第一:质量保证人员有权干预软件开发过程,有权要求开发人员按照他的建议改进开发过程,而测试人员没有这个权力;
第二:质量保证人员负责保证软件的质量,而测试人员不负责保证软件的质量;
做质量保证人员比做测试员更难,在软件开发过程中,他有更大的权力,同时,他也需要承担更大的责任。

8. 什么是测试桩?什么是测试驱动?两者的区别是什么?

测试驱动:自底而上的递增测试,编写称为测试驱动的模块调用正在被测试的模块,测试驱动以和将来真正模块相同的方式挂接,向被测试模块发送测试用例数据,接受返回结果,验证结果是否正确。
测试桩:自顶而下的递增测试,编写称为测试桩的模块,替换底层模块,充当被测试模块的接口,向被测试模块发送数据。
测试驱动和测试桩的区别是:两者替换的部分不同,前者替换被测试模块的高层模块,后者替换被测试模块的底层模块。

9. 软件缺陷的生命周期中的三种基本状态和两种扩展状态分别是什么?

基本状态:打开、解决、关闭;扩展状态:审查、推迟

10. 软件缺陷的生命周期的有哪三种基本状态?它们之间如何转换?

三种基本状态:打开、解决、关闭。
测试员发现缺陷并公开,软件缺陷变成打开状态;程序员修复之后转入解决状态;测试员做回归测试,确认缺陷已修复,进入关闭状态。

11. 什么是灰盒测试?它与白盒测试和黑盒测试的区别是什么?

灰盒测试介于黑盒测试和白盒测试之间,它将黑盒测试和白盒测试的界限打乱,测试时,仍然将软件视为黑盒子,但是通过简单查看软件内部的工作机制作为补充。灰盒测试不能够向白盒测试那样完整地看到源代码,也不像黑盒测试那样对软件的工作原理和机制一无所知,它能够看到部分软件的源代码以及了解软件的基本工作原理。

12. 请列举并简单介绍软件测试的四种基本技术。

静态黑盒测试:检查说明书,看看有没有问题。
动态黑盒测试:运行软件,在给定输入下,看看能否得到正确输出。
静态白盒测试:察看软件的源代码,找出缺陷。
动态白盒测试:查看源代码,据此设计测试用例,执行测试用例。

13. 所谓的测试“猴子”做的测试是指哪一种测试?它分为几种类型?

指随机测试。测试猴子分为三种:笨拙的猴子、半聪明的猴子、聪明的猴子。

14. 什么是确认?什么是验证?两者是不是等价的?

确认是保证软件符合产品说明书的过程;验证是保证软件满足用户要求的过程。两者不等价,通过确认过程的产品不一定能通过验证。

15. 什么是通过性测试?什么是失效性测试?在软件测试工作中应当先做哪一种?

通过性测试时确认软件至少能做什么,而不会考验其能力,软件测试员不需要想尽办法来使软件崩溃,仅仅运用最简单、最直观的测试用例;失效性测试是确信软件能够正确运行之后,采用各种方法来搞垮软件,使其崩溃。测试时应当先做通过性测试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值