软件测试理论基础测试题
- 格式:doc
- 大小:888.50 KB
- 文档页数:22
(完整版)软件测试基础习题及答案1、软件测试的定义?软件测试是⼀个过程或者⼀系列过程,⽤来确认计算和代码完成了其应该完成的功能,并且不执⾏其不应该有的操作。
2、软件测试的⽬标是什么?是想以最少的⼈⼒、物⼒和时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷提⾼软件质量,降低软件发布后由于潜在的软件错误和缺陷造成的隐患所带来的商业风险。
3、简单描述⼀下软件测试的原则?所有的软件测试都应追溯到⽤户需求应当把“尽早地和不断地进⾏软件测试”作为测试者的座右铭Good Enough原则质量第⼀充分注意测试中的群集现象程序员应避免检查⾃⼰的程序有据可依尽量避免软件测试的随意性,要有预期结果重视回归测试妥善保存⼀切测试过程⽂档4、软件测试中验证和确认的区别?Verfication 验证:是保证软件正确实现特定功能的⼀系列活动和过程。
⽬的是保证软件⽣命周期中的每⼀个阶段的成果满⾜上⼀个阶段设定的⽬标。
Validation 确认:是保证软件满⾜⽤户需求的⼀系列的活动和过程。
⽬的是在软件开发后保证与⽤户需求符合5、软件测试按照测试的基本策略可分为哪两种并加以详细说明?⽩盒测试:⽩盒测试也称结构测试或逻辑驱动测试,是指基于⼀个应⽤代码的内部逻辑知识,即基于覆盖全部代码、分⽀、路径、条件的测试,它是知道产品内部⼯作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进⾏,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确⼯作,⽽不顾它的功能,⽩盒测试的主要⽅法有逻辑驱动、基路测试等,主要⽤于软件验证。
⿊盒测试:⿊盒测试是指不基于内部设计和代码的任何知识,⽽基于需求和功能性的测试,⿊盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使⽤,在测试时,把程序看作⼀个不能打开的⿊盆⼦,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接⼝进⾏测试,它只检查程序功能是否按照需求规格说明书的规定正常使⽤,程序是否能适当地接收输⼊数锯⽽产⽣正确的输出信息,并且保持外部信息(如数据库或⽂件)的完整性。
软件测试基础试题及答案一、单项选择题(每题2分,共10题)1. 软件测试的目的是:A. 证明软件是正确的B. 证明软件存在错误C. 证明软件是无错误的D. 发现软件的缺陷答案:D2. 黑盒测试不关心以下哪一项:A. 输入数据B. 程序代码C. 测试用例D. 输出结果答案:B3. 以下哪个不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 维护测试E. 性能测试答案:E4. 软件测试的基本原则不包括:A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 测试可以证明程序是正确的答案:D5. 软件缺陷的严重性等级通常不包括以下哪一项:A. 致命B. 严重C. 一般D. 建议答案:D6. 软件测试计划应该包括以下哪一项:A. 测试范围B. 测试资源C. 测试进度D. 所有上述内容答案:D7. 以下哪个不是软件测试的阶段?A. 需求分析B. 测试设计C. 测试执行D. 测试报告E. 代码编写答案:E8. 软件测试中,回归测试的目的是什么?A. 验证新添加的功能B. 验证修复的缺陷C. 验证软件的整体性能D. 验证软件的兼容性答案:B9. 软件测试中,压力测试和负载测试的区别在于:A. 压力测试关注系统在极端条件下的表现B. 负载测试关注系统在正常工作负载下的表现C. 压力测试关注系统在正常工作负载下的表现D. 负载测试关注系统在极端条件下的表现答案:A10. 软件测试中的“等价类划分”技术主要用于:A. 减少测试用例的数量B. 增加测试用例的数量C. 改变测试用例的顺序D. 改变测试用例的内容答案:A二、多项选择题(每题3分,共5题)1. 软件测试过程中可能使用的测试用例设计技术包括:A. 边界值分析B. 决策表测试C. 状态转换测试D. 错误猜测E. 随机测试答案:A, B, C, D2. 软件测试的基本原则包括:A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 缺陷聚集原则E. 测试可以证明程序是正确的答案:A, B, C, D3. 软件测试的文档通常包括:A. 测试计划B. 测试用例C. 测试报告D. 缺陷报告E. 用户手册答案:A, B, C, D4. 软件测试的目的是:A. 验证软件的功能B. 验证软件的性能C. 验证软件的安全性D. 验证软件的兼容性E. 证明软件是无错误的答案:A, B, C, D5. 软件测试中,以下哪些是测试的类型:A. 单元测试B. 集成测试C. 系统测试D. 验收测试E. 性能测试答案:A, B, C, D, E三、判断题(每题1分,共5题)1. 软件测试可以完全替代人工测试。
软件测试基础练习题库(附参考答案)一、单选题(共90题,每题1分,共90分)1.下面的哪项测试步骤中需要进行局部数据结构测试()A、单元测试B、系统测试C、集成测试D、确认测试正确答案:A2.()也称功能测试,它是通过测试来检测每个功能是都能正常使用。
A、动态测试B、系统测试C、压力测试D、黑盒测试正确答案:D3.软件生存周期过程中,修改错误最大的阶段是()A、设计阶段B、需求阶段C、发布运行阶段D、编程阶段正确答案:C4.以程序的内部结构为基础的测试用例技术属于()A、白盒测试B、数据测试C、黑盒测试D、灰盒测试正确答案:A5.以下说法正确的是()A、自底向上的集成测试需要测试人员编写测试驱动程序B、非功能质量属性越高越好C、单元测试是对软件基本组成单元进行测试,即测试对象一定是一个函数D、系统备份与恢复中的数据备份与恢复通常只需要针对业务/用户数据正确答案:B6.数据流覆盖关注的是程序中某个变量从其声明、赋值到引用的变化情况,它是下列哪一种覆盖的变种()A、分支覆盖B、语句覆盖C、控制覆盖D、路径覆盖正确答案:D7.软件测试的目的()A、尽可能发现并排出软件中潜藏的错误,提高软件的可靠性B、发现软件开发中出现的错误C、避免软件开发中出现的错误D、修改软件中出现的错误正确答案:B8.下列可以作为软件测试对象的是()A、需求规格说明书B、软件设计规格说明C、源程序D、以上全部正确答案:D9.下面有关软件缺陷的说法中错误的是()A、缺陷就是导致系统程序崩溃的错误B、缺陷开始软件维护过程中存在的错误、毛病等各种问题C、缺陷就是系统所需要实现某种功能的失效和违背D、缺陷就是软件产品在开发中存在的错误正确答案:A10.下列方法中,不属于黑盒测试的是()A、基于场景的测试方法B、边界值分析法C、基本路径测试法D、等价类测试法正确答案:C11.在GB/T17544中,软件包质量要求包括三部分,即产品描述要求、()、程序和数据要求A、用户文档要求B、系统功能要求C、设计要求说明D、软件配置要求正确答案:A12.用黑盒技术设计测试用例的方法之一为()A、循环覆盖B、基本路径测试C、逻辑覆盖D、因果图正确答案:D13.为了提高测试的效率,应该()A、取一切可能的输入数据作为测试数据B、选择发现错误的可能性C、随机的选取测试数据D、在完成编码以后指定软件的测试计划正确答案:B14.CMMI 共有几个级别()A、3个B、4个C、5个D、6个正确答案:C15.软件的六大质量特性包括:()A、功能性、可靠性、可用性、效率、稳定性、可移植B、功能性、可靠性、可拓展性、效率、稳定性、可移植C、功能性、可靠性、兼容性、效率、稳定性、可移植D、功能性、可靠性、可用性、效率、可维护、可移植正确答案:D16.在没有需求文档和产品说明书的情况下只有哪一种测试方法可以进行的()A、语句覆盖测试B、路径分析测试C、条件覆盖测试D、错误推断测试正确答案:D17.在模块测试的过程中,采用自底向上的测试比自顶向下的测试()A、不确定B、好C、差D、一样正确答案:B18.软件测试的目的是()A、修改软件中出现的错误B、尽可能发现并排除软件中潜藏的错误,提高软件的可靠性C、发现软件开发中出现的错误D、避免软件开发中出现的错误正确答案:C19.下列关于测试方法的叙述中不正确的是()A、对功能的测试通常是要考虑程序的内部结构B、结构测试属于白盒测试C、功能测试属于黑盒测试D、从某种角度上讲,白盒测试与黑盒测试都属于动态测试正确答案:A20.功能测试的目的是()A、保证软件的功能符合软件需求B、保证系统没有错误C、保证用户方便使用D、保证软件性能符合设计的要求正确答案:A21.Excel软件可用于()A、文字处理B、幻灯片制作C、电子表格处理D、设计程序正确答案:C22.软件可靠性是指在指定的条件下使用时,软件产品维持规定的性能级别的()A、可靠性依从性B、容错性C、易恢复性D、成熟性正确答案:B23.下列关于软件测试的叙述中,选择出全部正确的一组()1)用黑盒测试时,测试用例是根据程序内部逻辑设计的2)尽量用公共过程或子程序去代替重复的代码段3)测试是为了验证该软件已正确的实现了用户的要求4)对于连锁型分支结构,若有n个判定语句,则有2n条路径5)尽量采用复合的条件测试,以避免嵌套的分支结构6)语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁 7)发现错误多的程序模块,残留在模块中的错误也多8)黑盒测试方法中最有效的是因果图法9)在做程序的单元测试时,桩(存根)模块比驱动模块容易编写10)程序效率的提高主要应通过选择高效的算法来实现A、4)5)6)7)10)B、1)2)4)5)7)C、2)4)5)7)9)D、以上描述全部正确正确答案:A24.下列软件属性中,软件产品首要满足的应该是()A、容错纠错能力B、功能需求C、性能需求D、可扩展性和灵活性正确答案:B25.黑盒测试是从()观点出发的测试,而白盒测试是从()观点出发的测试A、用户、开发人员B、用户、管理人员C、开发人员、管理人员D、开发人员、用户正确答案:A26.坚持在软件的各个阶段实施下列哪种质量保障措施,才能在开发过程中尽早发现和预防错误,把出现的错误克服在早期()A、管理评审B、技术评审C、改正程序错误D、程序测试正确答案:B27.SQL语言中删除一个表的语句是()A、Drop tableB、Delete tableC、destroy tableD、remove table正确答案:A28.以下哪一种选项不属于软件缺陷()A、软件实现了产品规格说明所要求的功能但因受性能限制而未考虑可移植性问题B、软件中出现了产品规格说明不应该出现的功能C、软件没有实现产品规格说明所要求的功能D、软件实现了产品规格没有提到的功能正确答案:A29.下面有关测试原则的说法正确的是()A、程序最好由编写该程序的程序员自己来测试B、使用测试用例进行测试是为了检查程序是否做了它该做的事C、测试用例应由测试的输入数据和预期的输出结果组成D、测试用例只需选取合理的输入数据正确答案:C30.对程序的测试最好由谁来做,对程序的调试最好由谁来做()A、程序开发组/程序开发组B、程序开发组/程序员C、第三方测试机构/程序员D、程序员/第三方测试机构正确答案:C31.为了提高测试的效率,正确的做法是()A、随机选取测试用例B、使用测试用例测试是为了检查程序是否做了应该做的事C、在完成程序的编码之后再制定软件的测试计划D、选择发现错误可能性大的数据作为测试用例正确答案:D32.集成测试对系统内部的交互以及集成后系统功能检验了何种质量特性()A、正确性B、可靠性C、可维护性D、可使用性正确答案:A33.黑盒测试法是根据产品的()来设计测试用例的A、功能B、内部逻辑C、输入数据D、应用范围正确答案:A34.单元测试中用来模拟被测模块调用者模块是()A、子模块B、父模块C、桩模块D、驱动模块正确答案:D35.大多数实际情况下,性能测试的实现方法是()A、白盒测试B、静态分析C、黑盒测试D、可靠性测试正确答案:C36.正式的技术评审FTR(Formal Technical Review)是软件工程师组织的软件质量保证活动,下面关于FTR指导原则中错误的是()A、要有严格的评审计划,并遵守日程安排B、限制参与者人数,并要求评审会之前做好准备C、评审产品,而不是评审生产者的能力D、对评审中出现的问题要充分讨论,以求彻底解决正确答案:D37.在进行单元测试时,常用的方法是()A、只使用白盒测试B、采用白盒测试,辅之以黑盒测试C、只使用黑盒测试D、采用黑盒测试,辅之以白盒测试正确答案:A38.单元测试中设计测试用例的依据是()A、用户需求规格说明书B、详细设计规格说明书C、项目计划说明书D、概要设计规格说明书正确答案:B39.下列项目中不属于测试文档的是()A、测试报告B、程序流程图C、测试用例D、测试计划正确答案:B40.测试ATM取款功能,已知取款数只能输入正整数,每次取款数要求是100的倍数且不能大于500,下面哪个是正确的无效等价类()A、<li>(0,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞)</pre></li>B、<li>(500,+∞)</pre></li>C、<li>(500,+∞)、任意大于0小于500的非100倍数的整数</pre></li>D、<li>(-∞,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞)</pre></li>正确答案:C41.在数据结构中,从逻辑上可以把数据结构分成()A、内部结构和外部结构B、线性结构和非线性结构C、紧凑结构和非紧凑结构D、动态结构和静态结构正确答案:B42.经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误较多,则该模块中残存的错误数目与其他模块相比,通常应该()A、较少B、相似C、较多D、不确定正确答案:C43.通常可分为白盒测试和黑盒测试。
初级软件测试试题及答案一、单项选择题(每题2分,共20分)1. 软件测试的目的是()。
A. 证明软件是正确的B. 发现软件中的缺陷C. 证明软件是错误的D. 证明软件是完美的答案:B2. 黑盒测试不关心的是()。
A. 输入数据B. 输出结果C. 程序代码D. 程序流程答案:C3. 以下哪项不是软件测试的类型()。
A. 功能测试B. 性能测试C. 压力测试D. 代码测试答案:D4. 软件测试的基本原则不包括()。
A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 测试可以证明软件无缺陷答案:D5. 软件测试的目的是()。
A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的D. 证明软件是完美的答案:A6. 软件测试的目的是()。
A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的D. 证明软件是完美的答案:A7. 软件测试的目的是()。
A. 发现尽可能多的软件缺陷C. 证明软件是错误的D. 证明软件是完美的答案:A8. 软件测试的目的是()。
A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的D. 证明软件是完美的答案:A9. 软件测试的目的是()。
A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的答案:A10. 软件测试的目的是()。
A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的D. 证明软件是完美的答案:A二、多项选择题(每题3分,共15分)1. 软件测试的主要类型包括()。
A. 功能测试B. 性能测试C. 压力测试D. 兼容性测试E. 安全性测试答案:ABCDE2. 软件测试的基本原则包括()。
A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 缺陷集群E. 测试可以证明软件无缺陷答案:ABCD3. 软件测试的目的包括()。
A. 发现尽可能多的软件缺陷B. 证明软件是正确的C. 证明软件是错误的E. 评估软件的质量答案:AE4. 软件测试的目的是()。
一、选择题1.软件测试的主要目的是:A.证明软件中没有错误。
B.找出软件中的所有错误。
C.验证软件是否满足规定的需求。
(答案)D.确保软件的界面美观。
2.以下哪项不属于软件测试的基本原则?A.测试用例应由测试人员和开发人员共同设计。
B.避免测试自己编写的程序。
C.测试应尽早开始,并在软件开发生命周期中持续进行。
(答案)D.只需关注功能的正确性,无需考虑性能。
3.黑盒测试主要关注软件的哪个方面?A.内部结构和工作原理。
B.功能是否按照需求规格说明书实现。
(答案)C.代码执行路径。
D.系统资源使用情况。
4.在软件测试中,等价类划分是一种常用的:A.白盒测试技术。
B.黑盒测试技术。
(答案)C.性能测试技术。
D.安全测试技术。
5.下列哪项是回归测试的主要目的?A.检查软件新版本中是否引入了新的错误。
(答案)B.验证软件是否能在不同操作系统上运行。
C.测试软件的安装和卸载过程。
D.评估软件的响应时间。
6.以下哪个阶段不是软件测试生命周期的一部分?A.测试计划。
B.测试设计。
C.测试执行。
D.代码审查。
(答案)7.单元测试主要针对的是:A.整个系统的功能。
B.模块间的接口。
C.单个模块的功能。
(答案)D.非功能需求,如性能。
8.下列哪项不是集成测试的关注点?A.模块间的数据流。
B.模块间的功能调用。
C.单个模块的内部逻辑。
(答案)D.模块间的接口错误。
9.系统测试通常在哪个阶段进行?A.编码完成后,集成测试之前。
B.集成测试完成后,交付给用户之前。
(答案)C.需求分析完成后,设计开始之前。
D.项目计划阶段。
10.验收测试的主要参与者是:A.开发人员和测试人员。
B.测试人员和项目经理。
C.用户或客户。
(答案)D.需求分析人员和设计师。
软件测试基础考试(答案见尾页)一、选择题1. 软件测试的目的是什么?A. 评估软件的质量B. 发现软件中的错误和缺陷C. 提高软件的性能D. 增加用户的满意度2. 在进行软件测试时,首先要确定的是?A. 测试环境设置B. 测试用例设计C. 测试工具选择D. 测试计划制定3. 下列哪个选项不是黑盒测试的特点?A. 侧重于软件的内部结构和逻辑B. 依据需求规格说明书来设计测试用例C. 不考虑程序的内部结构和实现细节D. 通过运行程序来检测错误4. 白盒测试与黑盒测试的主要区别是什么?A. 测试人员是否需要了解程序的内部结构B. 是否需要编写测试用例C. 测试的范围和方法D. 是否关注程序的功能实现5. 验证型测试与冒烟测试在软件测试中的作用是什么?A. 验证软件功能是否正常B. 发现软件中可能存在的更深层次的问题C. 保证软件的稳定性D. 评估软件的兼容性6. 在软件测试中,常用的静态分析技术有哪些?A. 代码审查B. 数据流分析C. 控制流分析D. 切片技术7. 下列哪个术语描述了测试用例的一个具体实例?A. 测试场景B. 测试数据C. 测试步骤D. 测试报告8. 回归测试的目的是什么?A. 确保修改不会引入新的错误B. 重新验证已知的正确功能C. 检查软件的适应性D. 提高软件的可维护性9. 在软件测试中,常用的集成测试策略有哪些?A. 自顶向下集成B. 自底向上集成C. 分支模型集成D. 三明治集成10. 什么是验收测试?它的主要目的是什么?A. 验证软件是否符合用户需求B. 发现软件中的错误和缺陷C. 评估软件的性能D. 提高软件的可扩展性11. 软件测试的目的是什么?A. 评估软件的质量和性能B. 确保软件满足用户需求C. 识别和修复软件中的错误D. 预防软件缺陷12. 在软件测试中,常用的测试方法有哪些?A. 功能测试B. 性能测试C. 兼容性测试D. 安全性测试13. 黑盒测试与白盒测试的区别是什么?A. 黑盒测试关注软件的内部结构和实现细节,而白盒测试关注软件的接口和程序逻辑。
软件测试理论知识模考试题+答案一、单选题(共70题,每题1分,共70分)1、如果某段代码简明、易懂并且注释准确没有歧义,那么我们说此代码具备()。
A、一致性B、规范性C、清晰性D、正确性正确答案:C2、编码阶段的测试目标是确定程序代码的质量,代码质量的确定依据是()。
A、执行程序评估工作,分析程序是否是设计说明的正确翻译,是否与程序编码标准相符B、设计规格说明可跟踪到程序相应的代码,程序代码可跟踪到设计需求C、以上全部D、分析程序接口并与接口文档相对照正确答案:C3、关于白盒测试与黑盒测试的最主要区别,正确的是()。
A、白盒测试侧重于程序结构,黑盒测试侧重于功能B、白盒测试可以使用测试工具,黑盒测试不能使用工具C、黑盒测试比白盒测试应用更广泛D、白盒测试需要程序员参与,黑盒测试不需要正确答案:A4、下列各项中___不是一个测试计划所应包含的内容A、测试资源、进度安排B、测试策略C、测试预期输出D、测试范围正确答案:C5、进行兼容性测试的目的在于()。
A、测试程序在不同的平台上可以正常运行B、测试程序与平台上的其他程序可以同时正常运行C、以上选项都正确D、测试数据格式在不同应用程序之间可以通用正确答案:C6、当对发现的缺陷进行修改之后,执行一系列基准测试,以确认程序的修改没有对程序的其他部分产生干扰。
这种测试通常称为()。
A、系统测试B、回归测试C、验证测试D、确认测试正确答案:B7、单元测试中用来模拟被测模块调用者的模块是( )A、子模块B、父模块C、桩模块D、驱动模块正确答案:D8、集成测试分为渐增组装测试和()A、非渐增组装测试B、测试计划C、确认测试D、单元测试正确答案:A9、()是一种关注变量定义赋值点(语句)和引用或使用这些值的点(语句)的结构性测试,主要用作路径测试的真实性检查。
A、决策表B、基本路径测试C、数据流测试D、逻辑覆盖正确答案:C10、对程序的调试最好由()来做A、第三方测试机构B、程序开发组C、程序员D、客户正确答案:C11、数据流覆盖关注的是程序中某个变量从其声明,赋值到引用的变化情况,它是下列哪种覆盖的变种A、分支覆盖B、控制覆盖C、语句覆盖D、路径覆盖正确答案:D12、软件的单元测试工作通常是由( )完成。
软件测试基础试题及答案详解大全一、单项选择题1. 软件测试的目的是以下哪项?A. 确保软件没有错误B. 确保软件符合用户需求C. 发现并修复所有软件缺陷D. 增加软件的销售量答案:B详解:软件测试的主要目的是确保软件产品符合用户的需求和预期,而不仅仅是发现错误或增加销量。
2. 黑盒测试不关心以下哪项内容?A. 输入数据B. 程序内部结构C. 测试用例设计D. 输出结果答案:B详解:黑盒测试,又称为功能测试或数据驱动测试,只关心软件的功能和输出,而不关心程序的内部结构。
3. 以下哪项不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 项目管理答案:D详解:项目管理不属于软件测试的类型,它是软件开发过程中的一个独立领域。
二、多项选择题1. 以下哪些属于软件测试的阶段?A. 需求分析B. 单元测试C. 集成测试D. 维护测试答案:B, C, D详解:需求分析是软件开发的早期阶段,不属于软件测试阶段。
单元测试、集成测试和维护测试都是软件测试的不同阶段。
2. 在软件测试中,哪些信息是测试人员需要了解的?A. 软件需求B. 软件设计C. 用户手册D. 测试工具答案:A, B, C详解:测试人员需要了解软件需求、软件设计和用户手册,以便更好地设计测试用例和执行测试。
测试工具是可选的,取决于测试的具体环境和需求。
三、判断题1. 所有的软件缺陷都可以在测试阶段被发现。
(对/错)答案:错详解:尽管软件测试旨在发现尽可能多的缺陷,但由于时间和资源的限制,以及测试本身的局限性,不可能发现所有的软件缺陷。
2. 自动化测试可以完全替代手动测试。
(对/错)答案:错详解:自动化测试和手动测试各有优势和局限性。
自动化测试可以高效地执行重复性高的测试,而手动测试则更适用于探索性测试和用户交互界面的测试。
两者通常结合使用以提高测试效率和覆盖率。
四、简答题1. 什么是回归测试,为什么要进行回归测试?答案:回归测试是指在软件已经通过测试并发布后,由于修复了某个缺陷或在软件中添加了新的功能,需要重新进行的测试。
软件测试理论知识模拟试题与参考答案一、单选题(共70题,每题1分,共70分)1、下列哪个模型没有采用迭代的思想()A、渐增模型B、RUP模型C、螺旋模型D、瀑布模型正确答案:D2、有一个功能增强型的项目,其以前的产品已经很稳定,并且新增的项目只有少数几个构件被增加或修改,那么对该项目进行集成测试最适合采用的策略是( )。
A、基于功能的集成策略B、自项向下集成策略C、非增量集成策略D、自底向上集成策略正确答案:C3、用来代替被测模块的子模块的是()A、调用模块B、配置模块C、驱动模块D、桩模块正确答案:D4、测试“关闭文件”操作时,下列说法不正确的是()。
A、编辑文件后保存,文件正常关闭B、编辑文件后不保存,单击窗口右上角的关闭按钮,系统应有是否保存再关闭类似的提示C、编辑文件后不保存,从任务管理器中结束任务,程序应直接被关闭D、编辑文件后不保存,直接从菜单关闭,系统应有是否保存再关闭类似的提示正确答案:A5、下列不属于系统模块等级的是( )A、高危模块B、一般模块C、低危模块D、缺陷模块正确答案:D6、下列项目中不属于测试文档的是( )A、测试计划B、测试报告C、测试用例D、程序流程图正确答案:D7、在设计一个充分的健壮性测试思路上通常考虑使用的策略有( )。
1)基于覆盖率的策略 2)基于可靠性的策略 3)基于错误的策略4)基于失效的策略A、1)和3)B、1)C、1)和3)和4)D、所有都应考虑正确答案:C8、在各种资源超负荷情况下,观察系统的运行情况的测试是什么测试方法( )。
A、负载测试B、容量测试C、压力测试D、失效恢复测试正确答案:C9、对下列产品进行测试,要优先考虑自底向上集成策略的是( )。
A、采用契约式设计的产品B、底层接口比较稳定的产品C、以上全部D、高层接口变化极为频繁的产品正确答案:C10、()是设计足够多的测试用例,使得程序中每个判定包含的每个条件的所有情况(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少出现一次。
出题审阅批准一、填空题(每空1分,共30分)1、软件测试过程包括测试准备,测试计划,测试用例设计,测试执行,测试结果分析。
2、软件测试文档主要有测试计划,测试用例和测试报告3种,其中测试计划是这些测试文档中最关键的。
3、禅道提交缺陷时,包含有项目名称,版本号,缺陷类型,缺陷等级,优先级,缺陷标题,错误重现,附件等内容。
4、配置FTP服务器时,需要配置服务器地址,端口号,上传地址等内容。
4、MYSQL数据库管理员账号和默认端口号分别是root,3306。
5、在window操作系统上,查看本机ip地址的命令是 ipconfig 。
6、编写黑盒测试用例的方法有:等价类划分,边界值分析,正交实验法,流程图,错误推测法,因果图,决策表法等。
7、windows和Linux操作系统中,可以用ping命令查看两台机器是否相通。
8、电影《战狼2》火爆上演,为了验证售票系统能否承受购票压力,我们需要对该系统进行压力/性能测试。
9、windows操作系统下,启动tomcat的文件是/bin/startup.bat。
8、Java的环境变量设置步骤中需要设置java_home,path两个系统变量。
9、某个项目有200千行代码,软件测试小组在测试工作中共找出900个软件缺陷,其软件缺陷密度是 4.5个/千行。
10、postman是一款接口测试工具,httpwatch是一款抓包工具。
二.选择题(每小题2分,共30分)1、下列哪项是有些缺陷不被修复的完整原因?(C )(1)没有足够的时间(2)修复的风险太大(3)不值得修复(4)不算真正的软件缺陷A.(1)(2)(4)B.(2)(3)C.(1)(2)(3)(4)D.(2)(4)2、为验证王菲音乐会订票系统是否能够承受大量用户同时访问,测试工程师一般采用(C )测试工具。
A. 故障诊断B. 代码C. 负载压力D. 网络仿真3、黑盒测试中,( C )是根据输出对输入的依赖关系设计测试用例。
软件测试题及答案一、单选题(每题2分,共10分)1. 软件测试的目的是什么?A. 证明软件是正确的B. 发现软件中的错误C. 证明软件无错误D. 确保软件满足用户需求答案:B2. 黑盒测试和白盒测试的主要区别是什么?A. 测试用例的编写方式B. 测试数据的来源C. 测试人员的技能要求D. 测试的自动化程度答案:A3. 以下哪个不是软件测试的类型?A. 功能测试B. 性能测试C. 兼容性测试D. 代码测试答案:D4. 单元测试通常由谁来执行?A. 测试工程师B. 开发人员C. 项目经理D. 用户答案:B5. 软件测试的基本原则是什么?A. 尽早和持续地进行测试B. 测试应该由开发人员完成C. 测试应该在开发完成后进行D. 测试应该覆盖所有可能的输入答案:A二、多选题(每题3分,共15分)6. 软件测试的主要阶段包括哪些?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD7. 性能测试通常关注哪些方面?A. 响应时间B. 吞吐量C. 资源利用率D. 软件稳定性答案:ABCD8. 软件缺陷的严重性等级通常包括哪些?A. 致命B. 严重C. 一般D. 轻微答案:ABCD9. 以下哪些是软件测试中常用的测试方法?A. 等价类划分B. 边界值分析C. 决策表D. 状态转换答案:ABCD10. 软件测试的自动化可以带来哪些好处?A. 提高测试效率B. 减少人为错误C. 提高测试覆盖率D. 降低测试成本答案:ABCD三、判断题(每题1分,共5分)11. 回归测试是指在软件修改后重新执行测试以确保修改没有引入新的错误。
(正确)12. 测试用例是测试计划的一部分,用于指导测试的执行。
(错误)13. 软件测试可以完全替代用户验收测试。
(错误)14. 测试覆盖率是指测试用例覆盖到的代码行数与总代码行数的比例。
(正确)15. 软件测试的目的是发现尽可能多的错误,而不是证明软件无错误。
(正确)结束语:通过以上题目的练习,可以加深对软件测试基本概念和方法的理解,为实际的软件测试工作打下坚实的基础。
软件测试技术基础教程理论试题单选题,共10题第1题,分值:(2)http请求中用于追踪传输路径的是:()A : TRACEB : OPTIONSC : DELETED : PUT第2题,分值:(2)下列软件实施活动的进入准则描述错误的是:()A : 需求工件已经被基线化B : 详细设计工件已经被基线化C : 构架工件已经被基线化D : 项目阶段成果已经被基线化第3题,分值:(2)linux下,解压缩文件的命令为?()A : tarzxvf文件名B : COPY文件名C : CAT文件名D : VI文件名第4题,分值:(2)选出属于白盒测试方法:()A : 测试用例覆盖B : 输入覆盖C : 输出覆盖D : 条件覆盖第5题,分值:(2)有一组测试用例,它使被测程序中的每一个分支至少执行一次,它满足的覆盖标准是:()A : 语句覆盖B : 判定覆盖C : 条件覆盖D : 路径覆盖第6题,分值:(2)()可以作为软件测试结束的标志。
A : 使用了特定的测试用例B : 错误强度曲线下降到预定的水平C : 查出了预定数目的错误D : 按照测试计划中所规定的时间进行了测试第7题,分值:(2)http请求中用于获得报文首部的是()。
A : POSTB : HEADC : TRACED : GET第8题,分值:(2)验收测试的测试用例主要根据()的结果来设计。
A : 需求分析B : 源程序C : 概要设计D : 详细设计第9题,分值:(2)在使用匿名登录ftp时,用户名为()。
A : usersB : anonymousC : rootD : guest第10题,分值:(2)下列哪个选项不属于测试计划要达到的目标()。
A : 为测试各项活动制定一个现实可行的、综合的计划,包括每项测试活动的对象、范围、方法、进度和预期结果B : 为项目实施建立一个组织模型,并定义测试项目中每个角色的责任和工作内容C : 为测试执行活动设计测试方案,编制测试用例D : 确定测试需要的时间和资源,以保证其可获得和有效性多选题,共5题第11题,分值:(4)软件质量管理(QM)应有质量保证(QA)和质量控制(QC)组成,下面的选项属于QC得是:()A : 测试B : 跟踪C : 监督D : 制定计划E : 需求审查F : 程序代码审查第12题,分值:(4)TCP/IP模型中传输层协议有:()A : TCPB : HTTPC : FTPD : UDP第13题,分值:(4)进行软件质量管理的重要性有:()A : 维护降低成本B : 法律上的要求C : 市场竞争的需要D : 质量标准化的趋势E : 软件工程的需要F : CMM过程的一部分G : 方便与客户进一步沟通为后期的实施打好基础第14题,分值:(4)实施缺陷跟踪的原因是:()A : 软件质量无法控制B : 问题无法量化C : 重复问题接连产生D : 解决问题的知识无法保留E : 确保缺陷得到解决F : 使问题形成完整的闭环处理第15题,分值:(4)典型的瀑布模型的四个阶段是:()A: 分析B : 设计C : 编码D : 测试E : 需求调研F : 实施判断题,共10题第16题,分值:(1)数据库设计前只需选择数据库分析设计人员。
一、选择题1.软件测试的目的是( ).A)试验性运行软件B)发现软件错误C)证明软件正确D)找出软件中全部错误2.软件测试中白盒法是通过分析程序的( )来设计测试用例的.A)应用范围B)内部逻辑C)功能D)输入数据3.黑盒法是根据程序的( )来设计测试用例的.A)应用范围B)内部逻辑C)功能D)输入数据4.为了提高软件测试的效率,应该( ).A)随机地选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后制定软件的测试计划D)选择发现错误可能性最大的数据作为测试用例5.与设计测试用例无关的文档是( ).A)项目开发计划B)需求规格说明书C)设计说明书D)源程序6.测试的关键问题是( ).A)如何组织软件评审B)如何选择测试用例C)如何验证程序的正确性D)如何采用综合策略7.软件测试用例主要由输入数据和( )两部分组成.A)测试计划B)测试规则C)预期输出结果D)以往测试记录分析8.成功的测试是指运行测试用例后( ).A)未发现程序错误B)发现了程序错误C)证明程序正确性D)改正了程序错误9.下列几种逻辑覆盖标准中,查错能力最强的是( ).A)语句覆盖B)判定覆盖C)条件覆盖D)条件组合覆盖10.在黑盒测试中,着重检查输入条件组合的方法是( ).A)等价类划分法B)边界值分析法C)错误推测法D)因果图法11.单元测试主要针对模块的几个基本特征进行测试,该阶段不能完成的测试是( ).A)系统功能B)局部数据结构C)重要的执行路径D)错误处理12.软件测试过程中的集成测试主要是为了发现( )阶段的错误.A)需求分析B)概要设计C)详细设计D)编码13.不属于白盒测试的技术是( ).A)路径覆盖B)判定覆盖C)循环覆盖D)边界值分析14.集成测试时,能较早发现高层模块接口错误的测试方法为( ).A)自顶向下渐增式测试B)自底向上渐增式测试C)非渐增式测试D)系统测试15.确认测试以( )文档作为测试的基础.A)需求规格说明书B)设计说明书C)源程序D)开发计划16.使用白盒测试方法时,确定测试数据应根据( )和指定的覆盖标准.A)程序内部逻辑B)程序的复杂度C)使用说明书D)程序的功能17.程序的三种基本结构是( ).A)过程子,程序,分程序B)顺序,选择,循环C)递归,堆栈,队列D)调用,返回,转移18.结构化程序设计的一种基本方法是( )A)筛选法B)递归法C)归纳法D)逐步求精法19.软件调试的目的是( )A)找出错误所在并改正之B)排除存在错误的可能性C)对错误性质进行分类D)统计出错的次数20.程序三种基本结构的共同特点是( )A)不能嵌套使用B)只能用来写简单程序C)已经用硬件实现D)只有一个入口和一个出口21.下面说法正确的是( ).A)经过测试没有发现错误说明程序正确B)测试的目标是为了证明程序没有错误C)成功的测试是发现了迄今尚未发现的错误的测试D)成功的测试是没有发现错误的测试22.覆盖准则最强的是( ).A)语句覆盖B)判定覆盖C)条件覆盖D)路径覆盖23.发现错误能力最弱的是( ).A)语句覆盖B)判定覆盖C)条件覆盖D)路径覆盖24.实际的逻辑覆盖测试中,一般以( )为主设计测试用例.A)条件覆盖B)判定覆盖C)条件组合覆盖D)路径覆盖25.下面( )方法能够有效地检测输入条件的各种组合可能引起的错误.A)等价类划分B)边界值分析C)错误推测D)因果图26.与确认测试阶段有关的文档是( ).A)需求规格说明书B)概要设计说明书C)详细设计说明书D)源程序27.超出软件工程范围的测试是( ).A)单元测试B)集成测试C)确认测试D)系统测试28.软件测试不需要了解软件设计的( ).A)功能B)内部结构C)处理过程D)条件29.( )方法需要考察模块间的接口和各模块之间的联系.A)单元测试B)集成测试C)确认测试D)系统测试30.调试应该由( )完成.A)与源程序无关的程序员B)编制该源程序的程序员C)不了解软件设计的机构D)设计该软件的机构31.基线是软件生存期中各开发阶段的一个特定点,它可作为一个检查点,当采用的基线发生错误时,我们可以返回到最近和最恰当的( )上.A)配置项B)程序C)基线D)过程32.版本管理是对系统不同版本进行的( )过程A)标识与跟踪B)标识变更C)发布变更D)控制变更33.在变更控制中,管理各个用户存取和修改一个特定软件配置对象的权限是( ).A)异步控制B)同步控制C)存取控制D)基线控制34. 在配置管理中,"登入"和"检出"处理实现了两个重要的变更控制要素,即同步控制和( ).A)异步控制B)同步控制C)基线控制D)存取控制35. 按照软件配置管理的原始指导思想,受控制的对象应是( ).A)软件元素B)软件配置项C)软件项目D)软件过程36. 软件配置项是软件配置管理的对象,指的是软件工程过程中所产生的( ).A)接口B)软件环境C)信息项D)版本37.在变更控制中,可用来确保由不同用户所执行的并发控制是( ).A)异步控制B)同步控制C)存取控制D)基线控制38.以下说法错误的是( ).A)软件配置管理简称SCIB)软件配置项是配置管理的基本单位C)软件配置实际上是一动态的概念D)软件工程过程中某一阶段的变更均要引起软件配置的变更39.在设计人机界面时,应主要考虑的因素有( ).系统响应时间B)错误处理C)用户求助机制D)以上都是40.人机界面的风格大致经过了( )代的演变A)一B)二C)三D) 四二、填空题1.软件测试的目的是尽可能多地发现软件中存在的(),将()作为纠错的依据.2.测试阶段的基本任务是根据软件开发各阶段的()和程序的(),精心设计一组(),利用这些实例执行(),找出软种()和().3.测试用例由()和预期的()两部分组成.4.软件测试方法一般分为两大类:()方法和()方法.5.动态测试通过()发现错误.根据()的设计方法不同,动态测试又分为()与()两类.6.静态测试采用()和()的手段对程序进行检测.7.人工审查程序偏重于()的检验,而软件审查除了审查()还要对各阶段()进行检验.8.计算机辅助静态分析利用()工具对测试程序进行()分析.9.黑盒法只在软件的()处进行测试,依据()说明书,检查程序是否满足()要求.10.白盒法必须考虑程序的()和(),以检查()的细节为基础,对程序中尽可能多的逻辑路径进行().11.白盒测试是()测试,被测对象是(),以程序的()为基础设计测试用例.12.逻辑覆盖是对程序内部有()存在的逻辑结构设计测试用例,根据程序内部的逻辑覆盖程度又可分为(),(),()()6种覆盖技术.13.实际的逻辑覆盖测试中,一般以()覆盖为主设计测试用例,然后再补充部分用例,以达到()覆盖测试标准.14.循环覆盖是对程序内部有()存在的逻辑结构设计测试用例,它通过限制()来测试.15.基本路径测试是在程序()基础上,通过分析控制构造的()复杂性,导出()集合,从而设计测试用例.16.黑盒测试是()测试,用黑盒技术设计测试用例有4种方法:(),(),()和().17.等价类划分从程序的()说明,找出一个输入条件通常是()或(),然后将每个输入条件划分成两个或多个()18.边界值分析是将测试()情况作为重点目标,选取正好等于,刚刚大于或刚刚小于()的测试数据.如果输入或输出域是则应选取集合的()元素和()元素作为测试用例.19.在测试程序时,根据经验或直觉推测程序中可能存在的各种错误,称为().20.因果图的基本原理是通过画()图,把用自然语言描述的()转换为(),最后为()每一列设计一个测试用例.21.测试的综合策略是在测试中,联合使用各种()方法.通常先用()法设计基本的测试用例,再用()法补充一些必要22.软件测试过程中需要3类信息:(),()和().23.软件测试一般经过4个测试: (), (), ()和().24. 指对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错和()的文档.25.单元测试主要测试的5个基本特征: (), (), (), ()和().26.在单元测试中,需要为被测模块设计()模块和()模块. ()用来模拟被测模块的上级调用模块, ()用来代替被的模块.27.集成测试指在()测试基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试.也称()测试或()测28.集成测试的方法有两种: ()和().29.渐增式测试有两种不同的组装模块的方法: ()和().30.自顶向下渐增式测试不需要编写()模块,只需要编写()模块,其步骤是从()模块开始,沿着被测程序的()步向下测试,它有两种组合策略: ()和().31.自底向上渐增式测试不需要编写()模块,只需要编写()模块.32.确认测试指检查软件的()与()是否与()说明书中确定的指标相符合,又称()测试.33.确认测试在模拟环境下运用()测试方法,由()和()参加的测试.34.确认测试开始前需要制定()计划,结束后要写出()报告.其测试用例要选用()的数据.35.软件配置审查的任务是检查软件的所有文档资料的()和().36.调试也称(),是在成功的测试之后才开始进行,其目的是确定错误的()和(),并改正错误.37.调试技术包括(), (), ()和().38.回溯法调试是从()出发,而归纳法调试是从()入手.39.被测试程序不在机器上运行,而是采用人工检测和计算机辅助分析检测的手段称为()测试.40.用等价类划分法设计一个测试用例时,使其覆盖()尚未被覆盖的合理等价类.41.用等价类划分法设计一个测试用例时,使其覆盖()不合理等价类.42.在单元测试时,需要为被测模块设计().43.在集成测试时有两种测试方法,它们是().44.软件测试是为了()而执行程序的过程.45.运行被测程序的方法称为()测试.46.动态测试中,主要测试软件功能的方法称为()法.47.选择测试用例,使得被测程序中每个判定的每个分支至少执行一次,这种逻辑覆盖标准称为().48.要覆盖含循环结构的所有路径是不可能的,一般通过限制()来测试.49.用等价类划分法设计测试用例时,如果被测程序的某个输入条件规定了取值范围,则可确定一个合理的等在和().50.凭经验或直觉推测程序中可能存在的错误而设计测试用例的方法是().51.集成测试中的具体方法是().52.确认测试阶段的两项工作是().53.在单元测试中,测试一个模块时,需要设计().54.软件配置管理,简称SCM,它用于整个软件工程过程.其主要目标是: (), (), (), ().55.SCM是一组管理整个软件生存期各阶段中()的活动.56.基线的作用是把各阶段的开发工作划分得更加明确,便于检查与确认阶段成果.因此,基线可以作为项目的一个().三、名词解释1.软件测试2.静态测试3.动态测试4.黑盒测试5.白盒测试6.语句覆盖7.判定覆盖8.条件覆盖9.判定/条件覆盖10.条件组合覆盖11.路径覆盖12.测试用例13.驱动模块14.桩模块15.单元测试16.集成测试17.确认测试18.渐增式测试19.非渐增式测试20.调试21.人的因素的含义22.基线23.软件配置管理24.软件配置项四、简答题1.为什么说软件测试是软件开发中不可缺少的重要一环,但不是软件质量保证的安全网2.软件测试的目的是什么为什么把软件测试的目的定义为只是发现错误3.软件测试应当遵循什么原则为什么要遵循这些原则4.软件测试的步骤是什么这些测试与软件开发各阶段之间的关系5.软件测试的过程是什么6.单元测试,集成测试和确认测试各自主要目标是什么它们之间有什么不同相互有什么关系7.什么是黑盒测试与白盒测试它们都适应哪些测试8.简述软件测试与软件调试的区别.9.软件配置管理的任务.10.试述第三代界面的优点.11.试述人机界面的设计过程.五、综合题1.变量的命名规则一般规定如下:变量名的长度不多于40个字符,第一个字符必须为英文字母,其他字母可以英文字母,数字以意组合.请用等价分类法设计测试用例.2.某商场在"五一"期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标准收费(不打折),一次购物累100元,按B类标准收费(打9折);会员顾客一次购物累计少于1000元,按C类标准收费(打8折),一次购物累计等于或多于标准收费(打7折).测试对象是按以上要求计算顾客收费模块,按照路径覆盖法设计测试用例.3.下面是某程序的流程图:(1)计算它的环路复杂性.(2)为了完成基本路径测试,求它的一组独立的路径.一、选择题1.B2.B3.C4.D5.A6.B7.C8.B9.D 10.D11.A 12.B 13.D 14.A 15.A 16.A 17.B 18.D 19.A 20.D21.C 22.D 23.A 24.C 25.D 26.A 27.D 28.D 29.B 30.B31.C 32.A 33.D 34.B 35.C 36.B 37.B 38.A 39.D 40.D二、填空题1. 错误测试结果2. 文档资料内部结构测试用例程序错误缺陷3. 输入数据输出数据4. 动态测试静态测试5. 运行程序测试用例黑盒测试白盒测试6. 人工检测计算机辅助静态分析7. 编码质量编码软件产品8. 静态分析特性9. 接口需求规格功能10. 内部结构处理过程处理过程测试11. 结构源程序内部逻辑12. 判定语句覆盖判定覆盖条件覆盖判定/条件覆盖条件组合覆盖路径覆盖13. 条件组合路径14. 循环循环次数15. 控制流程图环路基本路径16. 功能等价类划分边界值分析错误推测因果图17. 功能一句话一个短语等价类18. 边界边界值第一个最后一个19. 错误推测法20. 因果功能说明判定表判定表21. 测试黑盒白盒22. 软件配置测试配置测试工具23. 单元测试集成测试确认测试系统测试24. 单元测试编码详细设计25. 模块模块接口局部数据结构重要的执行路径错误处理边界条件26. 驱动桩驱动模块桩模块27. 单元组装联合28. 非渐增式测试渐增式测试29. 自顶向下结合自底向上结合30. 驱动桩顶层软件结构图深度优先策略宽度优先策略31. 桩驱动32. 功能性能需求规格有效性33. 黑盒专门测试人员用户34. 测试测试分析实际运用35. 完整性正确性36. 纠错原因位置37. 简单调试归纳法调试演绎法调试回溯法调试38. 程序产生错误的地方测试结果发现的线索39.静态40.尽可能多的41.一个42.驱动模块与桩模块43.渐增式和非渐增式44.发现错误45.动态测试46.黑盒法47.判定覆盖48.循环次数49.两个不合理的等价类50.错误推测法51.渐增式和非渐增式测试方法52.进行确认测试和软件配置审查53.驱动模块和桩模块54.标识变更控制变更确保变更正确地实现报告有关变更55.变更56.检查点三、名词解释1. 软件测试指为了发现软件中的错误而执行软件的过程.它的目标是尽可能多地发现软件中存在的错误,将测试结果作为纠错的依据.2. 静态测试指被测试的程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测.3. 动态测试指通过运行程序发现错误.4. 黑盒测试指把测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求,又称为功能测试或数据驱动测试.5. 白盒测试指把测试对象看成一个打开的盒子,测试人员需了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致.6. 语句覆盖指设计足够的测试用例,使被测程序中每个语句至少执行一次.7. 判定覆盖指设计足够的测试用例,使被测程序中每个判定表达式至少获得一次"真"值或"假"值,从而使程序的每个分支至少都通过一次,因此判定覆盖又称分支覆盖.8. 条件覆盖指设计足够测试用例,使判定表达式中每个条件的各种可能的值至少出现一次.9. 判定/条件覆盖指设计足够的测试用例,使得判定表达式中每个条件的所有可能取值至少出现一次,并使每个判定表达式所有可能的结果也至少出现一次.10. 条件组合覆盖指设计足够的测试用例,使得每个判定表达式中条件的各种可能的值的组合都至少出现一次.11. 路径覆盖指设计足够的测试用例,覆盖被测程序中所有可能的路径.12. 测试用例指为寻找程序中的错误而精心设计的一组测试数据.13. 驱动模块指用来模拟被测模块的上级调用模块,其功能比真正的上级模块简单得多,它只完成接受测试数据,以上级模块调用被测模块的格式驱动被测模块,接收被测模块的测试结果并输出.14. 桩模块指用来代替被测试模块所调用的模块,其作用是返回被测试模块所需的信息.15. 单元测试指对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误.16. 集成测试指在单元测试基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试.也称组装测试或联合测试.17. 确认测试指检查软件的功能与性能是否与需求规格说明书中确定的指标相符合,又称有效性测试.18. 渐增式测试指逐个把未经过测试的模块组装到已经过测试的模块上去,进行集成测试.每加入一个新模块进行一次集成测试,重复此过程直到程序组装完毕.19. 非渐增式测试指首先对每个模块分别进行单元测试,然后把所有的模块按设计要求组装在一起进行测试.20. 调试指确定错误的原因和位置,并改正错误的过程,也称纠错.21. 1)人对感知过程的认识,包括视觉,阅读时的认知心理,记忆,归纳与演绎推理等;2)用户已有的技能和行为方式;3)用户所要求的完成的整个任务以及用户对人机交互部分的特殊要求.22. 已经通过正式复审和批准的某规约或产品,它因此可以作为进一步开发的基础,并且只能遵循正式的变化控制过程得到改变.23. 软件配置管理,简称SCM,它用于整个软件工程过程.其主要目标是:标识变更,控制变更,确保变更正确地实现,报告有关变更.SCM是一组管理整个软件生存期各阶段中变更的活动.24. 软件配置项是软件工程中产生的信息项,它是配置管理的基本单位,对已成为基线的SCI,虽然可以修改,但必须按照一个特殊的正确的过程进行评估,确认每一处的修改.四、简答题1. ①软件测试是软件开发中不可缺少的重要一环,原因是:·测试的工作量约占整个项目开发工作量的40%左右,几乎一半.如果是关系到人的生命安全的软件,测试的工作量还要成倍增加.·软件测试代表了需求分析,设计,编码的最终复审.②软件测试不是软件质量保证的安全网,因为软件测试只能发现错误,不能保证没有错误.2. 软件测试的目的有:①软件测试是为了发现错误而执行程序的过程.②一个好的测试用例能够发现至今尚未发现的错误.③一个成功的测试是发现了至今尚未发现的错误.软件测试的目标定义为只是发现错误,原因是软件测试可以有两个目标,一个是预防错误,另一个是发现错误.由于软件开发是人的创造性劳动,人的活动不可能完美无缺,错误可能发生在任何一个阶段,因此预防错误这一目标几乎是不可实现的,所以软件测试的目标定义为只是发现错误.3. 软件测试应当遵循原则如下:①用例由输入数据和预期的输出数据两部分组成,因为这样便于对照检查,做到有的放矢.②用例不仅选用合理的输入数据,还要选择不合理的输入数据.因为当以特殊方式使用程序时,会突然发现程序中有许多错误,故使用预期的不合理的输入数据进行程序测试,比用合理的输入数据收获要大,从而能更多地发现错误,提高程序可靠性.③除了检查程序是否做了它应该做的事,还应该检查程序是否做了它不应该做的事,因为如果程序做了它不应该做的事,即使程序能做它应该做的事,程序也是错误的.④应制定测试计划并严格执行,因为这样可以排除随意性.⑤长期保留测试用例,因为测试用例的设计耗费很大的工作量,而修改后的程序可能有新的错误,需要进行回归测试,故必须将测试用例作为文档保存,使测试具有可重复性,同时测试用例是将来系统维护测试与确认的依据,保存测试用例也为以后的维护提供方便.⑥对发现错误较多的程序段,应进行更深入的测试,因为发现错误较多的程序段,其质量较差,同时在修改错误过程中又容易引入新的错误.⑦程序员避免测试自己设计的程序,因为测试目的是找错.从心理学角度讲,程序员大多对自己的程序存有偏见,总认为没有错误或错误不大,另外程序员对需求规格说明的理解而引入的错误则更难发现,应该由别人或另外的机构来测试会更客观,更有效.4. ①软件测试的步骤如图7-3所示.图7-3 软件测试的步骤②这些测试与软件开发各阶段之间的关系如图7-2所示.因为系统测试已经超出了软件工程的范围,所以图7-2中的系统测试不包括在内.5. 软件测试是一个规则的过程,包括测试设计,测试执行以及测试结果比较等.①测试设计:根据软件开发各阶段的文档资料和程序的内部结构,利用各种设计测试用例技术精心设计测试用例.②测试执行:利用这些测试用例执行程序,得到测试结果.③测试结果比较:将预期的结果与实际测试结果进行比较,如果二者不符合,对于出现的错误进行纠错,并修改相应文档.修改后的程序还要进行再次测试,直到满意为止.如果测试发现不了错误,可能由于测试配置考虑不周到,应考虑重新制定测试方案,设计测试用例.6. 单元测试,集成测试和确认测试各自主要目标是:①单元测试的主要目标是检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误.②集成测试的主要目标是检查与设计相关的软件体系结构的有关问题.③确认测试的主要目标是检查已实现的软件是否满足需求规格说明书中确定的各种需求.单元测试,集成测试和确认测试之间的不同如下:①测试内容不同:单元测试集中于单个模块的功能和结构检验,其测试内容主要包括模块接口,局部数据结构,重要的执行路径,错误处理和边界测试;集成测试集中于模块组合的功能和软件结构检验,其测试内容主要包括模块组装中可能出现的问题,即数据穿过接口可能丢失,一个模块可能破坏另一个模块的内容,子功能组装可能不等于主功能,全程数据结构问题,误差累积问题;确认测试集中于论证软件需求的可追溯性,主要包括测试软件功能和性能是否与软件需求一致,测试软件配置的所有程序与文档是否正确完整而且一致.②测试的方法不同:单元测试总是使用白盒测试法,为被测模块设计驱动模块和桩模块;集成测试使用渐增式测试和非渐增式测试,渐增式测试又有分为自顶向下结合法和自底向上结合法;确认测试总是使用黑盒测试法.③发现的错误不同:单元测试发现的错误主要是在编码阶段产生的错误,集成测试发现的错误主要是在设计阶段产生的错误,确认测试发现的错误主要是在需求分析阶段产生的错误.④涉及的文档不同:单元测试涉及编码和详细设计文档,集成测试涉及详细设计文档和概要设计文档,确认测试涉及软件需求规格说明书和用户手册.三者相互关系是:单元测试,集成测试和确认测试是顺序实现的.首先单元测试对各个模块进行测试,然后集成测试以单元测试为基础,将所有已测模块按照设计要求组装成一个完整的系统,对模块组合的功能和软件结构检验进行测试,最后确认测试是以集成测试为基础,测试集成的软件是否满足需求规格说明书中确定的各种需求.7. ①黑盒测试指把测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求,又称为功能测试或数据驱动测试.②白盒测试指把测试对象看成一个打开的盒子,测试人员需了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致.③白盒测试适应的测试有单元测试,逻辑覆盖(按逻辑覆盖程度不同,有语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖,条件组合覆盖和路径覆盖.),循环覆盖(限制循环次数,有单循环和嵌套循环)和基本路径测试.④黑盒测试适应的测试有:确认测试,等价类划分,边界值分析,错误推测和因果图.8. 软件测试与软件调试在目的,技术和方法等方面存在很大的区别,主要表现在:①测试从一个侧面证明程序员的失败,而调试是为了证明程序员的正确.②测试从已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的只是程序是否通过测试.调试一般以不可知的内部条件开始,除统计性调试外,结果是不可预见的.③测试是有计划的,并要进行测试设计,而调试是不受时间约束的.④测试是一个发现错误,改正错误,重新测试的过程,而调试是一个推理过程.⑤测试的执行是有规程的,而调试的执行往往要求程序员进行必要的推理及知觉的飞跃.⑥测试经常由独立的测试组在不了解软件设计的前提下完成,而调试必须由了解详细设计的程序员完成.⑦大多数测试的执行和设计可由工具支持,而调试时,程序员能利用的工具主要是调试器.五、综合题1.①划分等价类下表.等价类划分表。
软件测试题大全含答案一、选择题1.软件测试的目的是以下哪项?A.确保软件没有错误B.发现软件中的缺陷C.证明软件是可靠的D.增加软件的功能答案:B2.黑盒测试不关心以下哪一项?A.输入数据B.程序代码C.功能需求D.预期结果答案:B3.以下哪项不是软件测试的类型?A.单元测试B.集成测试C.系统测试D.数据库测试答案:D4.软件测试中的“回归测试”是指什么?A.对新开发的功能进行测试B.对修改后的功能进行重新测试C.对软件的性能进行测试D.对软件的安全性进行测试答案:B5.以下哪项是白盒测试技术?A.等价类划分B.边界值分析C.语句覆盖D.状态转换答案:C二、填空题6.软件测试分为两大类:_______测试和_______测试。
答案:黑盒;白盒7.测试用例通常包括测试输入、测试执行条件、测试步骤和_______。
答案:预期结果8.软件测试的基本原则之一是“早期和频繁地进行测试”,这意味着测试活动应_______软件开发周期的开始,并持续进行到_______。
答案:伴随;结束9.性能测试主要关注软件应用的_______、_______、可靠性、可用性和可维护性。
答案:正确性;效率10.探索性测试是一种_______的测试方法,它不依赖于正式的测试计划,而是依赖于测试员的经验和直觉。
答案:结构化;非三、简答题11.什么是软件测试?请简述其重要性。
答案:软件测试是一种评估软件质量的过程,旨在验证软件的各个部分是否按照设计和需求正常运行,并发现软件中的缺陷。
软件测试的重要性在于它能够确保软件产品的可靠性和稳定性,减少软件发布后的风险和成本,提高用户满意度,最终保障企业的市场竞争力。
12.请解释什么是“测试金字塔”?答案:测试金字塔是一种软件测试方法论,它将测试分为三个层次:单元测试(底部)、集成测试(中间)和端到端测试(顶部)。
金字塔的底部很宽,意味着应该有更多的单元测试,因为它们快速、独立且易于自动化。
1、〕可以帮助测试团队合理地利用有效资源.A.配置测试,B.安装测试C.冒烟测试D.回归测试2、B〕A.桌前检查,单元测试通常由代码的创立者执行B.代码走查由代码的创立者执行,不需要专门测试人员参与C.代码的规那么检查属于静态分析的内容D.同行评审通常由软件产品创立者的同行检查该工作产品,识别产品缺陷3、对于软件的鼠标操作测试,以下的说法正确的选项是〔C 〕A.进行鼠标测试时。
要对鼠标的左右键都进行测试,右键菜单中应该包含左键单击功能B.要测试鼠标的移动速度,而应用程序对鼠标单击的响应速度那么不属于鼠标测试内容,C.鼠标移到工具栏的图标时一般要有提示信息显示,并且确定显示内容与实际的功能一致D.光标形状是否随操作而变化不是鼠标测试内容。
4、B D〕〔选择两项〕A.集成错误多发生在模块接口上,一般在集成测试中发现B.重用错误一般是由于没有遵守编码标准造成的。
C.逻辑错误是比较难检测的错误,是测试重点之一。
D.逻辑错误一般是由于设计错误造成的,与开发人员对开发环境熟练程度无关5、B D 〕〔选择两项〕A.从软件生命周期的螺旋模型来看,所有测试工作是在编码结束以后才开始介入B.螺旋模型和瀑布模型相比,测试工作介入的更早,更具体,从而更好的地躲避了风险。
C.测试方案是用于指导整个测试过程的,所以一旦测试方案通过评审,是不能改动的D.从软件测试生命周期来看,一个软件的新版本要经过评审才能发布。
6、在WINDOWS系统中,用户user16既属于allusers组又属于vipA在alluser组中被赋予拒绝写入权限,在vip组中被赋予写入权限,那么用户user16A拥有的权限是〔〕BA.拒绝写入B.写入C.读取D.无法确定其权限7、 D 〕A.好的软件过程是高效,高质量软件的前提B.软件测试在软件生存周期中占有非常重要的位置,是对软件规格说明,设计和编码的最后终审C.软件测试是软件质量保证的重要手段,是规约,设计和编码的最终检查。
软件测试基础试题库含答案1、验收测试是由最终用户来实施的A、正确B、错误答案:A2、在时间有限的情况下,应该优先测试典型值,而不是边界值A、正确B、错误答案:B3、单元测试能发现约80%的软件缺陷A、正确B、错误答案:A4、与用户、开发人员关于当前产品日常交流谈话内容是形成测试需求的重要依据。
A、正确B、错误答案:B5、测试程序仅仅按预期方式运行就行了A、正确B、错误答案:B6、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将这些问题正确修改,以加快提高开发的进程A、正确B、错误答案:B7、性能测试的目的是保证软件的功能符合软件需求()A、正确B、错误答案:B8、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。
A、正确B、错误答案:B9、软件测试必须等到所有缺陷均修复才能结束()A、正确B、错误答案:B10、压力测试不需要辅助工具的支持A、正确B、错误答案:B11、软件测试人员必须对需求规格说明书进行白盒测试()A、正确B、错误答案:B12、对于没有软件界面的程序,可不必进行易用性测试。
A、正确B、错误答案:B13、我们可以人为的使软件不存在配置问题A、正确B、错误答案:B14、在软件开发过程中,若能推迟暴露其中的错误,则为修复和改进错误所花费的代价就会降低A、正确B、错误答案:B15、所有软件必须进行某种程度的兼容性测试A、正确B、错误答案:A16、功能测试的主要目的是测试软件防止非法入侵能力A、正确B、错误答案:B17、项目立项前测试人员不需要提交任何工件A、正确B、错误答案:A18、测试组负责软件质量A、正确B、错误答案:B19、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误()A、正确B、错误答案:B20、白盒测试仅与程序额的内部结构有关,完全可以不考虑程序的功能要求A、正确B、错误答案:A21、集成测试计划在需求分析阶段末提交A、正确B、错误答案:A22、发现错误多的模块,残留在模块中的错误也多A、正确B、错误答案:A23、代码评审员一般都是测试员担任A、正确B、错误答案:B24、项目编码前,软件测试人员不需要介入项目测试A、正确B、错误答案:B25、验收测试只能由开发公司的测试人员来实施的A、正确B、错误答案:B26、软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试后期才开始具体的工作()A、正确B、错误答案:B27、软件测试的唯一目的就是为了发现软件的错误()A、正确B、错误答案:B28、静态白盒测试可以找出遗漏之处和问题A、正确B、错误答案:B29、自动化测试工具可以部分代替手工测试()A、正确B、错误答案:A30、测试是调试的一个部分()A、正确B、错误答案:B31、设计测试用例时,应包括合理的输入条件和不合理的输入条件A、正确B、错误答案:A32、所有软件都有一个用户界面,因此必须测试易用性A、正确B、错误答案:B33、不存在质量很高但可靠性很差的产品A、正确B、错误答案:B34、好的测试员不懈追求完美A、正确B、错误答案:B35、软件测试员无法对产品说明书进行白盒测试A、正确B、错误答案:A36、可以发布具有配置缺陷的软件产品A、正确B、错误答案:B37、基本路径测试法属于黑盒A、正确B、错误答案:B38、GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁A、正确B、错误答案:A39、如果能做非常完美黑盒测试,则可无需做白盒测试A、正确B、错误答案:B40、测试人员要坚持原则,缺陷未修复完坚决不予以通过A、正确B、错误答案:B41、压力测试通常需要辅助工具的支持A、正确B、错误答案:A42、beta测试是验收测试的一种A、正确B、错误答案:A43、黑盒测试的测试用例是根据程序内部逻辑设计的A、正确B、错误答案:B44、单元测试通常由开发人员进行A、正确B、错误答案:A45、软件测试人员一旦发现软件缺陷,主要以口头方式通知软件开发人员()A、正确B、错误答案:B46、测试是为了验证软件已正确的实现了用户的要求A、正确B、错误答案:B47、白盒测试不仅与程序的内部结构有关,还要考虑程序的功能要求A、正确B、错误答案:B48、只要我们做了充分的测试,就能保证软件没有bugA、正确B、错误答案:B49、对于同一个功能,如果开发人员已经做了功能测试,就不需要测试人员测试了A、正确B、错误答案:B50、测试人员说:“没有可运行的程序,我无法进行测试工作”A、正确B、错误答案:B51、测试人员要坚持原则。
软件测试题库及答案一、单选题1. 软件测试的目的是:A. 证明软件是正确的B. 发现软件中的错误C. 确保软件满足需求D. 确保软件没有错误答案:B2. 以下哪项不是黑盒测试的测试用例设计技术?A. 等价类划分B. 边界值分析C. 决策表测试D. 路径测试答案:D3. 单元测试通常由谁执行?A. 测试人员B. 用户C. 开发人员D. 项目经理答案:C4. 以下哪个不是软件测试的阶段?A. 单元测试B. 集成测试C. 系统测试D. 维护测试答案:D5. 软件测试中的错误注入通常发生在哪个阶段?A. 需求分析B. 设计阶段C. 编码阶段D. 测试阶段答案:C二、多选题1. 软件测试的类型包括:A. 功能测试B. 性能测试C. 可用性测试D. 安全测试E. 回归测试答案:ABCDE2. 以下哪些是软件测试的原则?A. 测试可以显示存在缺陷B. 穷尽测试是不可能的C. 早期测试可以节省成本D. 缺陷聚集原则E. 测试应该提供信息以支持决策答案:ABCDE3. 软件测试的目的是:A. 验证软件是否符合需求B. 验证软件是否符合设计C. 验证软件是否符合编码标准D. 验证软件是否符合性能要求E. 验证软件是否符合安全要求答案:ABDE4. 软件测试的文档包括:A. 测试计划B. 测试用例C. 测试报告D. 缺陷报告E. 用户手册答案:ABCD5. 软件测试的自动化工具可以用于:A. 自动化测试用例执行B. 测试用例生成C. 缺陷跟踪D. 性能监控E. 安全扫描答案:ABCDE三、判断题1. 软件测试可以完全替代人工测试。
(错误)2. 软件测试的目的是确保软件没有错误。
(错误)3. 软件测试应该在编码阶段完成后开始。
(错误)4. 测试用例应该包括预期结果。
(正确)5. 回归测试是确认修改后的软件是否引入新缺陷的过程。
(正确)四、简答题1. 请简述软件测试的目的是什么?答案:软件测试的目的是发现软件中的错误,验证软件是否满足需求,确保软件的质量。
软件测试理论知识习题库与答案一、单选题(共70题,每题1分,共70分)1、不是文档测试包括的内容()。
A、合同文档B、开发文档C、管理文档D、用户文档正确答案:A2、在软件底层进行的测试称为()A、系统测试B、功能测试C、单元测试D、集成测试正确答案:C3、如果某测试用例集实现了某软件的路径覆盖,那么它一定同时实现了该软件的()A、条件覆盖B、组合覆盖C、判定/条件覆盖D、判定覆盖正确答案:D4、下面关于软件测试的说法,()是错误的。
A、软件测试就是程序测试B、软件测试贯穿于软件定义和开发的整个期间C、程序是软件测试的对象D、需求规格说明、设计规格说明都是软件测试的对象正确答案:A5、下列不属于正式审查的方式是()A、编码标准和规范B、公开陈述C、同事审查D、检验正确答案:A6、不是易用性测试包括的内容()A、文档测试B、菜单测试C、安装测试D、界面测试正确答案:A7、在下列描述中,关于一个软件缺陷状态完整变化的错误描述是()A、打开一一关闭B、激活一一修复一一重新打开C、打开--- 修复 --- 关闭D、打开一一保留正确答案:B8、下列测试不用考虑内部程序结构的测试是()。
A、结构测试B、白盒测试C、逻辑驱动测试D、功能测试正确答案:D9、下列引起软件缺陷的因素不属于技术问题的是()A、系统结构不合理B、内容不正确C、算法错误D、语法错误正确答案:B10、下列关于系统测试方法说法不正确的是()。
A、确认测试中首先要进行的功能测试是在实际使用的环境下进行的测试,目的是验证被测软件是否满足软件需求规格说明中列出的需求B、在线帮助测试主要用于验证系统的实时在线帮助的可操作性和准确性,具体操作中可以与文档测试同时进行C、GUI测试中通常首先把界面元素进行划分,可分为三个层次:界面原子层、界面组合元素层和完整的窗口D、用于安装测试的测试用例设计方法有规范导出法和错误猜测法正确答案:A11、测试工程师的工作范围会包括检视代码、评审开发文档,这属于()A、白盒测试B、静态测试C、黑盒测试D、动态测试正确答案:B12、下列关于文件操作测试的说法中正确的是()oA、“打印”功能如果是调用Win32API实现的,则不需要对打印功能进行测试B、“打开文件”、“保存文件”和“打印”功能如果是调用Win32API实现的,也要对这些功能的很多方面进行测试,例如打开一个只读的文档等C、“保存文件”功能如果是调用Win32AP1实现的,则不需要对保存文件功能进行测试D、“打开文件”功能如果是调用Win32API实现的,则不需要对打开文件功能进行测试正确答案:B13、自顶向下的增量式集成策略的最大成本是()。
软件测试考试题库及答案一、单项选择题1. 软件测试的目的是()。
A. 证明软件是正确的B. 发现软件中的错误C. 证明软件是错误的D. 证明软件没有错误答案:B2. 黑盒测试主要关注软件的()。
A. 内部结构B. 内部逻辑C. 功能D. 代码答案:C3. 单元测试通常由()执行。
A. 项目管理者B. 开发人员C. 测试人员D. 客户答案:B4. 软件测试中,回归测试是指()。
A. 测试新发现的错误B. 测试软件的新功能C. 在修改后重新运行测试用例以验证错误是否被修复D. 测试软件的安全性答案:C5. 软件测试的V模型中,测试活动应该在开发活动的()进行。
A. 之前B. 同时C. 之后D. 任意时间答案:C二、多项选择题1. 以下哪些是软件测试的类型?()A. 功能测试B. 性能测试C. 压力测试D. 界面测试答案:ABCD2. 软件测试的基本原则包括()。
A. 测试显示存在错误B. 穷尽测试是不可能的C. 早期测试D. 缺陷聚集答案:ABCD3. 软件测试过程中可能使用的工具包括()。
A. 缺陷跟踪系统B. 自动化测试框架C. 性能监控工具D. 代码审查工具答案:ABCD三、判断题1. 软件测试可以完全替代人工检查。
()答案:错误2. 测试应该在软件开发的后期进行。
()答案:错误3. 软件测试的目的是确保软件产品的质量。
()答案:正确四、简答题1. 请简述什么是软件测试?答案:软件测试是一系列旨在评估软件质量的活动,目的是验证软件的功能、性能、安全性等是否符合预期,并发现软件中可能存在的缺陷。
2. 描述软件测试的基本流程。
答案:软件测试的基本流程通常包括测试计划、测试设计、测试实施、测试执行和测试报告等阶段。
五、案例分析题1. 假设你是一个软件测试工程师,你被分配到一个项目中,该项目的软件产品是一个在线购物平台。
请描述你将如何进行测试计划的制定。
答案:在制定测试计划时,我会首先了解项目的需求和目标,确定测试的范围和重点。
软件测试理论基础测试题(一)(2012年11月14日)说明:试题共分两大题目总分150,本试题请闭卷。
一、选择题(每题1分)1、下列文档中不是文档测试需要测试的内容是()AA.合同文档B.管理文档C.开发文档D.用户文档2、下列逻辑覆盖测试方法中,覆盖能力最强的是(D)A.语句覆盖B.判定覆盖C.条件覆盖D.条件组合覆盖3、关于软件测试的原则,下列说法错误的是(AB)(选择两项)A.软件测试应该从代码完成后开始B.程序员测试自己编写的代码有助于测试的深入广泛进行C.软件测试必须确定预期输出结果D.测试过程中要注意测试中的缺陷群集现象4、下列关于测试和调试的说法中正确的是CA.测试和调试没有本质区别。
目的都是为了发现软件系统中的错误。
B.测试只是测试人员的职责,在整个测试活动中不需要开发人员的参与。
C.调试一般不能确定程序中潜在错误发生的原因D.调试主要在软件的开发阶段进行。
5、下列关于正确选择自动化测试工具的说法中错误的是(B)A.选择适合自己公司项目的自动测试工具,可以从测试工具的功能,集成能力,操作系统和开发工具的兼容性等几个方面来考虑。
B.引入工具时不需要考虑工具引入的连续性和一致性C.尽量选择主流测试工具D.如果需要多种工具,尽量选择同一公司的产品。
6、下列关于测试用例的设计说法中正确的是(D)A.只有发现了到目前为止没有发现的缺陷的测试用例才是有价值的用例。
B.测试用例设计应该遵循从简单的原则,以便节约测试时间C.测试用例的设计经常耗时很大。
所以已设计好的测试用例不能变化D.测试用例的设计依据需求说明书。
应该覆盖用户需求7、下列各选项的文件扩展名代表可执行文件的是()BA.EXE ,COM B.EXE,BAT C.COM,DLL D.DLL,BAT8、关于黑盒测试与白盒测试的区别,下列说法正确的是(A)A.白盒测试侧重于程序结构,黑盒测试侧重于功能B.白盒测试可以使用自动测试工具,黑盒测试不能使用工具C.白盒测试需要开发人员参与,黑盒测试不需要。
D.黑盒测试比白盒测试应用更广泛9、使用正交排列方式设计测试用例的最大好处在于(B )A.对所有的输入组合创建测试用例,B.使用最少的测试用例获得最大的测试覆盖率.C.不用写测试用例D.便于进行兼容性测试.10、一般情况下,当一个软件新版本提交测试时,要有1-2名测试人员首先进行(C)可以帮助测试团队合理地利用有效资源.A.配置测试,B.安装测试C.冒烟测试D.回归测试11、通常情况下,下列关于白盒测试策略的说法中错误的是(B)A.桌前检查,单元测试通常由代码的创建者执行B.代码走查由代码的创建者执行,不需要专门测试人员参与C.代码的规则检查属于静态分析的内容D.同行评审通常由软件产品创建者的同行检查该工作产品,识别产品缺陷12、对于软件的鼠标操作测试,下列的说法正确的是(C )A.进行鼠标测试时。
要对鼠标的左右键都进行测试,右键菜单中应该包含左键单击功能B.要测试鼠标的移动速度,而应用程序对鼠标单击的响应速度则不属于鼠标测试内容,C.鼠标移到工具栏的图标时一般要有提示信息显示,并且确定显示内容与实际的功能一致D.光标形状是否随操作而变化不是鼠标测试内容。
13、下列关于各类软件缺陷的描述中错误的是(B D)(选择两项)A.集成错误多发生在模块接口上,一般在集成测试中发现B.重用错误一般是由于没有遵守编码规范造成的。
C.逻辑错误是比较难检测的错误,是测试重点之一。
D.逻辑错误一般是由于设计错误造成的,与开发人员对开发环境熟练程度无关14、下列关于软件测试和软件生命周期的说法中正确的是(B D )(选择两项)A.从软件生命周期的螺旋模型来看,所有测试工作是在编码结束以后才开始介入B.螺旋模型和瀑布模型相比,测试工作介入的更早,更具体,从而更好的地规避了风险。
C.测试计划是用于指导整个测试过程的,所以一旦测试计划通过评审,是不能改动的D.从软件测试生命周期来看,一个软件的新版本要经过评审才能发布。
15、在WINDOWS系统中,用户user16既属于allusers组又属于vip组。
对于文件A在alluser组中被赋予拒绝写入权限,在vip组中被赋予写入权限,那么用户user16对文件A拥有的权限是()BA.拒绝写入B.写入C.读取D.无法确定其权限16、下列关于软件质量和软件测试的说法中错误的是(D )A.好的软件过程是高效,高质量软件的前提B.软件测试在软件生存周期中占有非常重要的位置,是对软件规格说明,设计和编码的最后终审C.软件测试是软件质量保证的重要手段,是规约,设计和编码的最终检查。
D.软件测试是保证软件质量的安全网,是保证软件质量的充分条件17、为了体现软件的友好易用性,如果用户输入了非法的数据,开发人员通常对该输入在程序中做出相应处理,下列选项中处理方式错误的是(B )A.过滤掉不正确的输入,只允许合法输入通过界面B.直接关闭程序C.提示错误信息,拒绝不正确的输入D.允许不正确的输入进入系统,通过调用异常处理程序进行处理18、下列关于软件测试策略说法中错误的是(B)A.白盒测试分为静态白盒测试和动态白盒测试B.自动测试的优点之一是适应性强,即使软件功能发生变化时也不需要修改测试脚本C.性能测试一般是在系统测试阶段进行的D.回归测试在每次软件发生修改后都应该进行,以便确定修改是否达到预期目的19、下列关于因果图法设计测试用例的说法中,正确的是(BC )择两项)A.条件的排列顺序不影响执行哪些操作的情况下,适合用因果图法设计测试用例B.条件的排列顺序影响执行哪些操作的情况下,适合用因果图法设计测试用例C.规格说明以判断表的形式给出,或很容易转换成判断表,则适合于用因果图法设计测试用例D.因果图设计测试用例适于任何情况下的测试20、某软件公司在招聘软件测试工程师时,应聘者甲向公司做如下保证:(1),经过自己测试的软件今后不会再出现问题(2),在工作中对所有程序员一视同仁,不会因为某个程序编写的程序发现的问题多,就重点审查该程序,以免不利于团结(3),承诺不需要其他人员,自己就可以独立进行测试工作(4),发扬咬定青山不放松的精神,不把所有问题都找出来,绝不罢休根据自己所学的软件测试知识,应聘者甲的保证(D)A.(1)(4)是正确的B.(2)是正确的C.都是正确的D.都是错误的21、下面是对某公司缺陷管理流程的概括测试人员提交新的BUG入库,缺陷状态置为1,高级测试人员验证缺陷,如果确认是BUG,分配给相应的开发人员,设状态为2,如果不是BUG,则拒绝,设置状态为“拒绝”状态,开发人员查询状态为3的BUG,做如下处理,如果不是BUG,则置状态为“拒绝”状态,如果是BUG则修复并置状态为4,如果不能解决的BUG,要留下文字说明并保持BUG为“拒绝”状态,测试人员查询状态为5的BUG,验证BUG是否解决,做如下处理:如果BUG解决了置缺陷状态为6,如果BUG没有解决则置状态为7。
上述流程中1到7相对应的状态标识为(A )A.新提交-打开-打开-修正-修正-关闭-重新打开B.打开-修正-关闭-修正-修正-关闭-打开C.新提交-打开-打开-关闭-修正-关闭-重新打开D.新提交-打开-打开-修正-关闭-修正-重新打开22、通常情况下,关于缺陷报告,下列说法正确的是(C )。
(选择一项)A.对于不可重现的错误,可以不用报告B.为了提高人们对缺陷的注意力,需要夸大一些缺陷的严重性C.细小的缺陷也应该报告D.测试人员不能引用他人的缺陷报告23、下列关于白盒测试的描述中正确的是(CD )。
(选择二项)A.白盒测试只适用于单元测试阶段B.做白盒测试时不需要考虑黑盒测试方法C.逻辑驱动覆盖测试、基本路径测试属于白盒测试方法D.与黑盒测试相比,白盒测试多数情况下更关心软件的内部逻辑结构24、通常情况下,下列选项中不属于编写测试用例应该包括的内容的是(C )。
(选择一项)A.被测项目名称B.与本用例相关的其他用例C.测试时所发现缺陷的严重程度D.测试时需要输入的数据25、下列软件质量评估指标中,可以度量测试的完全程度的是(A )。
(选择一项)A.覆盖评测B.质量评测C.性能评测D.百分位报告26、下列关于白盒测试与黑盒测试的说法中错误的是(C )。
(选择一项)A.用白盒测试来验证单元的基本功能时,经常要用黑盒测试的思考方法来设计测试用例B.仅仅通过白盒测试,或仅仅通过黑盒测试都不能全面系统地测试一个软件C.白盒测试适用于软件测试的各个阶段D.在黑盒测试中使用白盒测试的手段,常被称为“灰盒测试”27、关于风险分析,下列说法错误的是()。
(选择二项)CDA.风险分析应在软件生命周期内尽早进行B.最早的风险分析应该在确定了需求之后马上进行C.对于每个发布版而言,需要版本变更再次进行完整的风险分析D.项目进行过程中,不必时时对风险分析的结果进行评估28、若一个通讯簿最多可以输入100条记录,则下列选项中设计的测试用例最优的是()。
(选择一项)DA.分别输入1、50、100条记录B.分别输入0、1、50、99、100条记录C.分别输入0、1、99、100、101条记录D.分别输入0、1、50、99、100、101条记录29、关于下列各测试阶段特点的说法中错误的是(AB)。
(选择二项)A.单元测试是最小单位的测试,其测试依据为程序流程图B.验收测试与系统测试的区别在于:验收测试是公司内部进行的测试,而系统测试是以用户为主的测试C.集成测试可以发现单元测试中无法发现的资源竞争问题D.确认测试往往在系统测试的前期进行30、对一台硬件正常的ATM机进行提取功能测试,若该机允许的提取增量为100元,金额从100元到5000元人民币(含5000元人民币)。
使用等价类划分方法设计测试用例,下列说法错误的是(BD )。
(选择二项)A.提取20元人民币的数据输入属于无效等价类数据B.提取150元人民币的数据输入属于有效等价类数据C.提取5100元人民币的数据输入属于无效等价类数据D.提取5000元人民币的数据输入属于无效等价类数据E.提取2000元人民币的数据输入属于有效等价类数据31、下列关于验收测试的定义说法最准确的是(C )。
(选择一项)A.由用户按照用户手册对软件进行测试以决定是否接收B.由第三方测试机构代表用户按照需求说明书和用户手册对软件进行测试以决定是否接收C.按照任务书或合同中供需双方约定的验收依据进行测试,决定是否接收D.由开发方和用户按照用户手册执行软件验收32、通常情况下,软件集成测试的方案是在(B )阶段完成的。
(选择一项)A.需求分析B.概要设计C.详细设计D.编码和单元测试33、设计测试用例的方法有很多,而且每种方法都有不同的适用条件。