软件测试习题集及答案详细版完整版
- 格式:docx
- 大小:68.23 KB
- 文档页数:14
软件测试题大全及答案一、选择题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、软件测试的定义?软件测试是⼀个过程或者⼀系列过程,⽤来确认计算和代码完成了其应该完成的功能,并且不执⾏其不应该有的操作。
2、软件测试的⽬标是什么?是想以最少的⼈⼒、物⼒和时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷提⾼软件质量,降低软件发布后由于潜在的软件错误和缺陷造成的隐患所带来的商业风险。
3、简单描述⼀下软件测试的原则?所有的软件测试都应追溯到⽤户需求应当把“尽早地和不断地进⾏软件测试”作为测试者的座右铭Good Enough原则质量第⼀充分注意测试中的群集现象程序员应避免检查⾃⼰的程序有据可依尽量避免软件测试的随意性,要有预期结果重视回归测试妥善保存⼀切测试过程⽂档4、软件测试中验证和确认的区别?Verfication 验证:是保证软件正确实现特定功能的⼀系列活动和过程。
⽬的是保证软件⽣命周期中的每⼀个阶段的成果满⾜上⼀个阶段设定的⽬标。
Validation 确认:是保证软件满⾜⽤户需求的⼀系列的活动和过程。
⽬的是在软件开发后保证与⽤户需求符合5、软件测试按照测试的基本策略可分为哪两种并加以详细说明?⽩盒测试:⽩盒测试也称结构测试或逻辑驱动测试,是指基于⼀个应⽤代码的内部逻辑知识,即基于覆盖全部代码、分⽀、路径、条件的测试,它是知道产品内部⼯作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进⾏,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确⼯作,⽽不顾它的功能,⽩盒测试的主要⽅法有逻辑驱动、基路测试等,主要⽤于软件验证。
⿊盒测试:⿊盒测试是指不基于内部设计和代码的任何知识,⽽基于需求和功能性的测试,⿊盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使⽤,在测试时,把程序看作⼀个不能打开的⿊盆⼦,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接⼝进⾏测试,它只检查程序功能是否按照需求规格说明书的规定正常使⽤,程序是否能适当地接收输⼊数锯⽽产⽣正确的输出信息,并且保持外部信息(如数据库或⽂件)的完整性。
软件测试练习题(含参考答案)一、单选题(共100题,每题1分,共100分)1、以下关于书写缺陷报告应包含的准则说法不正确的是()A、方便阅读、注意缺陷报告书写语气B、分析故障,使用最少步骤重现缺陷C、尽量全面--将一次发现的所有缺陷放在一个报告中D、包含所有重现缺陷的必要步骤正确答案:C2、( )存储一个对话框模板,模板制定了对话框的特征,包括其大小、位置、风格以及对话框中各种控件等。
A、单模对话框B、对话框函数C、对话框模板资源D、对话框类正确答案:C3、测试的目的是( ),而不是对正确性进行形式化证明。
A、要纠正程序中的bugB、要暴露程序中的错误C、要暴露程序中的bugD、要纠正程序中的错误正确答案:B4、数据库系统是一个复杂的系统,是存储介质、处理对象和管理系统的集合体,由数据库、硬件支持系统、软件支持系统和( )四部分组成。
A、应用系统B、数据库管理员C、操作系统D、数据模型描述正确答案:B5、在VC中,如果在Menu Item属性页中选择( )复选框,表示此菜单项是一个多级菜单,并且其右边将会出现一个新菜单框。
A、inactiveB、Pop-upC、CheckedD、Grayed正确答案:B6、软件测试是软件质量保证的重要手段()是软件测试的最基础环节A、验收测试B、系统测试C、单元测试D、确认测试正确答案:C7、按存储的工作方式分类,存储器可分为( )。
A、软盘、硬盘、光盘B、半导体存储器、磁表面存储器、光存储器C、RAM、ROM、BIOSD、随机读写存储器、顺序读写存储器、只读存储器正确答案:D8、按存储的工作方式分类,磁带存储器属于( )。
A、主存储器B、随机读写存储器C、顺序读写存储器D、只读存储器正确答案:C9、下列不属于需求规格说明的特点的是:( )。
A、可重用性B、一致性C、可修改性D、完整性正确答案:A10、测试一个( ),应该用那种能暴露边界情况的测试实例,既有简单的也有较难的。
软件测试笔试题及答案一、选择题1. 下列哪项不属于软件测试的目标?a) 发现软件中的缺陷b) 验证软件是否满足需求c) 确保软件具有高性能d) 提高软件的可靠性答案:c) 确保软件具有高性能2. 在测试活动中,以下哪个过程通常位于最后?a) 单元测试b) 验收测试c) 回归测试d) 静态测试答案:b) 验收测试3. 在软件测试中,猴子测试是指什么?a) 随机输入测试b) 随机点击测试c) 随机操作测试d) 随机接口测试答案:a) 随机输入测试4. 以下哪个是黑盒测试技术?a) 语句覆盖测试b) 边界值分析测试c) 静态代码分析d) 回归测试答案:b) 边界值分析测试5. 在软件测试中,白盒测试是指什么?a) 只测试软件的外部功能b) 只测试软件的内部逻辑c) 组合黑盒和白盒测试的方法d) 只测试软件的用户界面答案:b) 只测试软件的内部逻辑二、填空题1. 简述软件测试的目标。
答案:软件测试的目标是发现软件中的缺陷、验证软件是否满足需求、提高软件的可靠性。
2. 请简要说明单元测试的作用。
答案:单元测试主要是测试软件中的最小单元模块,以确认每个模块都能正常运行且满足预期。
它有助于提早发现和修复代码错误,避免错误在整个系统中扩散。
3. 请解释回归测试的含义。
答案:回归测试是指在软件发生变化后,重新执行旧的测试用例,以确保修改不会影响原有的功能和系统稳定性。
它有助于保证系统在修改后仍能正常工作,不引入新的问题。
三、解答题1. 请简要介绍一下常用的软件测试方法。
答案:常用的软件测试方法包括黑盒测试和白盒测试。
黑盒测试主要关注软件的外部功能,不考虑内部逻辑,通过输入合法和非法数据来测试软件的响应和输出是否符合预期。
而白盒测试则关注软件的内部逻辑,通过检查代码覆盖率和执行路径来验证软件的正确性。
2. 简要描述一下软件测试生命周期中的各个阶段。
答案:软件测试生命周期包括需求分析、测试计划、测试设计、测试执行和测试评估。
一、判断分析题1.软件测试的目的是尽可能多的找出软件的缺陷。
(Y)2.软件测试的目的是证明软件没有错误。
(N)3.测试组负责软件质量。
(N )4.程序的效率与程序的复杂性相关。
(N )5.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。
(Y )6.测试程序仅仅按预期方式运行就行了。
(N )7.好的测试员不懈追求完美。
( Y)8.不存在质量很高但可靠性很差的产品。
(N )9.测试是为了验证该软件已正确地实现了用户的要求。
( N)10.发现错误多的程序模块,残留在模块中的错误也多。
(Y )11.程序效率的提高主要应通过选择高效的算法来实现。
( Y)12.测试人员要坚持原则,缺陷未修复完坚决不予通过。
(N)13.项目立项前测试人员不需要提交任何工件。
(Y)14.缺陷跟踪系统只针对对测试人员来使用。
(N )15.从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。
(N )16.软件项目在进入需求分析阶段,测试人员应该开始介入其中。
( Y)17.测试是提高产品质量根本手段。
()18.代码评审员一般由测试员担任。
(N)19.代码评审是检查源代码是否达到模块设计的要求。
(N)20.软件测试员可以对产品说明书进行白盒测试。
(N )21.静态白盒测试可以找出遗漏之处的问题。
(Y )22.总是首先设计白盒测试用例。
(N)23.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
(N)24.黑盒测试方法中最有效的是因果图法。
(Y )25.软件测试按照测试过程分类为黑盒、白盒测试。
(N)26.白盒测试又称结构测试、逻辑驱动测试或基于程序的测试。
(Y)27.白盒测试时一般由开发人员兼任测试人员的角色。
(Y)28.黑盒测试是从用户观点出发的测试。
(Y)29.白盒测试是从用户观点出发的测试。
(N)30.白盒测试根据程序外部特征进行测试,黑盒测试根据程序内部逻辑结构进行测试。
一.断定剖析题1.软件测试的目标是尽可能多的找出软件的缺点.(Y)2.软件测试的目标是证实软件没有错误.(N)3.测试组负责软件质量.(N )4.程序的效力与程序的庞杂性相干.(N )5.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性. (Y )6.测试程序仅仅按预期方法运行就行了.(N )7.好的测试员不懈寻求完善.( Y)8.不消失质量很高但靠得住性很差的产品.(N )9.测试是为了验证该软件已准确地实现了用户的请求.( N)10.发明错误多的程序模块,残留在模块中的错误也多.(Y )11.程序效力的进步重要应经由过程选择高效的算法来实现.( Y)12.测试人员要保持原则,缺点未修复完果断不予经由过程.(N)13.项目立项前测试人员不须要提交任何工件.(Y)14.缺点跟踪体系只针对对测试人员来运用.(N )15.从用户软件开辟者的角度动身,广泛愿望经由过程软件测试吐露软件中隐蔽的错误和缺点,以斟酌是否可接收该产品. (N ) 16.软件项目在进入需求剖析阶段,测试人员应当开端介入个中.( Y)17.测试是进步产品德量根本手腕.()18.代码评审员一般由测试员担任.(N)19.代码评审是检讨源代码是否达到模块设计的请求.(N)20.软件测试员可以对产品解释书进行白盒测试.(N )21.静态白盒测试可以找出漏掉之处的问题.(Y )22.老是起首设计白盒测试用例.(N)23.用黑盒法测试时,测试用例是根据程序内部逻辑设计的.(N)24.黑盒测试办法中最有用的是因果图法.(Y )25.软件测试按照测试过程分类为黑盒.白盒测试.(N)26.白盒测试又称构造测试.逻辑驱动测试或基于程序的测试.(Y)27.白盒测试时一般由开辟人员兼任测试人员的脚色.(Y)28.黑盒测试是从用户不雅点动身的测试.(Y)29.白盒测试是从用户不雅点动身的测试.(N)30.白盒测试根据程序外部特点进行测试,黑盒测试根据程序内部逻辑构造进行测试.(N)31.程序经由过程了周全的白盒测试,就不须要再进行黑盒测试了.(N)32.对于统一个测试对象,等价类的测试用例数多于鸿沟值的测试用例数.()33.假如输入前提划定了取值范围,则可界说一个有用等价类和两个无效等价类.(Y)34.不克不及对输出值域进行硬朗性测试.()35.有n个变量的函数的硬朗最坏情形测试用例的个数为:5的n 次方.(Y)36.有n个变量的函数的硬朗最坏情形测试用例的个数为:7的n 次方.(N)37.有n个变量的函数的硬朗性测试用例的个数为:5n+1.(N)38.有n个变量的函数的最坏情形测试会产生5的n次方个测试用例.(Y)39.有n个变量的函数的鸿沟值剖析会产生4n+1个测试用例(Y)40.鸿沟值剖析的假设是“多缺点”假设.(N)41.硬朗性测试的重要价值是不雅察破例情形的处理.(Y)42.在设计测试用例时,应包含合理的输入前提和不合理的输入前提.(Y )43.弱硬朗等价类测试基于多缺点假设.(N)44.强硬朗等价类测试是基于多缺点假设,并斟酌了无效值.(Y)45.强一般等价类测试斟酌了无效值.(Y)46.弱一般等价类是基于单缺点假设.(Y)47.弱硬朗等价类测试基于单缺点假设并斟酌了无效值.(Y)48.等价类测试的弱情势不如对应的强情势的测试周全(Y)49.语句笼罩是最弱的逻辑笼罩.(Y)50.语句笼罩是最强的逻辑笼罩.(N)51.剖断笼罩不必定包含前提笼罩.(Y)52.前提笼罩不必定包含剖断笼罩.(Y)53.剖断/前提笼罩能同时知足剖断.前提两种笼罩尺度.(Y)54.剖断/前提笼罩指知足剖断笼罩尺度或前提笼罩尺度.(N)55.DD-路径图是一种紧缩图.(Y)56.具体设计的目标是为软件构造图中的每一个模块肯定运用的算法和块内数据构造,并用某种选定的表达对象给出清楚的描写.( Y)57.尽量用公共过程或子程序去代替反复的代码段.(N)58.对于连锁型分支构造,如有n个剖断语句,则有2n条路径.(Y)59.尽量采取复合的前提测试,以防止嵌套的分支构造.(Y)60.GOTO语句概念简略,运用便利,在某些情形下,保存GOTO语句反能使写出的程序加倍简练.(Y)61.单元测试能发明约80%的软件缺点.(Y)62.单元测试属于动态测试. ( N)63.单元测试多采取白盒测试(构造性测试)技巧.(Y)64.单元测试须要从程序的内部构造动身设计测试用例.(Y)65.单元测试须要为每个根本单元开辟驱动模块或桩模块.(Y)66.在面向对象说话说话中,单元测试是函数或子过程.()67.单元测试又称为模块测试,是针对软件测试的最小单位-程序模块进行准确性磨练的测试工作.(Y)68.集成测试筹划在需求剖析阶段末提交.(N)69.自底向上集成须要测试员编写驱动程序.(Y)70.进行自底向上集成测试,须要为所测模块或子体系编制响应的驱动模块.(Y)71.进行自底向上集成测试,须要为所测模块或子体系编制响应的桩模块.(N)72.进行自顶向下集成测试,须要为所测模块或子体系编制响应的驱动模块.(N)73.进行自顶向下集成测试,须要为所测模块或子体系编制响应的桩模块.(Y)74.MM-路径是可履行路径.(Y)75.非渐增式集成方法,发明错误难以诊断定位.(Y)76.集成测试是磨练程序单元或部件的接口关系,慢慢集成为相符概要设计请求的程序部件或全部体系.(Y)77.体系测试多采取白盒测试(构造性测试)技巧.(N)(黑盒测试)78.验收测试是由最终用户来实行的.(N)79.负载测试是验证要磨练的体系的才能最高能达到什么程度.(N)80.我们可以工资的使得软件不消失设置装备摆设问题.(N)81.可以宣布具有设置装备摆设缺点的软件产品.(Y )82.所有软件必须进行某种程度的兼容性测试.( Y)83.所有软件都有一个用户界面,是以必须测试易用性.( N)84.β测试是由软件的多个用户在实际运用情形下进行的测试.(Y)85.体系测试是在真实或模仿体系运行情形下,检讨完全的程序体系可否和相干硬件.外设.收集.体系软件和支撑平台等准确设置装备摆设与衔接,并知足用户需求.(Y)86.Beta 测试是验收测试的一种.(Y)二.简答题1.什么是软件测试?软件测试的目标和感化是什么?答:运用测试对象按照测试筹划和流程对产品进行功效和机能测试,甚至根据须要编写不合的测试对象,设计和保护测试体系,对测试筹划可能消失的问题进行剖析和评估.软件测试是在受控制的前提下对体系或运用程序进行操纵并评价操纵的成果.软件测试的目标是以起码的时光和人力,体系地找出软件中潜在的各类错误和缺点.测试是为了证实程序有错,而不是证实程序无错.一个成功的测试是发明了至今未发明的错误的测试.软件测试的原则包含:所有的测试都应追溯到用户的需求;尽早地和不竭地进行软件测试;不成能完全的测试,因为输入量太大,履行路径太多;留意测试中的群集现象;防止测试本身的程序;设计严密的测试用例.2.简述软件测试的目标和原则.答:软件测试的目标是以起码的时光和人力,体系地找出软件中潜在的各类错误和缺点.测试是为了证实程序有错,而不是证实程序无错.一个成功的测试是发明了至今未发明的错误的测试.软件测试的原则包含:所有的测试都应追溯到用户的需求;尽早地和不竭地进行软件测试;不成能完全的测试,因为输入量太大,履行路径太多;留意测试中的群集现象;防止测试本身的程序;设计严密的测试用例.3.软件缺点产生的原因?答:A.软件需求解释书编写的不周全,不完全,不准确,并且经常更改B.软件设计解释书C.软件操纵人员的程度D.开辟人员不克不及很好的懂得需求明书和沟通缺少4.什么是软件测试,以及软件测试的意义?答:软件测试是为了发明错误而履行程序的过程.软件测试是根据软件开辟阶段的规格解释和程序的内部构造而精心设计的一批测试用例(即输入数据及预期的输出成果),并运用这些测试用例去运行程序,以发明错误的过程.意义:1.对产品德量完成周全的评估,为软件产品宣布(如验收测试).软件体系安排(如机能筹划测试).软件产品剖断(第三方自力测试)委托方和被委托方胶葛仲裁(第三方自力测试)和其它决议计划供给信息;2.经由过程中断的测试(包含需求评审.设计评审.代码评审等)可以对产品德量供给中断的.快速的反馈,从而在全部开辟过程中不竭地.实时地改良产品的质量,并削减各类返工,下降软件开辟的成本;3.经由过程测试发明所要交付产品的缺点,特殊是尽可能地发明各类轻微的缺点,下降或清除产品德量风险,进步客户的知足度,扩大市场份额,进步客户的忠实度.4.经由过程对缺点进行剖析,找出缺点产生的根起源基本因(软件过程中的问题,包含错误的行动方法)或总结出软件产品的缺点模式,防止将来犯同样的错误或产生相似的产品问题,达到缺点预防的目标5.什么是软件测试?什么是测试用例,测试用例必须包含那几部分?答:狭义的讲, 一个测试用例就是测试人员用以测试被测软件的某个特点或特点组合的一组数据. 这组数据可能是从用户处得来的实际的一组数据, 也可能是测试人员专门设计出来的测试软件某些功效的一组数据.6.简述你对测试工作的熟悉过程.在今后的工作的一些建议.7.请辨析软件的质量是“设计出来的”照样“测试出来的”不雅点.8.软件测试与软件开辟的关系?答:软件开辟是一个体系的工程.包含需求剖析,设计,编码,测试,保护等等几个环节.测试是全部软件开辟流程中的一个环节.9.在测试性命周期中,测试过程分为几个阶段?各个阶段的寄义?以及各阶段的测试根据是什么?答:软件测试是一个规矩的过程,包含测试设计.测试履行以及测试成果比较等.①测试设计:根据软件开辟各阶段的文档材料和程序的内部构造,运用各类设计测试用例技巧精心设计测试用例.②测试履行:运用这些测试用例履行程序,得到测试成果.③测试成果比较:将预期的成果与实际测试成果进行比较,假如二者不相符,对于消失的错误进行纠错,并修正响应文档.修正后的程序还要进行再次测试,直到知足为止.假如测试发明不了错误,可能因为测试设置装备摆设斟酌不严密,应斟酌从新制订测试筹划,设计测试用例.按照开辟阶段划分,软件测试可分为单元测试.集成测试,体系测试和验收测试.单元测试:针对每个单元的测试, 以确保每个模块能正常工作为目标.集成测试:对已测试过的模块进行组装,进行集成测试.体系测试:磨练软件产品可否与体系的其他部分调和工作.验收测试:磨练软件产品德量的最后一道工序.10.一名优良的软件测试工程师应具备哪些本质?答:一个优良的测试工程师应当具备的根本本质有:义务心.沟通才能.团队精力.自负念.耐烦.疑惑精力.洞察力.滑稽感等.应具备的专业本质有:有竞争力的测试人员要具有三方面的技巧:盘算机专业技巧.测试专业技巧.软件编程技巧.11.若何做一名及格的测试人员?测试人员应具备本质如下:(1)沟通才能.(2)移情才能.(3)技巧才能.(4)自负念.(5)交际才能.(6)滑稽感.(7)很强的记忆力.(8)耐烦.(9)疑惑精力.(10)自我督促.(11)洞察力.12.测试筹划的目标是什么?答:软件测试筹划是指点测试过程的纲要性文件,包含了产品概述.测试计谋.测试办法.测试区域.测试设置装备摆设.测试周期.测试资本.测试交换.风险剖析等内容.借助软件测试筹划,介入测试的项目成员,尤其是测试治理人员,可以明白测试义务和测试办法,保持测试实行过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各类变动.13.什么是黑盒测试?黑盒测试重要采取的技巧有哪些?答:黑盒测试又称为功效测试.数据驱动测试和基于规格解释的测试.它从用户不雅点动身的测试.用这种办法进行测试时,把被测试程序当作一个黑盒,在不斟酌程序内部构造的内部特点.测试者只知道该程序输入和输出之间的关系或程序功效的情形下,依附可以或许反应这一关系和程序功效需求规格的解释书,来肯定测试用例和揣摸测试成果的准确性.黑盒测试的办法包含:鸿沟值剖析.等价类测试.基于决议计划表的测试和因果图等.14.简略描写黑盒测试各类办法的特色.答:黑盒测试的办法重要有鸿沟值剖析法.等价类划分法.因果图法.决议计划表测试法等.鸿沟值剖析运用输入变量的最小值.略大于最小值.输入值域内的随意率性值.略小于最大值和最大值来设计测试用例.等价类划分法是把程序的输入域划分为若干部分,然后从每个部分中拔取少数代表性数据当作测试用例.经由类此外划分后,每一类的代表性数据在测试中的感化都等价于这一类中的其他值.因果图办法就是从程序规格解释书的描写中找出因(输入前提)和果(输出成果),将因果图转换为决议计划表,最后为决议计划表中的每一列设计一个测试用例.这种办法斟酌到了输入情形各类组合以及各个输入情形之间的互相制约关系.在所有的黑盒测试办法中,基于决议计划表的测试是最为严厉.最具有逻辑性的.在一些数据处理问题当中,某些操纵的实行依附于多个逻辑前提的组合,即:针对不合逻辑前提的组合值,分离履行不合的操纵.决议计划表法很合适测试这类问题.15.假如可以或许履行完善的黑盒测试,还须要进行白盒测试吗?为什么?答:须要,黑盒测试可根据程序规格磨练程序是否完成划定功效,但无法发明程序内部的编码和逻辑错误,白盒测试与之相反互补.16.鸿沟值测试有几种办法?答:鸿沟值剖析和硬朗性测试17.等价分类法的测试技巧采取的一般办法?举例解释?答:(1)为每个等价类编号;(2)设计一个新的测试筹划,以尽可能多的笼罩尚未被笼罩的有用等价类,反复这一步调,直到所有有用等价类被笼罩为止.(3)设计一个新的测试筹划,使它笼罩一个尚未被笼罩的无效等价类, 反复这一步调,直到所有无效等价类被笼罩为止.18.什么是等价类?若何划分等价类?等价类测试中有哪些办法?答:把单元的输入域化分为几种数据类,每种用来发明一类的错误,每类只用供给一个或几个用例数据.目标是削减用例数目.19.请试着比较一下黑盒测试.白盒测试.单元测试.集成测试.体系测试.验收测试的差别与接洽.答:黑盒测试:已知产品的功效设计规格,可以进行测试证实每个实现了的功效是否相符请求.白盒测试:已知产品的内部工作过程,可以经由过程测试证实每种内部操纵是否相符设计规格请求,所有内部成分是否以经由检讨.软件的黑盒测试意味着测试要在软件的接口处进行.这种办法是把测试对象看做一个黑盒子,测试人员完全不斟酌程序内部的逻辑构造和内部特点,只根据程序的需求规格解释书,检讨程序的功效是否相符它的功效解释.是以黑盒测试又叫功效测试或数据驱动测试.黑盒测试主如果为了发明以下几类错误:1.是否有不准确或漏掉的功效?2.在接口上,输入是否能准确的接收?可否输出准确的成果?3.是否稀有据构造错误或外部信息(例如数据文件)拜访错误?4.机能上是否可以或许知足请求?5.是否有初始化或终止性错误?软件的白盒测试是对软件的过程性细节做过细的检讨.这种办法是把测试对象看做一个打开的盒子,它许可测试人员运用程序内部的逻辑构造及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试.经由过程在不合点检讨程序状况,肯定实际状况是否与预期的状况一致.是以白盒测试又称为构造测试或逻辑驱动测试.白盒测试主如果想对程序模块进行如下检讨:1.对程序模块的所有自力的履行路径至少测试一遍.2.对所有的逻辑剖断,取“真”与取“假”的两种情形都能至少测一遍.3.在轮回的鸿沟和运行的界线内履行轮回体.4.测试内部数据构造的有用性,等等.单元测试(模块测试)是开辟者编写的一小段代码,用于磨练被测代码的一个很小的.很明白的功效是否准确.平日而言,一个单元测试是用于断定某个特定前提(或者场景)下某个特定函数的行动.单元测试是由程序员本身来完成,最终受益的也是程序员本身.可以这么说,程序员有义务编写功效代码,同时也就有义务为本身的代码编写单元测试.履行单元测试,就是为了证实这段代码的行动和我们期望的一致.集成测试(也叫组装测试,结合测试)是单元测试的逻辑扩大.它的最简略的情势是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口.从这一层意义上讲,组件是指多个单元的集成聚合.在实际筹划中,很多单元组合成组件,而这些组件又聚合成程序的更大部分.办法是测试片断的组合,并最终扩大过程,将您的模块与其他组的模块一路测试.最后,将组成过程的所有模块一路测试.体系测试是将经由测试的子体系装配成一个完全体系来测试.它是磨练体系是否确切能供给体系筹划解释书中指定功效的有用办法.(罕有的联调测试)体系测试的目标是对最终软件体系进行周全的测试,确保最终软件体系知足产品需求并且遵守体系设计.验收测试是安排软件之前的最后一个测试操纵.验收测试的目标是确保软件预备停当,并且可以让最终用户将其用于履行软件的既定功效和义务.验收测试是向将来的用户标明体系可以或许像预定请求那样工作.经集成测试后,已经按照设计把所有的模块组装成一个完全的软件体系,接口错误也已经根本清除了,接着就应当进一步验证软件的有用性,这就是验收测试的义务,即软件的功效和机能如同用户所合理等待的那样.20.什么是白盒测试?白盒测试重要采取的技巧有哪些? 白盒测试有那几种办法?并简略描写各类办法的特色.答:白盒测试又称为构造测试.逻辑驱动测试或基于程序的测试.它依附于对程序细节的严密的磨练.针对特定前提和轮回集设计测试用例,对软件的逻辑路径进行测试.在程序的不合点磨练程序的状况,来进行剖断其实际情形是否和预期的状况相一致.白盒测试包含:逻辑笼罩.基路径测试.数据流测试.程序插装等.总体上分为静态办法和动态办法两大类静态:症结功效是检讨软件的暗示和描写是否一致,没有冲突或者没有歧义动态:语句笼罩.剖断笼罩.前提笼罩.剖断前提笼罩.前提组合笼罩.路径笼罩.21.经常运用的逻辑笼罩测试办法有哪几种?并简略描写各类办法的目标.答:逻辑笼罩可分为:语句笼罩.剖断笼罩.前提笼罩.剖断/前提笼罩及路径笼罩.语句笼罩:请求设计若干个测试用例,运行被测程序,使程序中的每个可履行语句至少被履行一次.剖断笼罩:请求设计若干测试用例,运行被测程序,使得程序中每个断定的取真分支和取假分支至少履行一次,即断定的真假值均要被检测.剖断笼罩又称为分支笼罩.前提笼罩:请求设计若干测试用例,履行被测程序,使得程序中每个断定的每个前提的可能取值至少被履行一次.剖断/前提笼罩:请求设计足够的测试用例,履行被测程序,使得断定中每个前提的所有可能取值至少被履行一次,同时每个断定的所有可能断定成果也至少被履行一次.路径笼罩:请求设计足够多测试用例,笼罩程序中所有可能的路径.22.逻辑笼罩中几种重要笼罩的寄义?举例解释?答:逻辑笼罩是一种运用最广泛的构造测试办法.逻辑笼罩以程序内部的逻辑构造为基本设计测试用例,请求对被测程序的逻辑构造有清楚的懂得,甚至要能控制源程序的所有细节.因为笼罩测试的目标不合,逻辑笼罩可分为:语句笼罩.剖断笼罩.前提笼罩.剖断/前提笼罩及路径笼罩.23.单元测试有那些步调,各个步调有那些实行内容.答:1.静态检讨:用对象Logiscope或者人工检讨单2.动态检讨:用对象PurifyPlus或者人工调试3.测试用例履行(对象某人工)设计测试用例及数据;(提前)编写测试用例代码.剧本.驱动模块和桩模块;(提前)运行测试用例,记载成果.(在步调1,2之落后行)24.非增量式测试与增量式测试答:非增量式测试的办法是先疏散测试,然后分散起来再一次完成集成测试.假如在模块的接口处消失错误,只会在最后的集成测试时一会儿吐露出来.增量式测试是慢慢集成和慢慢测试的办法,把可能消失的错误疏散吐露出来,便于找出问题和修正.并且一些模块在慢慢集成的测试中,得到了较多次的考验,是以,可能会取得较好的测试后果.结论:增量式测试要比非增量式测试具有必定的优胜性. 25.简述自顶向下增量式测试和自底向上增量式测试两种集成测试办法,并比较两者的长处和缺点.答:自顶向下增量式测试:重要长处在于它可以天然的做到慢慢求精,一开端就能让测试者看到体系的框架.重要缺点是须要供给桩模块,并且在输入/输出模块接入体系以前,在桩模块中暗示测试数据有必定艰苦.自底向上增量式测试:长处在于,因为驱动模块模仿了所有挪用参数,即使数据流并未组成有向的非环状图,生成测试数据也无艰苦.重要缺点在于,直到最后一个模块被加进去之后才干看到全部程序(体系)的框架.26.简述集成测试的过程.集成测试的办法有那些?答:体系集成测试重要包含以下过程:1. 构建的确认过程.2. 补丁的确认过程.3. 体系集成测试测试组提交过程.4. 测试用例设计过程.5. 测试代码编写过程.6. Bug的陈述过程.7. 每周/每两周的构建过程.8. 点对点的测试过程.9. 组内培训过程.27.比较自顶向下集成测试和自底向上集成测试的好坏?答:自顶向下集成测试暗示慢慢集成和慢慢测试是按照构造图自上而下进行的,即模块集成的次序是起首集成主控模块(主程序),然后按照控制层次构造向下进行集成.自底向上集成测试暗示慢慢集成和慢慢测试的工作是按构造图自下而长进行的,因为是从最底层开端集成,所以也就不再须要运用桩模块进行帮助测试.自顶向下测试的重要长处在于它可以天然的做到慢慢求精,一开端就能让测试者看到体系的框架.它的重要缺点是须要供给桩模块.自底向上的长处在于不须要桩模块,需用的驱动模块比较少.它的重要缺点在于,直到最后一个模块被加进去之后才干看到全部程序(体系)的框架.。
软件测试基础试题及答案详解大全一、单项选择题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. 什么是回归测试,为什么要进行回归测试?答案:回归测试是指在软件已经通过测试并发布后,由于修复了某个缺陷或在软件中添加了新的功能,需要重新进行的测试。
—、基本概念软件测试的基本任务动态测试与静态测试驱动模块与桩模块程序的三种基本控制结构程序效率软件软件工程软件生存周期非入侵式工具与入侵式工具二、判断题( )1.语句构造的原则是简单直接,不能因为追求效率而使代码复杂化( )2.文档是软件产品的一部分,没有文档的软件就不称其为软件。
( )3.好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。
( )4.边界值分析方法是取输入/输出等价类的边界值作为测试用例。
( )5.在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。
( )6.好的测试用例应能证明软件是正确的。
( )7.白盒测试仅与程序的内部结构有关,可以不考虑程序的功能要求。
( )&当软件开发项目的进度有可能拖延时,增加开发人员并不能加快进度。
( )9.不完善的系统定义往往是导致软件项目失败的主要原因。
( )10. 一个成功的项目唯一提交的就是运行程序。
( )11. 一个好的测试用例在于能发现至今未发现的错误。
( )12.软件工程的考虑范围主要是程序设计和实现。
( )13.等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。
( )14.在结构化程序设计中,应尽量采用复合的条件测试,以避免嵌套的分支结构( )15. GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。
( )16.发现错误多的程序模块,残留在模块中的错误也多。
( )17.程序效率的提高主要应通过选择高效的算法来实现。
( )1&模块化程序设计中,在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。
( )19.作为一个好的程序,不仅处理速度要快,而且易读易修改等等也都是重要的条件。
( )20.为了快速完成集成测试,采用一次性集成方式是适宜的。
( )21.自底向上集成需要测试员编写驱动程序。
软件测试题库及答案一、选择题1. 以下哪项不是软件测试的目的?A. 发现错误B. 验证功能C. 提高软件性能D. 确保软件质量答案:C2. 以下哪项不是软件测试的方法?A. 黑盒测试B. 白盒测试C. 静态测试D. 灰盒测试答案:D3. 以下哪个测试阶段通常在软件开发的后期进行?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:D4. 以下哪种测试用例设计方法是基于输入条件的?A. 等价类划分B. 边界值分析C. 因果图D. 场景测试答案:A二、填空题1. 软件测试的目的是________、________、________。
答案:发现错误、验证功能、确保软件质量2. 软件测试分为________、________、________和________四个阶段。
答案:单元测试、集成测试、系统测试、验收测试3. 黑盒测试主要关注软件的________,白盒测试主要关注软件的________。
答案:外部行为、内部逻辑4. 在测试用例设计过程中,________是测试用例设计的基础。
答案:测试需求三、判断题1. 软件测试是软件开发过程中的一个独立阶段。
()答案:正确2. 单元测试通常由开发人员完成。
()答案:正确3. 灰盒测试既关注软件的外部行为,也关注软件的内部逻辑。
()答案:正确4. 测试用例应该包含输入数据、预期结果和测试步骤。
()答案:正确四、简答题1. 简述软件测试的四个阶段及其作用。
答案:软件测试的四个阶段及其作用如下:(1)单元测试:对软件中的最小可测试单元进行检查,验证其功能是否正确。
(2)集成测试:将多个单元组合在一起,验证它们之间的接口是否正确。
(3)系统测试:对整个系统进行测试,验证系统的功能、性能、稳定性等。
(4)验收测试:在软件交付给客户前,对软件进行最终测试,确保其满足用户需求。
2. 简述等价类划分的测试用例设计方法。
答案:等价类划分是一种基于输入条件的测试用例设计方法。
一、估计分解题之阳早格格创做1.硬件尝试的脚法是尽大概多的找出硬件的缺陷.(Y)2.硬件尝试的脚法是道明硬件不过失.(N)3.尝试组控造硬件本量.(N )4.步调的效用与步调的搀纯性相闭.(N )5.硬件是一种逻辑真体,而不是简曲的物理真体,果而它具备抽象性. (Y )6.尝试步调只是按预期办法运止便止了.(N )7.佳的尝试员不懈探供完好.( Y)8.不存留本量很下但是稳当性很好的产品.(N )9.尝试是为了考证该硬件已粗确天真止了用户的央供.( N)10.创造过失多的步调模块,残留正在模块中的过失也多.(Y )11.步调效用的普及主要应通过采用下效的算法去真止.( Y)12.尝试人员要脆持准则,缺陷已建复完脆定不予通过.(N)13.名目坐项前尝试人员不需要提接所有工件.(Y)14.缺陷逃踪系统只针对付对付尝试人员去使用.(N )15.从用户硬件启垦者的角度出收,普遍憧憬通过硬件尝试表露硬件中隐躲的过失战缺陷,以思量是可可担当该产品. (N )16.硬件名目正在加进需要分解阶段,尝试人员该当启初介进其中.( Y)17.尝试是普及产品本量基础脚法.()18.代码评审员普遍由尝试员担当.(N)19.代码评审是查看源代码是可达到模块安排的央供.(N)20.硬件尝试员不妨对付产品道明书籍举止黑盒尝试.(N )21.固态黑盒尝试不妨找出遗漏之处的问题.(Y )22.经常最先安排黑盒尝试用例.(N)23.用乌盒法尝试时,尝试用例是根据步调里里逻辑安排的.(N)24.乌盒尝试要收中最灵验的是果果图法.(Y )25.硬件尝试依照尝试历程分类为乌盒、黑盒尝试.(N)26.黑盒尝试又称结构尝试、逻辑启动尝试大概鉴于步调的尝试.(Y)27.黑盒尝试时普遍由启垦人员兼任尝试人员的角色.(Y)28.乌盒尝试是从用户瞅面出收的尝试.(Y)29.黑盒尝试是从用户瞅面出收的尝试.(N)30.黑盒尝试根据步调中部个性举止尝试,乌盒尝试根据步调里里逻辑结构举止尝试.(N)31.步调通过了周齐的黑盒尝试,便不需要再举止乌盒尝试了.(N)32.对付于共一个尝试对付象,等价类的尝试用例数多于鸿沟值的尝试用例数.()33.如果输进条件确定了与值范畴,则可定义一个灵验等价类战二个无效等价类.(Y)34.不克不迭对付输出值域举止结实性尝试.()35.有n个变量的函数的结实最坏情况尝试用例的个数为:5的n次圆.(Y)36.有n个变量的函数的结实最坏情况尝试用例的个数为:7的n次圆.(N)37.有n个变量的函数的结实性尝试用例的个数为:5n+1.(N)38.有n个变量的函数的最坏情况尝试会爆收5的n次圆个尝试用例.(Y)39.有n个变量的函数的鸿沟值分解会爆收4n+1个尝试用例(Y)40.鸿沟值分解的假设是“多缺陷”假设.(N)41.结实性尝试的主要价格是瞅察例中情况的处理.(Y)42.正在安排尝试用例时,应包罗合理的输进条件战分歧理的输进条件.(Y )43.强结实等价类尝试鉴于多缺陷假设.(N)44.强结实等价类尝试是鉴于多缺陷假设,并思量了无效值.(Y)45.强普遍等价类尝试思量了无效值.(Y)46.强普遍等价类是鉴于单缺陷假设.(Y)47.强结实等价类尝试鉴于单缺陷假设并思量了无效值.(Y)48.等价类尝试的强形式不如对付应的强形式的尝试周齐(Y)49.语句覆盖是最强的逻辑覆盖.(Y)50.语句覆盖是最强的逻辑覆盖.(N)51.判决覆盖纷歧定包罗条件覆盖.(Y)52.条件覆盖纷歧定包罗判决覆盖.(Y)53.判决/条件覆盖能共时谦足判决、条件二种覆盖尺度.(Y)54.判决/条件覆盖指谦足判决覆盖尺度大概条件覆盖尺度.(N)55.DD-路径图是一种压缩图.(Y)56.仔细安排的脚法是为硬件结构图中的每一个模块决定使用的算法战块内数据结构,并用某种选定的表黑工具给出浑晰的形貌.( Y)57.尽管用大众历程大概子步调去代替沉复的代码段.(N)58.对付于连锁型分支结构,若有n个判决语句,则有2n条路径.(Y)59.尽管采与复合的条件尝试,以防止嵌套的分支结构.(Y)60.GOTO语句观念简朴,使用便当,正在某些情况下,死存GOTO语句反能使写出的步调越收简净.(Y)61.单元尝试能创造约80%的硬件缺陷.(Y)62.单元尝试属于动背尝试. ( N)63.单元尝试多采与黑盒尝试(结构性尝试)技能.(Y)64.单元尝试需要从步调的里里结构出收安排尝试用例.(Y)65.单元尝试需要为每个基础单元启垦启动模块大概桩模块.(Y)66.正在里背对付象谈话谈话中,单元尝试是函数大概子历程.()67.单元尝试又称为模块尝试,是针对付硬件尝试的最小单位-步调模块举止粗确性磨练的尝试处事 .(Y)68.集成尝试计划正在需要分解阶段终提接.(N)69.自底进与集成需要尝试员编写启动步调.(Y)70.举止自底进与集成尝试,需要为所测模块大概子系统体例相映的启动模块.(Y)71.举止自底进与集成尝试,需要为所测模块大概子系统体例相映的桩模块.(N)72.举止自顶背下集成尝试,需要为所测模块大概子系统体例相映的启动模块.(N)73.举止自顶背下集成尝试,需要为所测模块大概子系统体例相映的桩模块.(Y)74.MM-路径是可真止路径.(Y)75.非渐删式集成办法,创造过失易以诊疗定位.(Y)76.集成尝试是磨练步调单元大概部件的接心闭系,逐步集成为切合提要安排央供的步调部件大概所有系统.(Y)77.系统尝试多采与黑盒尝试(结构性尝试)技能.(N)(乌盒尝试)78.查支尝试是由最后用户去真施的.(N)79.背载尝试是考证要磨练的系统的本收最下能达到什么程度.(N)80.咱们不妨人为的使得硬件不存留摆设问题.(N)81.不妨颁布具备摆设缺陷的硬件产品.(Y )82.所有硬件必须举止某种程度的兼容性尝试.( Y)83.所有硬件皆有一个用户界里,果此必须尝试易用性.( N)84.β尝试是由硬件的多个用户正在本量使用环境下举止的尝试.(Y)85.系统尝试是正在真正在大概模拟系统运止环境下,查看完备的步调系统是可战相闭硬件、中设、搜集、系统硬件战支援仄台等粗确摆设与对接,并谦足用户需要.(Y)86.Beta 尝试是查支尝试的一种.(Y)二、简问题1.什么是硬件尝试?硬件尝试的脚法战效用是什么?问:利用尝试工具依照尝试筹备战过程对付产品举止功能战本能尝试,以至根据需要编写分歧的尝试工具,安排战维护尝试系统,对付尝试筹备大概出现的问题举止分解战评估.硬件尝试是正在受统造的条件下对付系统大概应用步调举止支配并评介支配的截止.硬件尝试的脚法是以最少的时间战人力,系统天找出硬件中潜正在的百般过失战缺陷.尝试是为了道明步调有错,而不是道明步调无错.一个乐成的尝试是创造了于今已创造的过失的尝试.硬件尝试的准则包罗:所有的尝试皆应逃溯到用户的需要;尽早天战不竭天举止硬件尝试;不可能真足的尝试,果为输进量太大,真止路径太多;注意尝试中的群集局里;防止尝试自己的步调;安排粗细的尝试用例.2.简述硬件尝试的脚法战准则.问:硬件尝试的脚法是以最少的时间战人力,系统天找出硬件中潜正在的百般过失战缺陷.尝试是为了道明步调有错,而不是道明步调无错.一个乐成的尝试是创造了于今已创造的过失的尝试.硬件尝试的准则包罗:所有的尝试皆应逃溯到用户的需要;尽早天战不竭天举止硬件尝试;不可能真足的尝试,果为输进量太大,真止路径太多;注意尝试中的群集局里;防止尝试自己的步调;安排粗细的尝试用例.3.硬件缺陷爆收的本果?问: A.硬件需要道明书籍编写的不周齐,不完备,禁绝确,而且时常变动 B.硬件安排道明书籍 C.硬件支配人员的火仄 D.启垦人员不克不迭很佳的明黑需要明书籍战相通缺累4.什么是硬件尝试,以及硬件尝试的意思?问:硬件尝试是为了创造过失而真止步调的历程.硬件尝试是根据硬件启垦阶段的规格道明战步调的里里结构而粗心安排的一批尝试用例(即输进数据及预期的输出截止),并利用那些尝试用例去运止步调,以创造过失的历程.意思:1.对付产品本量完毕周齐的评估,为硬件产品颁布(如查支尝试)、硬件系统安置(如本能筹备尝试)、硬件产品审定(第三圆独力尝试)委派圆战被委派圆纠葛仲裁(第三圆独力尝试)战其余计划提供疑息;2.通过持绝的尝试(包罗需要评审、安排评审、代码评审等)不妨对付产品本量提供持绝的、赶快的反馈,进而正在所有启垦历程中不竭天、即时天矫正产品的本量,并缩小百般返工,落矮硬件启垦的成本;3.通过尝试创造所要接付产品的缺陷,特天是尽大概天创造百般宽沉的缺陷,落矮大概与消产品本量危害,普及客户的谦意度,夸大商场份额,普及客户的诚恳度.4.通过对付缺陷举止分解,找出缺陷爆收的根根源基本果(硬件历程中的问题,包罗过失的止为办法)大概归纳出硬件产品的缺陷模式,防止将去犯共样的过失大概爆收类似的产品问题,达到缺陷防止的脚法5.什么是硬件尝试?什么是尝试用例,尝试用例必须包罗那几部分?问:狭义的道,一个尝试用例便是尝试人员用以尝试被测硬件的某个个性大概个性拉拢的一组数据. 那组数据大概是从用户处得去的本量的一组数据,也大概是尝试人员博门安排出去的尝试硬件某些功能的一组数据.6.简述您对付尝试处事的认识历程、正在以去的处事的一些提议.7.请辨析硬件的本量是“安排出去的”仍旧“尝试出去的”瞅面.8.硬件尝试与硬件启垦的闭系?问:硬件启垦是一个系统的工程.包罗需要分解,安排,编码,尝试,维护等等几个关节.尝试是所有硬件启垦过程中的一个关节.9.正在尝试死命周期中,尝试历程分为几个阶段?各个阶段的含意?以及各阶段的尝试依据是什么?问:硬件尝试是一个准则的历程,包罗尝试安排、尝试真止以及尝试截止比较等.①尝试安排:根据硬件启垦各阶段的文档资料战步调的里里结构,利用百般安排尝试用例技能粗心安排尝试用例.②尝试真止:利用那些尝试用例真止步调,得到尝试截止.③尝试截止比较:将预期的截止与本量尝试截止举止比较,如果二者不切合,对付于出现的过失举止纠错,并建改相映文档.建改后的步调还要举止再次尝试,曲到谦意为止.如果尝试创造不了过失,大概由于尝试摆设思量不周齐,应试虑沉新造定尝试筹备,安排尝试用例.依照启垦阶段区分,硬件尝试可分为单元尝试、集成尝试,系统尝试战查支尝试.单元尝试:针对付每个单元的尝试,以保证每个模块能仄常处事为目标.集成尝试:对付已尝试过的模块举止组拆,举止集成尝试.系统尝试:磨练硬件产品是可与系统的其余部分协做处事.查支尝试:磨练硬件产品本量的终尾一道工序.10.一名特出的硬件尝试工程师应具备哪些素量?问:一个特出的尝试工程师该当具备的基础素量有:责任心、相通本收、团队粗神、自自疑心、耐性、猜疑粗神、洞察力、幽默感等.应具备的博业素量有:有比赛力的尝试人员要具备三圆里的技能:估计机博业技能、尝试博业技能、硬件编程技能.11.怎么样搞一名合格的尝试人员?尝试人员应具备素量如下:(1)相通本收.(2)移情本收.(3)技能本收.(4)自自疑心.(5)中接本收.(6)幽默感.(7)很强的影象力.(8)耐性.(9)猜疑粗神.(10)自尔敦促.(11)洞察力.12.尝试计划的脚法是什么?问:硬件尝试计划是指挥尝试历程的目收性文献,包罗了产品概括、尝试战术、尝试要收、尝试天区、尝试摆设、尝试周期、尝试资材、尝试接流、危害分解等真量.借帮硬件尝试计划,介进尝试的名目成员,越收是尝试管造人员,不妨粗确尝试任务战尝试要收,脆持尝试真施历程的逆畅相通,逃踪战统造尝试进度,应付于尝试历程中的百般变动.13.什么是乌盒尝试?乌盒尝试主要采与的技能有哪些?问:乌盒尝试又称为功能尝试、数据启动尝试战鉴于规格道明的尝试.它从用户瞅面出收的尝试.用那种要收举止尝试时,把被尝试步调当做一个乌盒,正在不思量步调里里结构的里里个性、尝试者只相识该步调输进战输出之间的闭系大概步调功能的情况下,依好不妨反映那一闭系战步调功能需要规格的道明书籍,去决定尝试用例战估计尝试截止的粗确性.乌盒尝试的要收包罗:鸿沟值分解、等价类尝试、鉴于计划表的尝试战果果图等.14.简朴形貌乌盒尝试百般要收的个性.问:乌盒尝试的要收主要有鸿沟值分解法、等价类区分法、果果图法、计划表尝试法等.鸿沟值分解利用输进变量的最小值、略大于最小值、输进值域内的任性值、略小于最大值战最大值去安排尝试用例.等价类区分法是把步调的输进域区分为若搞部分,而后从每个部分中采用少量代表性数据当做尝试用例.通过类别的区分后,每一类的代表性数据正在尝试中的效用皆等价于那一类中的其余值.果果图要收便是从步调规格道明书籍的形貌中找出果(输进条件)战果(输出截止),将果果图变换为计划表,终尾为计划表中的每一列安排一个尝试用例.那种要收思量到了输进情况百般拉拢以及各个输进情况之间的相互约束闭系.正在所有的乌盒尝试要收中,鉴于计划表的尝试是最为庄重、最具备逻辑性的.正在一些数据处理问题核心,某些支配的真施依好于多个逻辑条件的拉拢,即:针对付分歧逻辑条件的拉拢值,分别真止分歧的支配.计划表法很切合尝试那类问题.15.如果不妨真止完好的乌盒尝试,还需要举止黑盒尝试吗?为什么?问:需要,乌盒尝试可根据步调规格磨练步调是可完毕确定功能,但是无法创造步调里里的编码战逻辑过失,黑盒尝试与之好异互补.16.鸿沟值尝试有几种要收?问:鸿沟值分解战结实性尝试17.等价分类法的尝试技能采与的普遍要收?举例道明?问:(1)为每个等价类编号;(2)安排一个新的尝试筹备,以尽大概多的覆盖尚已被覆盖的灵验等价类,沉复那一步调,曲到所有灵验等价类被覆盖为止.(3)安排一个新的尝试筹备,使它覆盖一个尚已被覆盖的无效等价类, 沉复那一步调,曲到所有无效等价类被覆盖为止.18.什么是等价类?怎么样区分等价类?等价类尝试中有哪些要收?问:把单元的输进域化分为几种数据类,每种用去创造一类的过失,每类只用提供一个大概几个用例数据.脚法是缩小用例数量.19.请试着比较一下乌盒尝试、黑盒尝试、单元尝试、集成尝试、系统尝试、查支尝试的辨别与通联.问:乌盒尝试:已知产品的功能安排规格,不妨举止尝试道明每个真止了的功能是可切合央供.黑盒尝试:已知产品的里里处事历程,不妨通过尝试道明每种里里支配是可切合安排规格央供,所有里里身分是可以通过查看.硬件的乌盒尝试表示着尝试要正在硬件的接心处举止.那种要收是把尝试对付象瞅搞一个乌盒子,尝试人员真足不思量步调里里的逻辑结媾战里里个性,只依据步调的需要规格道明书籍,查看步调的功能是可切合它的功能道明.果此乌盒尝试又喊功能尝试大概数据启动尝试.乌盒尝试主假若为了创造以下几类过失:1、是可有不粗确大概遗漏的功能?2、正在接心上,输进是可能粗确的担当?是可输出粗确的截止?3、是可罕见据结构过失大概中部疑息(比圆数据文献)考察过失?4、本能上是可不妨谦足央供?5、是可有初初化大概终止性过失?硬件的黑盒尝试是对付硬件的历程性细节搞粗致的查看.那种要收是把尝试对付象瞅搞一个挨启的盒子,它允许尝试人员利用步调里里的逻辑结构及有闭疑息,安排大概采用尝试用例,对付步调所有逻辑路径举止尝试.通过正在分歧面查看步调状态,决定本量状态是可与预期的状态普遍.果此黑盒尝试又称为结构尝试大概逻辑启动尝试.黑盒尝试主假若念对付步调模块举止如下查看:1、对付步调模块的所有独力的真止路径起码尝试一遍.2、对付所有的逻辑判决,与“真”与与“假”的二种情况皆能起码测一遍.3、正在循环的鸿沟战运止的界限内真止循环体.4、尝试里里数据结构的灵验性,等等.单元尝试(模块尝试)是启垦者编写的一小段代码,用于磨练被测代码的一个很小的、很粗确的功能是可粗确.常常而止,一个单元尝试是用于估计某个特定条件(大概者场景)下某个特定函数的止为.单元尝试是由步调员自己去完毕,最后受益的也是步调员自己.不妨那样道,步调员有责任编写功能代码,共时也便有责任为自己的代码编写单元尝试.真止单元尝试,便是为了道明那段代码的止为战咱们憧憬的普遍.集成尝试(也喊组拆尝试,共同尝试)是单元尝试的逻辑扩展.它的最简朴的形式是:二个已经尝试过的单元拉拢成一个组件,而且尝试它们之间的接心.从那一层意思上道,组件是指多个单元的集成散合.正在现真筹备中,许多单元拉拢成组件,而那些组件又散合成步调的更大部分.要收是尝试片段的拉拢,并最后扩展进程,将您的模块与其余组的模块所有尝试.终尾,将形成进程的所有模块所有尝试.系统尝试是将通过尝试的子系统拆置成一个完备系统去尝试.它是磨练系统是可真真能提供系统筹备道明书籍中指定功能的灵验要收.(罕睹的联调尝试)系统尝试的脚法是对付最后硬件系统举止周齐的尝试,保证最后硬件系统谦足产品需要而且按照系统安排.查支尝试是安置硬件之前的终尾一个尝试支配.查支尝试的脚法是保证硬件准备便绪,而且不妨让最后用户将其用于真止硬件的既定功能战任务.查支尝试是背已去的用户标明系统不妨像预约央供那样处事.经集成尝试后,已经依照安排把所有的模块组拆成一个完备的硬件系统,接心过失也已经基础排除了,接着便该当进一步考证硬件的灵验性,那便是查支尝试的任务,即硬件的功能战本能如共用户所合理期待的那样.20.什么是黑盒尝试?黑盒尝试主要采与的技能有哪些? 黑盒尝试有那几种要收?并简朴形貌百般要收的个性.问:黑盒尝试又称为结构尝试、逻辑启动尝试大概鉴于步调的尝试.它依好于对付步调细节的周齐的磨练.针对付特定条件战循环集安排尝试用例,对付硬件的逻辑路径举止尝试.正在步调的分歧面磨练步调的状态,去举止判决其本量情况是可战预期的状态相普遍.黑盒尝试包罗:逻辑覆盖、基路径尝试、数据流尝试、步调插拆等.总体上分为固态要收战动背要收二大类固态:闭键功能是查看硬件的表示战形貌是可普遍,不辩论大概者不歧义动背:语句覆盖、判决覆盖、条件覆盖、判决条件覆盖、条件拉拢覆盖、路径覆盖.21.时常使用的逻辑覆盖尝试要收有哪几种?并简朴形貌百般要收的脚法.问:逻辑覆盖可分为:语句覆盖、判决覆盖、条件覆盖、判决/条件覆盖及路径覆盖.语句覆盖:央供安排若搞个尝试用例,运止被测步调,使步调中的每个可真止语句起码被真止一次.判决覆盖:央供安排若搞尝试用例,运止被测步调,使得步调中每个估计的与真分支战与假分支起码真止一次,即估计的真假值均要被检测.判决覆盖又称为分支覆盖.条件覆盖:央供安排若搞尝试用例,真止被测步调,使得步调中每个估计的每个条件的大概与值起码被真止一次.判决/条件覆盖:央供安排足够的尝试用例,真止被测步调,使得估计中每个条件的所有大概与值起码被真止一次,共时每个估计的所有大概估计截止也起码被真止一次.路径覆盖:央供安排足够多尝试用例,覆盖步调中所有大概的路径.22.逻辑覆盖中几种主要覆盖的含意?举例道明?问:逻辑覆盖是一种使用最广大的结构尝试要收.逻辑覆盖以步调里里的逻辑结构为前提安排尝试用例,央供对付被测步调的逻辑结构有收会的相识,以至要能掌握源步调的所有细节.由于覆盖尝试的目标分歧,逻辑覆盖可分为:语句覆盖、判决覆盖、条件覆盖、判决/条件覆盖及路径覆盖.23.单元尝试有那些步调,各个步调有那些真施真量.问:1.固态查看:用功具Logiscope大概者人为查看单2.动背查看:用功具PurifyPlus大概者人为调试3.尝试用例真止(工具大概人为)安排尝试用例及数据;(提前)编写尝试用例代码、足本、启动模块战桩模块;(提前)运止尝试用例,记录截止.(正在步调1,2之后举止)24.非删量式尝试与删量式尝试问:非删量式尝试的要收是先分别尝试,而后集结起去再一次完毕集成尝试.假若正在模块的接心处存留过失,只会正在终尾的集成尝试时一下子表暴露去.删量式尝试是逐步集成战逐步尝试的要收,把大概出现的过失分别表暴露去,便于找出问题战建改.而且一些模块正在逐步集成的尝试中,得到了较多次的磨练,果此,大概会博得较佳的尝试效验.论断:删量式尝试要比非删量式尝试具备一定的劣良性.25.简述自顶背下删量式尝试战自底进与删量式尝试二种集成尝试要收,并比较二者的便宜战缺面.问:自顶背下删量式尝试:主要便宜正在于它不妨自然的搞到逐步供粗,一启初便能让尝试者瞅到系统的框架.主要缺面是需要提供桩模块,而且正在输进/输出模块接进系统往日,正在桩模块中表示尝试数据有一定艰易.自底进与删量式尝试:便宜正在于,由于启动模块模拟了所有调用参数,纵然数据流并已形成有背的非环状图,死成尝试数据也无艰易.主要缺面正在于,曲到终尾一个模块被加进去之后才搞瞅到所有步调(系统)的框架.26.简述集成尝试的历程.集成尝试的要收有那些?问:系统集成尝试主要包罗以下历程:1. 建坐的确认历程.2. 补丁的确认历程.3. 系统集成尝试尝试组提接历程.4. 尝试用例安排历程.5. 尝试代码编写历程.6. Bug的报告历程.7. 每周/每二周的建坐历程.8. 面对付面的尝试历程.。
软件测试习题集及答案详细版HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】一、判断分析题1.软件测试的目的是尽可能多的找出软件的缺陷。
(Y)2.软件测试的目的是证明软件没有错误。
(N)3.测试组负责软件质量。
(N )4.程序的效率与程序的复杂性相关。
(N )5.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。
(Y )6.测试程序仅仅按预期方式运行就行了。
(N )7.好的测试员不懈追求完美。
( Y)8.不存在质量很高但可靠性很差的产品。
(N )9.测试是为了验证该软件已正确地实现了用户的要求。
( N)10.发现错误多的程序模块,残留在模块中的错误也多。
(Y )11.程序效率的提高主要应通过选择高效的算法来实现。
( Y)12.测试人员要坚持原则,缺陷未修复完坚决不予通过。
(N)13.项目立项前测试人员不需要提交任何工件。
(Y)14.缺陷跟踪系统只针对对测试人员来使用。
(N )15.从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。
(N )16.软件项目在进入需求分析阶段,测试人员应该开始介入其中。
( Y)17.测试是提高产品质量根本手段。
()18.代码评审员一般由测试员担任。
(N)19.代码评审是检查源代码是否达到模块设计的要求。
(N)20.软件测试员可以对产品说明书进行白盒测试。
(N )21.静态白盒测试可以找出遗漏之处的问题。
(Y )22.总是首先设计白盒测试用例。
(N)23.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
(N)24.黑盒测试方法中最有效的是因果图法。
(Y )25.软件测试按照测试过程分类为黑盒、白盒测试。
(N)26.白盒测试又称结构测试、逻辑驱动测试或基于程序的测试。
(Y)27.白盒测试时一般由开发人员兼任测试人员的角色。
(Y)28.黑盒测试是从用户观点出发的测试。
(Y)29.白盒测试是从用户观点出发的测试。
(N)30.白盒测试根据程序外部特征进行测试,黑盒测试根据程序内部逻辑结构进行测试。
(N)31.程序通过了全面的白盒测试,就不需要再进行黑盒测试了。
(N)32.对于同一个测试对象,等价类的测试用例数多于边界值的测试用例数。
()33.如果输入条件规定了取值范围,则可定义一个有效等价类和两个无效等价类。
(Y)34.不能对输出值域进行健壮性测试。
()35.有n个变量的函数的健壮最坏情况测试用例的个数为:5的n次方。
(Y)36.有n个变量的函数的健壮最坏情况测试用例的个数为:7的n次方。
(N)37.有n个变量的函数的健壮性测试用例的个数为:5n+1。
(N)38.有n个变量的函数的最坏情况测试会产生5的n次方个测试用例。
(Y)39.有n个变量的函数的边界值分析会产生4n+1个测试用例(Y)40.边界值分析的假设是“多缺陷”假设。
(N)41.健壮性测试的主要价值是观察例外情况的处理。
(Y)42.在设计测试用例时,应包括合理的输入条件和不合理的输入条件。
(Y )43.弱健壮等价类测试基于多缺陷假设。
(N)44.强健壮等价类测试是基于多缺陷假设,并考虑了无效值。
(Y)45.强一般等价类测试考虑了无效值。
(Y)46.弱一般等价类是基于单缺陷假设。
(Y)47.弱健壮等价类测试基于单缺陷假设并考虑了无效值。
(Y)48.等价类测试的弱形式不如对应的强形式的测试全面(Y)49.语句覆盖是最弱的逻辑覆盖。
(Y)50.语句覆盖是最强的逻辑覆盖。
(N)51.判定覆盖不一定包含条件覆盖。
(Y)52.条件覆盖不一定包含判定覆盖。
(Y)53.判定/条件覆盖能同时满足判定、条件两种覆盖标准。
(Y)54.判定/条件覆盖指满足判定覆盖标准或条件覆盖标准。
(N)55.DD-路径图是一种压缩图。
(Y)56.详细设计的目的是为软件结构图中的每一个模块确定使用的算法和块内数据结构,并用某种选定的表达工具给出清晰的描述。
( Y)57.尽量用公共过程或子程序去代替重复的代码段。
(N)58.对于连锁型分支结构,若有n个判定语句,则有2n条路径。
(Y)59.尽量采用复合的条件测试,以避免嵌套的分支结构。
(Y)60.GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。
(Y)61.单元测试能发现约80%的软件缺陷。
(Y)62.单元测试属于动态测试。
( N)63.单元测试多采用白盒测试(结构性测试)技术。
(Y)64.单元测试需要从程序的内部结构出发设计测试用例。
(Y)65.单元测试需要为每个基本单元开发驱动模块或桩模块。
(Y)66.在面向对象语言语言中,单元测试是函数或子过程。
()67.单元测试又称为模块测试,是针对软件测试的最小单位-程序模块进行正确性检验的测试工作。
(Y)68.集成测试计划在需求分析阶段末提交。
(N)69.自底向上集成需要测试员编写驱动程序。
(Y)70.进行自底向上集成测试,需要为所测模块或子系统编制相应的驱动模块。
(Y)71.进行自底向上集成测试,需要为所测模块或子系统编制相应的桩模块。
(N)72.进行自顶向下集成测试,需要为所测模块或子系统编制相应的驱动模块。
(N)73.进行自顶向下集成测试,需要为所测模块或子系统编制相应的桩模块。
(Y)74.MM-路径是可执行路径。
(Y)75.非渐增式集成方式,发现错误难以诊断定位。
(Y)76.集成测试是检验程序单元或部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统。
(Y)77.系统测试多采用白盒测试(结构性测试)技术。
(N)(黑盒测试)78.验收测试是由最终用户来实施的。
(N)79.负载测试是验证要检验的系统的能力最高能达到什么程度。
(N)80.我们可以人为的使得软件不存在配置问题。
(N)81.可以发布具有配置缺陷的软件产品。
(Y )82.所有软件必须进行某种程度的兼容性测试。
( Y)83.所有软件都有一个用户界面,因此必须测试易用性。
( N)84.β测试是由软件的多个用户在实际使用环境下进行的测试。
(Y)85.系统测试是在真实或模拟系统运行环境下,检查完整的程序系统能否和相关硬件、外设、网络、系统软件和支持平台等正确配置与连接,并满足用户需求。
(Y)86.Beta 测试是验收测试的一种。
(Y)二、简答题1.什么是软件测试?软件测试的目的和作用是什么答:利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。
软件测试是在受控制的条件下对系统或应用程序进行操作并评价操作的结果。
软件测试的目的是以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷。
测试是为了证明程序有错,而不是证明程序无错。
一个成功的测试是发现了至今未发现的错误的测试。
软件测试的原则包括:所有的测试都应追溯到用户的需求;尽早地和不断地进行软件测试;不可能完全的测试,因为输入量太大,执行路径太多;注意测试中的群集现象;避免测试自己的程序;设计周密的测试用例。
2.简述软件测试的目的和原则。
答:软件测试的目的是以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷。
测试是为了证明程序有错,而不是证明程序无错。
一个成功的测试是发现了至今未发现的错误的测试。
软件测试的原则包括:所有的测试都应追溯到用户的需求;尽早地和不断地进行软件测试;不可能完全的测试,因为输入量太大,执行路径太多;注意测试中的群集现象;避免测试自己的程序;设计周密的测试用例。
3.软件缺陷产生的原因?答:A.软件需求说明书编写的不全面,不完整,不准确,而且经常更改B.软件设计说明书C.软件操作人员的水平D.开发人员不能很好的理解需求明书和沟通不足4.什么是软件测试,以及软件测试的意义?答:软件测试是为了发现错误而执行程序的过程。
软件测试是根据软件开发阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入数据及预期的输出结果),并利用这些测试用例去运行程序,以发现错误的过程。
意义:1.对产品质量完成全面的评估,为软件产品发布(如验收测试)、软件系统部署(如性能规划测试)、软件产品鉴定(第三方独立测试)委托方和被委托方纠纷仲裁(第三方独立测试)和其它决策提供信息;2.通过持续的测试(包括需求评审、设计评审、代码评审等)可以对产品质量提供持续的、快速的反馈,从而在整个开发过程中不断地、及时地改进产品的质量,并减少各种返工,降低软件开发的成本;3.通过测试发现所要交付产品的缺陷,特别是尽可能地发现各种严重的缺陷,降低或消除产品质量风险,提高客户的满意度,扩大市场份额,提高客户的忠诚度。
4.通过对缺陷进行分析,找出缺陷发生的根本原因(软件过程中的问题,包括错误的行为方式)或总结出软件产品的缺陷模式,避免将来犯同样的错误或产生类似的产品问题,达到缺陷预防的目的5.什么是软件测试什么是测试用例,测试用例必须包括那几部分答:狭义的讲,一个测试用例就是测试人员用以测试被测软件的某个特性或特性组合的一组数据。
这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据。
6.简述你对测试工作的认识过程、在以后的工作的一些建议。
7.请辨析软件的质量是“设计出来的”还是“测试出来的”观点。
8.软件测试与软件开发的关系?答:软件开发是一个系统的工程。
包括需求分析,设计,编码,测试,维护等等几个环节。
测试是整个软件开发流程中的一个环节。
9.在测试生命周期中,测试过程分为几个阶段各个阶段的含义以及各阶段的测试依据是什么答:软件测试是一个规则的过程,包括测试设计、测试执行以及测试结果比较等。
①?测试设计:根据软件开发各阶段的文档资料和程序的内部结构,利用各种设计测试用例技术精心设计测试用例。
②?测试执行:利用这些测试用例执行程序,得到测试结果。
③?测试结果比较:将预期的结果与实际测试结果进行比较,如果二者不符合,对于出现的错误进行纠错,并修改相应文档。
修改后的程序还要进行再次测试,直到满意为止。
如果测试发现不了错误,可能由于测试配置考虑不周到,应考虑重新制定测试方案,设计测试用例。
按照开发阶段划分,软件测试可分为单元测试、集成测试,系统测试和验收测试。
单元测试:针对每个单元的测试,以确保每个模块能正常工作为目标。
集成测试:对已测试过的模块进行组装,进行集成测试。
系统测试:检验软件产品能否与系统的其他部分协调工作。
验收测试:检验软件产品质量的最后一道工序。
10.一名优秀的软件测试工程师应具备哪些素质?答:一个优秀的测试工程师应该具备的基本素质有:责任心、沟通能力、团队精神、自信心、耐心、怀疑精神、洞察力、幽默感等。