当前位置:文档之家› 软件测试官方(最终版)

软件测试官方(最终版)

知识点:二八原则1、为了提高测试的效率,应该( D)A 随机地选取测试数据B 取一切可能的输入数据作为测试数据C 在完成编码以后制定软件的测试计划D 选择发现错误的可能性大的数据作为测试数据2、经验表明,在程序设计中,某模块与其他模块相比,若该模块已发现并改正的错误数目较多,则该模块中残留的错误与其他模块相比,通常应该( B )A 较少 B较多C相似 D不确定3、发现错误多的模块,残留在模块中的错误也多。

(√) 知识点:软件测试目的、测试对象和软件测试人员职责1、软件测试的目的是( B )。

A 评价软件的质量B 发现软件的错误C 找出软件中的所有错误D 证明软件是正确的2、下列关于软件测试的叙述中错误的是(D )。

A、软件测试可以作为度量软件与用户需求间差距的手段B、软件测试的主要工作内容包括发现软件中存在的错误并解决存在的问题C、软件测试的根本目的是尽可能多地发现软件中存在地问题,最终把以个高质量地软件系统交给用户使用D、没有发现错误地测试也是有价值的3、测试是为了验证该软件已正确地实现了用户的要求。

(×)4、软件测试的目的是证明软件没有错误。

(×)5、下列关于软件测试策略的叙述中不正确的是( B)。

A.增量测试的主要问题在于需要额外编写很多特殊的测试程序B.静态测试与动态测试都要执行程序C.Myers认为自底向上测试方法要优于自顶向下测试的方法D.软件性能测试的目标之一是为了提高性能6、软件测试的对象包括( B )A目标程序和相关文档B源程序、目标程序、数据及相关文档C目标程序、操作系统和平台软件D源程序和目标程序7、测试设计员的职责有:( B )A 制定测试计划B 设计测试用例C 设计测试过程、脚本D 评估测试活动知识点:α和β测试1、除了开发人员之外首先见到软件产品的人是( A )。

A.α测试人员B.β测试人员C.验收测试人员D.回归测试人员2、用户在真实的工作环境中使用软件,用于测试系统的用户友好性等,这种测试是(D )。

A集成测试 B系统测试C Alpha测试D Beta测试知识点:黑盒测试1、下面说法正确的是( A)。

A.我们无法测试一个程序确认它没有错误B.黑盒测试是逻辑驱动的测试C.穷举测试一定可以暴露数据敏感错误D.白盒测试是一种输入输出驱动的测试2、边界值分析的假设是“多缺陷”假设。

(×)3、黑盒测试是(A )的测试A基于功能 B基于代码C基于设计 D基于需求文档3、黑盒测试方法中最有效的是因果图法。

(√)4、黑盒测试是一种重要的测试策略,又称为数据驱动的测试,其测试数据来源于( A )。

A.软件规格说明B.软件设计说明C.概要设计说明D.详细设计说明5、下列不属于黑盒测试方法(B )A 等价法B 数据流测试C 基于判定表D 因果图6、.黑盒测试是一种重要的测试策略,又称为数据驱动的测试,其测试数据来源于(A )。

A.软件规格说明B.软件设计说明C.概要设计说明D.详细设计说明7、对于一个n变量函数,边界值分析会产生4n+1个测试用例。

8、.一个变量个数为n的函数的最坏情况测试会产生5n个测试用例。

9、判定表中贯穿条件项和动作项的一列,叫做规则10.黑盒测试设计测试用例方法有边界值分析、等价类、因果图、基于决策表、错误推测。

11、在黑盒测试中,等价类的划分具有完备性、无冗余性、等价性等特点。

知识点:测试阶段1、对于软件测试分类,下列各项都是按照不同阶段来进行的划分,除了( C )。

A、单元测试B、集成测试C、黑盒测试D、系统测试2、集成测试验证了两个或多个单元之间的集成是否正确,主要是针对( C )阶段中所定义的各单元之间的接口进行测试:A. 需求分析B. 概要设计C. 详细设计D. 编码3、集成测试计划在需求分析阶段末提交(×)14、软件的集成测试工作最好由( D )承担,以提高集成测试的效果。

A 该软件的设计人员B 该软件开发组的负责人C 该软件的编程人员D 不属于该软件开发组的软件设计人员4.按照开发阶段划分,软件测试可以分为单元测试、集成测试、系统测试、验收测试。

知识点:白盒测试1、白盒测试是从用户观点出发的测试。

(×)2、下列不属于白盒测试方法(D )A 逻辑覆盖B 数据流测试C 基本路径D 因果图3、以程序内部的逻辑结构为基础的测试用例设计技术属于( D )。

A.灰盒测试B.数据测试C.黑盒测试D.白盒测试4、在以下几种逻辑覆盖中,哪种覆盖是最强的覆盖(D )A 语句覆盖B 条件覆盖C 判定覆盖D 路径覆盖5、程序通过了全面的白盒测试,就不需要再进行黑盒测试了。

(×)知识点:静态测试和动态测试1、测试程序时不在机器上直接运行程序,而是采用人工检查或计算机辅助静态分析的手段检查程序。

这种测试称为(C )。

A.白盒测试B.黑盒测试C.静态测试D.动态测试2、下面哪些不属于静态测试( D )A 代码规则检查B 程序结构分析C程序复杂度分析 D 内存泄漏知识点:软件测试原则1、下面有关测试原则的说法不正确的是( C )。

A 测试用例应由测试的输入数据和预期的输出结果两部分组成B 所有的测试都应该追溯到用户的需求C程序最好由编写该程序的程序员自己来测试D尽早地和不断地测试单元测试1、孤立的单元测试时最好的单元测试策略。

(√)2软件开发人员在对自己编写的模块进行单元测试时,主要考虑的是如何能够保证该模块能够正常运行。

(×)3、下列不属于单元测试内容( D)A 模块接口B 局部数据结构C 重要的执行路径D 性能4、用来代替被测模块的子模块的是(B )。

A.驱动模块B.桩模块C.调用模块D.配置模块5、自顶向下的增量式集成策略的最大成本是( A )。

A.桩模块的开发和维护B.驱动模块的开发和维护C.对被测模块的组装D.对构件的分层和修改6、下列属于单元测试工具的是( A )A JunitB loadrunnerC bugfreeD quicktest7、软件单元测试的主要工作内容是( D )。

A.测试模块内部逻辑B.测试模块内数据流向C.测试模块单元的具体实现D.以上全是8、软件开发人员在对自己编写的模块进行单元测试时,主要考虑的是如何能够保证该模块能够正常运行。

(×)9、一般情况下,在单元测试中,开发驱动模块比开发桩模块容易。

(√)10、单元测试策略有自顶而下、自底向上、孤立单元测试11、自顶向下渐增式测试不需要编写驱动模块只需要编写桩模块模块知识点:其他1、软件生存期中费用消耗最大的环节是(A )。

A.软件测试B.软件开发C.软件质量保证D.软件文档审查2、即使对程序的所有路径都进行了测试,程序也可能存在没能检查出来的缺陷,其原因可能是( D )。

A.程序可能会因为缺少某些路径而存在问题B.即使是穷举路径测试也决不能保证程序符合其设计规格说明C.穷举路径测试也可能不会暴露数据敏感错误D.以上全部3、只要我们做了充分的测试。

就能保证软件没有BUG (×)4、程序的三种基本控制结构是(B )。

A 过程,子程序,分程序B 顺序,条件,循环C 递归,堆栈,队列D 调用,返回,转移5、软件生存周期过程中,修改错误代价最大的阶段是(D )A.需求阶段B.设计阶段C.编程阶段D.发布运行阶段6、GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。

(√)7、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。

(×)8.按照测试实施组织划分,软件测试可以分为开发方测试、用户测试和第三方测试。

9、在某程序图中,判定节点个数为4,该程序图的圈复杂度为5。

10、.在某程序图中,边的条数为10,节点数为7,连接区域数为1,该程序图的圈复杂度为5。

210分)答:软件测试的目的是以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷。

(2分)测试是为了证明程序有错,而不是证明程序无错。

(2分)一个成功的测试是发现了至今未发现的错误的测试。

(1分)软件测试的原则包括:所有的测试都应追溯到用户的需求;尽早地和不断地进行软件测试;不可能完全的测试,因为输入量太大,执行路径太多;注意测试中的群集现象;避免测试自己的程序;设计周密的测试用例,等等。

(5分,每条一分)2.软件测试分哪两种方法?分别适合什么情况?(10分)答:分为黑盒测试和白盒测试两种。

(2分)黑盒测试被称为功能测试或数据驱动测试。

在测试时,把被测程序视为一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下进行。

(2分)采用黑盒测试的目的主要是在已知软件产品所应具有的功能的基础上进行。

(2分)白盒测试也称结构测试或逻辑驱动测试,是针对被测单元内部是如何进行工作的测试。

(2分)它根据程序的控制结构设计测试用例,主要用于软件或程序验证。

(2分)3.你认为一个优秀的测试工程师应该具备哪些基本素质和专业素质?并说明理由。

(8分)答:一个优秀的测试工程师应该具备的基本素质有:责任心、沟通能力、团队精神、自信心、耐心、怀疑精神、洞察力、幽默感等。

(5分,每条一分)应具备的专业素质有:有竞争力的测试人员要具有三方面的技能:计算机专业技能、测试专业技能、软件编程技能。

(3分,每条一分)4.简述白盒测试中覆盖测试的种类及其之间的关系(10分)答:覆盖测试主要包括语句覆盖、(1分)判定覆盖、(1分)条件覆盖、(1分)判定/条件覆盖、(1分)组合覆盖(1分)和路径覆盖测试(1分)。

其中条件覆盖和判定覆盖强于语句覆盖,但他们之间属于整体与局部关系,(1分)无确定的强弱之分;判定/条件覆盖是条件覆盖和判定覆盖的复合,强于各自的覆盖测试;(1分)组合覆盖则强于判定/条件覆盖,但与路径覆盖也是整体与局部关系,无确定的强弱之分。

(2分)5.什么是软件测试?并简述软件测试原则。

(8分)答:软件测试是为了发现错误而执行程序的过程。

或者说软件测试是系统地找出软件中潜在的各种错误和缺陷。

(3分) 软件测试的原则包括:所有的测试都应追溯到用户的需求;尽早地和不断地进行软件测试;不可能完全的测试,因为输入量太大,执行路径太多;注意测试中的群集现象;避免测试自己的程序;设计周密的测试用例,等等。

(5分,每条一分)6.请列举5条软件测试的原则,并简单说明各原则的内容。

(10分)答:(1)所有的测试都应追溯到用户的需求。

系统中最严重的错误是那些导致程序无法满足用户需求的错误。

(2)尽早地和不断地进行软件测试。

需求和设计时出现的缺陷占很大的比例;缺陷的修改成本随着阶段的推移将急剧上升。

(3)不可能完全的测试,因为输入量太大,执行路径太多。

(4)注意测试中的群集现象。

在所测程序段中,若发现错误数目多,则残存错误数目也比较多。

相关主题