软件测试工程师试题
软件测试复习题及参考答案

软件测试复习题及参考答案一、单选题(共100题,每题1分,共100分)1.软件缺陷产生的主要原因通常认为是()A、不断变化的软件需求B、文档不完善C、软件的复杂性D、工期短正确答案:A2.模块是组成软件结构的基本元素,它是( )的集合。
A、变量定义和功能实现B、数据说明和算法C、软件描述和实现D、变量和函数正确答案:B3.下列说法正确的是()A、测试不能依据测试人员的主管感受B、轻界面测试重功能测试C、任何时候测试必须依赖于用户的需求D、自己负责的功能模块不能交给别人进行测试正确答案:C4.程序指令执行过程中将逻辑地址转换成物理地址的过程称为( )。
A、线性重定位B、逻辑重定位C、静态重定位D、动态重定位正确答案:D5.软件工程中描述生存周期得瀑布模型一般包括计划、( )、设计、编码、测试、维护等几个阶段。
A、需求调查B、问题定义C、需求分析D、可行性分析正确答案:C6.ERP是下列哪类软件的缩写()A、人力资源管理系统B、企业资源规划系统C、决策支持系统D、管理信息系统正确答案:B7.降低缺陷费用最有效得方法就是()。
A、测试尽可能全面B、让用户进行测试C、尽可能早得开始测试D、测试尽可能深入正确答案:C8.在单链表中,每个节点有两个域:( )和指针域。
A、指令域B、代码域C、数据域D、结构域正确答案:C9.一般来说,ISP的网络中心都会有一台专门完成域名地址到IP地址转化的计算机,这台计算机称作( )。
A、WEB服务器B、域名服务器C、EMAIL服务器D、代理服务器正确答案:B10.密码验证的程序输入项不包括:( )。
A、密码B、用户名C、验证码D、权限正确答案:C11.软件产品发行时存在风险,通常风险为高、中、低三级,有损公司形象通常属于()A、高B、不算风险C、低D、中正确答案:A12.软件结构设计的基本的原则包括( )、抽象、信息隐蔽和局部化、模块独立。
A、可视化B、系统模块化C、图形化D、概念化正确答案:B13.下列关于改进软件测试过程的要点说法错误的是()A、在软件生命周期中测试人员尽早介入会造成缺陷转移B、测试工具的应用可以缩短部分测试周期,实现测试自动化C、测试过程的质量决定测试工作的成败D、改进测试过程是一个长期的过程正确答案:A14.著作权亦称( ),是指著作权人对其作品享有的专有权利。
软件测试基础模拟试题(附答案)

软件测试基础模拟试题(附答案)一、单选题(共90题,每题1分,共90分)1.关于软件质量的描述,正确的是()A、软件质量是指软件满足规定用户需求的能力B、软件质量特性是指软件的功能性、可靠性、易用性、效率、可维护性C、软件质量保证过程就是软件测试过程D、以上描述都不对正确答案:B2.下列关于文档测试描述错误的是()A、文档测试主要检查文档的正确性、完备性、可理解性、可操作性和易维护性B、完备性是指文档不可以“虎头蛇尾”,更不许漏掉关键内容C、正确性是指不要把软件的功能和操作写错,也不允许文档文档内容前后矛盾D、文档不可以写成散文、诗歌或者侦探、言情小说,要让大众用户看得懂正确答案:A3.软件错误产生的原因有多种多样,以下哪个不属于其中()A、没有测试计划B、程序员编码过程中引入错误C、需求分析不完善D、软件设计错误正确答案:A4.下面有关软件缺陷的说法中错误的是()A、缺陷就是系统所需要实现某种功能的失效和违背B、缺陷开始软件维护过程中存在的错误、毛病等各种问题C、缺陷就是导致系统程序崩溃的错误D、缺陷就是软件产品在开发中存在的错误正确答案:C5.在边界值分析中,下列数据通常不用来做数据测试的是()A、刚刚大于边界的值B、等价类中的等价值C、正好等于边界的值D、刚刚小于边界的值正确答案:B6.下面有关软件使用质量衡量标准说法不正确的是()A、软件满意度指软件产品在特定的使用场景下,让用户满意的能力B、软件有效性指软件产品在特定的使用场景下,使用户根据达到地效果合理使用适当资源的能力C、软件安全性指软件产品在特定的使用场景下,对人、业务、软件、财产或环境的损害达到可以接受水平的能力D、软件使用质量主要从软件有效性、生产性、安全性和满意度等方面来衡量正确答案:B7.()也称功能测试,它是通过测试来检测每个功能是都能正常使用。
A、黑盒测试B、压力测试C、动态测试D、系统测试正确答案:A8.关于软件测试与软件开发的认识,不正确的是()A、软件测试是独立于软件开发的一个工作B、软件生命周期各个阶段都可能产生错误C、测试越早进行,越有助于提高被测软件的质量D、软件开发的需求分析和设计阶段就应开始测试工作正确答案:A9.软件生存周期过程中,修改错误最大的阶段是()A、发布运行阶段B、设计阶段C、需求阶段D、编程阶段正确答案:A10.在进行单元测试时,常用的方法是()A、只使用白盒测试B、采用白盒测试,辅之以黑盒测试C、采用黑盒测试,辅之以白盒测试D、只使用黑盒测试正确答案:A11.下列关于软件验收测试的合格通过准则错误的是()A、软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到B、所有测试项没有残余一级,二级和三级错误C、立项审批表,需求分析文档,设计文档和编码实现不一致D、验收测试工件齐全正确答案:C12.关于自动化测试局限性的描述,以下错误的描述有()A、自动化测试不能提高测试覆盖率B、自动化测试对测试设计依赖性极大C、自动化测试不能取代手工测试D、自动化测试比手工测试发现的缺陷少正确答案:D13.下列软件属性中,软件产品首要满足的应该是()A、性能需求B、功能需求C、容错、纠错能力D、可扩展性和灵活性正确答案:B14.在模块测试的过程中,采用自底向上的测试比自顶向下的测试()A、差B、好C、不确定D、一样正确答案:B15.软件测试的目的是()A、评价软件的质量B、发现软件的错误C、找出软件中的所有错误D、正确软件是正确的正确答案:B16.在需求获取与定义阶段就开始建立,以后要不断细化和完善的文档是()A、用户手册B、测试计划手册C、内部设计规格说明D、外部设计规格说明正确答案:A17.对于维护软件的人员来说,使用质量是()的结果A、效率B、可维护性C、功能性D、可靠性正确答案:B18.软件测试的目的是()A、避免软件开发中出现的错误B、修改软件中出现的错误C、发现软件开发中出现的错误D、尽可能发现并排除软件中潜藏的错误,提高软件的可靠性正确答案:C19.黑盒测试是从()观点出发的测试,而白盒测试是从()观点出发的测试A、开发人员、管理人员B、开发人员、用户C、用户、开发人员D、用户、管理人员正确答案:C20.对计算机软件和硬件资源进行管理和控制的软件是()A、命令处理程序B、文件管理程序C、输入输出管理程序D、操作系统正确答案:D21.软件测试是软件开发其中的重要环节,其主要目的是()A、尽可能多的发现并改正程序中的错误B、发现并排出程序中的所有错误C、发现在软件需求方面中出现的错误D、发现并排出软件结构设计中的错误正确答案:A22.下列项目中不属于测试文档的是()A、测试计划B、测试用例C、程序流程图D、测试报告正确答案:C23.下列可以作为软件测试对象的是()A、需求规格说明书B、软件设计规格说明C、源程序D、以上全部正确答案:D24.从已经发现故障的存在到找到准确的故障位置并确定故障的性质,这一过程称为()A、调试B、错误检测C、故障排除D、测试正确答案:A25.下列关于测试方法的叙述中不正确的是()A、从某种角度上讲,白盒测试与黑盒测试都属于动态测试B、功能测试属于黑盒测试C、对功能的测试通常是要考虑程序的内部结构D、结构测试属于白盒测试正确答案:C26.以程序的内部结构为基础的测试用例技术属于()A、数据测试B、灰盒测试C、黑盒测试D、白盒测试正确答案:D27.某次程序调试没有出现预计的结果,下列()不可能是导致出错的原因A、代码输入有误B、循环控制出错C、变量没有初始化D、编写的语句书写格式不规范正确答案:D28.集成测试对系统内部的交互以及集成后系统功能检验了何种质量特性()A、可使用性B、正确性C、可维护性D、可靠性正确答案:B29.在windows中crtl+s一般代表什么意思()A、保存B、打开C、新建D、打印正确答案:A30.软件测试规范规定,软件测试的类别可分为:单元测试、集成测试以及()A、系统测试B、验收测试C、系统测试和验收测试D、配置项测试、系统测试和验收测试正确答案:C31.在覆盖准则中,最常用的是()A、语句覆盖B、条件覆盖C、分支覆盖D、以上全部正确答案:D32.在测试中,属于白盒测试方法为()A、代码测试B、仿真测试环境C、全数字仿真测试D、实物测试正确答案:A33.经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误较多,则该模块中残存的错误数目与其他模块相比,通常应该()A、较少B、不确定C、相似D、较多正确答案:D34.成功的测试是指运行测试实例后()A、未发现程序错误B、改正了程序错误C、证明程序正确性D、发现了程序的错误正确答案:D35.下面有关测试原则的说法正确的是()A、测试用例应由测试的输入数据和预期的输出结果组成B、测试用例只需选取合理的输入数据C、使用测试用例进行测试是为了检查程序是否做了它该做的事D、程序最好由编写该程序的程序员自己来测试正确答案:A36.关于Action Word ,以下说法不正确的是()A、Action Word(缩写AW)是一种业务的抽象,比如测试用例里的测试步骤,检查验证、消息序列等等B、Action Word抽象方式的不同对可重用性影响很大C、Action Word可以带必选参数也可以带可选参数D、Action Word的实现是不可执行的正确答案:D37.对程序的测试最好由谁来做,对程序的调试最好由谁来做()A、程序开发组/程序开发组B、程序员/第三方测试机构C、程序开发组/程序员D、第三方测试机构/程序员正确答案:D38.单元测试中设计测试用例的依据是()A、详细设计规格说明书B、用户需求规格说明书C、项目计划说明书D、概要设计规格说明书正确答案:A39.下列关于软件测试的叙述中,选择出全部正确的一组()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、以上描述全部正确正确答案:A40.测试程序时,不可能遍历所有可能的输入数据,而只能是选择一个子集进行测试,那么最好的选择方法是()A、划分等价B、随机选择C、根据接口进行选择D、根据数据大小进行选择正确答案:A41.以下关于边界值的说法错误的是()A、内点就是在域范围内的任意一个点B、上点指的是边界上的点,如果是闭区间上点就在域范围内,如果是开区间上点就在域范围外C、边界值选取原则就是选取正好等于,刚刚大于或刚刚小于边界值的数据作为测试数据D、离点就是离上点最近的一个点,是开区间就在域范围外,是闭区间就在范围内正确答案:D42.Excel软件可用于()A、文字处理B、设计程序C、电子表格处理D、幻灯片制作正确答案:C43.以下说法正确的是()A、单元测试是对软件基本组成单元进行测试,即测试对象一定是一个函数B、非功能质量属性越高越好C、自底向上的集成测试需要测试人员编写测试驱动程序D、系统备份与恢复中的数据备份与恢复通常只需要针对业务/用户数据正确答案:B44.常用的黑盒测试方法有边界值分析、等价类划分、错误猜测、因果图等。
2023年版软件测试工程师面试测试类笔试和面试内部题库含答案

2023年版软件测试工程师面试测试类笔试和面试内部题库含答案试题1.在一个项目中,测试工作如何介入?答案:测试工作从以下方面介入。
(1)项目前期,跟进需求,充分理解功能需求。
(2)项目开发阶段,测试人员收集测试准备素材,包括测试用例准备、测试数据准备、自动化准备。
(3)项目测试阶段,测试执行。
(4)验收阶段,准备环境供产品负责人验收。
(5)上线后,进行线上验证。
试题2.为什么要在一个团队中开展软件测试工作?答案:因为没有经过测试的软件很难在发布之前知道该软件的质量,就好比ISO质量认证一样,测试同样也需要质量的保证,所以需要在团队中开展软件测试工作。
在测试的过程中发现软件存在的问题,应及时让开发人员得知并修改。
在即将发布时,从测试报告中得出软件的质量情况。
试题3.软件测试类型有哪些?具体说说它们之间的区别。
答案:软件测试类型有功能测试、性能测试和界面测试。
功能测试在测试工作中占的比例最大,也称黑盒测试,它把测试对象看作一个黑盒。
利用黑盒测试进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。
采用黑盒测试设计测试用例的方法有等价类划分法、边界值分析法、错误推测法、因果图和综合策略等。
性能测试是指通过自动化的测试工具模拟多种正常、峰值及异常负载条件来对系统的各项性能指标进行测试。
负载测试和压力邈都属于性能测试,两者可以结合进行。
通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。
压力测试是通过确定一个系统的瓶颈或者不能接受的性能点来获得系统能提供的最大服务级别的测试。
界面测试中,界面是软件与用户交互的最直接的层次,界面的好坏决定了用户对软件的第一印象。
另外,设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。
同时,界面具有吸引用户的直接优势。
设计合理的界面能给用户带来轻松愉悦的感受;相反,由于界面设计失败,可能让用户有挫败感,再实用、强大的功能都可能在用户的〃畏惧〃中付诸东流。
软件工程师考试题目

1、在软件开发过程中,需求分析的主要目的是?A. 确定软件开发所需的技术栈B. 明确软件的功能和性能要求C. 设计软件的架构和模块划分D. 测试软件的可用性和用户体验(答案)B2、下列哪项不属于软件设计的基本原则?A. 高内聚低耦合B. 模块化设计C. 尽可能使用最新技术D. 遵循设计模式(答案)C3、在敏捷开发方法中,迭代计划会议的主要任务是?A. 详细规划整个项目的开发流程B. 确定下一个迭代周期要完成的用户故事C. 评估项目风险并制定应对措施D. 对已完成的工作进行回顾和总结(答案)B4、关于软件测试,下列说法错误的是?A. 单元测试是对单个模块进行测试B. 集成测试是在单元测试之后进行,关注模块间的交互C. 系统测试是验证软件是否满足用户需求D. 验收测试是由开发人员自行完成的最终测试(答案)D5、在数据库设计中,ER图(实体-关系图)主要用于表示?A. 数据表的字段和数据类型B. 实体、属性和实体间的关系C. 数据的存储结构和访问方法D. 数据的流程和处理逻辑(答案)B6、下列哪项不是版本控制工具(如Git)的主要功能?A. 跟踪代码变化历史B. 协助多人协作开发C. 自动编译和部署代码D. 管理代码分支和合并(答案)C7、关于软件架构,下列说法正确的是?A. 软件架构只在软件设计初期考虑,后续开发无需关注B. 软件架构是软件开发过程中的固定不变的部分C. 软件架构影响软件的可维护性、可扩展性和性能D. 所有软件的架构都是相同的,不存在差异(答案)C8、在面向对象编程中,继承的主要作用是?A. 实现代码的复用和扩展B. 提高代码的执行效率C. 减少代码的内存占用D. 简化代码的编写过程(答案)A9、关于软件测试中的回归测试,下列说法错误的是?A. 回归测试是在修改代码后进行的测试B. 回归测试的目的是确保修改没有引入新的错误C. 回归测试只需测试修改过的部分D. 回归测试通常包括全部或部分已经执行过的测试用例(答案)C10、在软件开发过程中,代码审查的主要目的是?A. 检查代码是否符合编码规范B. 发现并修复代码中的错误和潜在问题C. 评估代码的性能和优化空间D. 确定代码是否满足用户需求(答案)B。
软件资格考试软件评测师(基础知识、应用技术)合卷(中级)试卷与参考答案(2025年)

2025年软件资格考试软件评测师(基础知识、应用技术)合卷(中级)自测试卷(答案在后面)一、基础知识(客观选择题,75题,每题1分,共75分)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. 调试11、题干:在软件工程中,以下哪个阶段的主要任务是确定软件的需求?A. 需求分析阶段B. 设计阶段C. 实现阶段D. 测试阶段13、在软件生命周期中,以下哪个阶段主要进行需求分析和系统设计?A. 可行性分析B. 需求分析C. 系统设计D. 编码实现15、在软件工程中,以下哪项不是软件开发生命周期(SDLC)的典型阶段?A. 需求分析B. 系统设计C. 软件测试D. 软件维护17、在软件工程中,软件需求规格说明书(SRS)的作用不包括以下哪项?A. 描述软件的功能和性能B. 定义软件的质量属性C. 规定软件开发的标准和规范D. 明确软件与外部系统接口的要求19、在软件工程中,以下哪个阶段不是软件开发生命周期(SDLC)的组成部分?A. 需求分析B. 系统设计C. 编码D. 维护E. 销售策略21、题目:在软件工程中,以下哪个阶段通常被称为“需求分析”阶段?A. 系统设计阶段B. 需求获取阶段C. 软件开发阶段D. 软件维护阶段23、以下哪种说法不属于软件评测的基本原则?A. 独立性B. 客观性C. 全面性D. 可操作性25、以下关于软件测试的描述,错误的是:A. 软件测试是确保软件质量的重要手段,其主要目的是发现软件中的错误。
软件测试试题及答案答案

软件测试试题及答案答案一、单项选择题(每题2分,共10分)1. 软件测试的目的是:A. 证明软件无缺陷B. 证明软件存在缺陷C. 证明软件符合需求规格D. 证明软件符合设计规格答案:B2. 黑盒测试的主要依据是:A. 程序内部逻辑B. 程序外部特性C. 程序数据结构D. 程序运行环境答案:B3. 以下哪个不是软件测试的阶段?A. 单元测试B. 集成测试C. 系统测试D. 维护测试答案:D4. 软件测试中,测试用例的主要目的是:A. 验证软件功能B. 验证软件性能C. 验证软件安全性D. 所有选项答案:D5. 以下哪个不是软件测试的类型?A. 功能测试B. 性能测试C. 压力测试D. 需求测试答案:D二、多项选择题(每题3分,共15分)1. 软件测试过程中可能遇到的问题包括:A. 缺陷B. 错误C. 故障D. 风险答案:ABCD2. 软件测试的基本原则包括:A. 测试显示存在缺陷B. 测试不能证明不存在缺陷C. 穷尽测试是不可能的D. 早期测试答案:ABCD3. 软件测试的目的是:A. 验证软件符合需求B. 验证软件符合设计C. 验证软件符合实现D. 验证软件符合标准答案:ABD4. 以下哪些是软件测试的方法?A. 静态测试B. 动态测试C. 黑盒测试D. 白盒测试答案:ABCD5. 软件测试的文档通常包括:A. 测试计划B. 测试用例C. 测试报告D. 用户手册答案:ABC三、判断题(每题1分,共10分)1. 软件测试可以完全替代用户测试。
(错误)2. 软件测试的目的是发现尽可能多的缺陷。
(正确)3. 软件测试可以在软件开发过程的任何阶段进行。
(正确)4. 软件测试可以提高软件的可靠性。
(正确)5. 软件测试可以降低软件维护的成本。
(正确)6. 软件测试可以证明软件没有缺陷。
(错误)7. 软件测试只能发现软件中的错误。
(错误)8. 软件测试可以提高用户对软件的满意度。
(正确)9. 软件测试可以减少软件的缺陷。
软件测试工程师试题(5套)

软件测试工程师试题一、判断题1.软件测试的目的是尽可能多的找出软件的缺陷。
(Y)2.Beta 测试是验收测试的一种。
(Y)3.验收测试是由最终用户来实施的。
(N)4.项目立项前测试人员不需要提交任何工件。
(Y)5.单元测试能发现约80%的软件缺陷。
(Y)6.代码评审是检查源代码是否达到模块设计的要求。
(N)7.自底向上集成需要测试员编写驱动程序。
(Y)8.负载测试是验证要检验的系统的能力最高能达到什么程度。
(N)9.测试人员要坚持原则,缺陷未修复完坚决不予通过。
(N)10.代码评审员一般由测试员担任。
(N)11.我们可以人为的使得软件不存在配置问题。
(N)12.集成测试计划在需求分析阶段末提交。
(N)二、选择1.软件验收测试的合格通过准则是:(ABCD)A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B.所有测试项没有残余一级、二级和三级错误。
C.立项审批表、需求分析文档、设计文档和编码实现一致。
D.验收测试工件齐全。
2.软件测试计划评审会需要哪些人员参加?(ABCD)A.项目经理B.SQA 负责人C.配置负责人D.测试组3.下列关于alpha 测试的描述中正确的是:(AD)A.alpha 测试需要用户代表参加B.alpha 测试不需要用户代表参加C.alpha 测试是系统测试的一种D.alpha 测试是验收测试的一种4.测试设计员的职责有:(BC)A.制定测试计划B.设计测试用例C.设计测试过程、脚本D.评估测试活动5.软件实施活动的进入准则是:(ABC)A.需求工件已经被基线化B.详细设计工件已经被基线化C.构架工件已经被基线化D.项目阶段成果已经被基线化三、填空1.软件验收测试包括:正式验收测试,alpha测试,beta测试。
2.系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(有的可以合在一起,分开写只要写出15就满分哦)3.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。
软件评测师考试试题

一、判断题(每题1分, 正确的√, 错误的╳, 20道)1. 软件测试按照测试过程分类为黑盒、白盒测试。
(F )2.在设计测试用例时, 应包括合理的输入条件和不合理的输入条件。
(T )3. 集成测试计划在需求分析阶段末提交。
( F)4. 单元测试属于动态测试。
(t )5. 缺陷跟踪系统只针对对测试人员来使用。
( f)6.从用户软件开发者的角度出发, 普遍希望通过软件测试暴露软件中隐藏的错误和缺陷, 以考虑是否可接受该产品。
(f )7. 项目立项前测试人员不需要提交任何工件。
(f )8. 软件测试的目的是尽可能多的找出软件的缺陷。
(t )9.软件项目在进入需求分析阶段, 测试人员应该开始介入其中。
(t )10. 软件生存周期是从软件开始开发到开发结束的整个时期。
( f)11. 单元测试能发现约80%的软件缺陷。
(t )12. 数据流图和数据字典共同构成系统的逻辑模型。
( t)13. 负载测试是验证要检验的系统的能力最高能达到什么程度。
(f )14.测试人员要坚持原则, 缺陷未修复完坚决不予通过。
(f )15. 代码评审员一般由测试员担任。
(f )16. 测试组负责软件质量。
( f)17. 程序的效率与程序的复杂性相关。
(f )18. 详细设计的目的是为软件结构图中的每一个模块确定使用的算法和块内数据结构, 并用某种选定的表达工具给出清晰的描述。
( )19.软件是一种逻辑实体, 而不是具体的物理实体, 因而它具有抽象性。
( )20. 测试程序仅仅按预期方式运行就行了。
( )二、单项选择题(每题.分, 共20道.1. ()是用户和设计交换最频繁的方.A.原型化方.B.瀑布模型方.C.螺旋模型方.D.构件组装模.答案: ..2. 软件测试的目的.(.A.避免软件开发中出现的错.B.发现软件开发中出现的错.C.尽可能发现并排除软件中潜藏的错误,提高软件的可靠.D.修改软件中出现的错.答案...3.某次程序调试没有出现预计的结果, 下列()不可能是导致出错的原因。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国计算机等级考试四级笔试样卷软件测试工程师选择题(每小题2分,共50分)下列各题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)5 B)6 C)7 D)8(7)如果一个判定中的复合条件表达式为(A > 1)or(B <= 3),则为了达到100%的条件覆盖率,至少需要设计多少个测试用例A)1 B)2 C)3 D)4(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)假设类B是类A的子类,如果类A已进行了充分的测试,在测试类B时不必测试任何类B继承类A的成员方法D)对于一棵继承树上的多个类,只有处于叶节点的类需要测试(15)下列哪种测试不属于面向对象单元测试考虑的范畴A)成员方法的测试B)类的测试C)类树的测试D)多个相互协作的类树的测试(16)下列关于面向对象集成测试的说法中,正确的是A)大突击集成是面向对象集成测试最常用且最有效的方法B)自底向上集成和自顶向下集成都需要为集成测试开发大量代码C)协作集成在任何情况下都优于自底向上集成和自顶向下集成D)高频集成是以自底向上集成为基础,利用冒烟测试进行的集成测试(17)在Web应用软件的分层测试策略中,下列哪个不是测试关注的层次A)数据层B)业务层C)服务层D)表示层(18)下列关于Web应用软件测试的说法中,正确的是A)Cookie测试是Web应用软件功能测试的重要内容B)对于没有使用数据库的Web应用软件,不需要进行性能测试C)链接测试是Web应用软件易用性测试的重要内容D)Web应用软件安全性测试仅关注Web应用软件是否能够防御网络攻击(19)下列哪一项不属于软件功能易用性测试关注的内容A)软件界面的色彩是否协调B)软件是否能主动禁止用户可能进行的非法操作C)软件是否允许用户针对自己的使用习惯进行定制D)软件是否能帮助用户减少输入中的重复劳动(20)下列关于极限测试的说法中,正确的是A)极限测试是一种新型的测试方法,传统的测试技术均不适用于极限测试B)极限测试中所有的测试均是由编码人员完成的C)与传统的软件测试相比,极限测试是一种更严格的测试D)极限测试需要频繁地进行单元测试(21)下列有关测试过程V模型的说法中,正确的是A)验收测试应确定程序的执行是否满足软件设计的要求B)系统测试应确定系统功能和性能的质量特性是否达到系统要求的指标C)单元测试和集成测试应确定软件的实现是否满足用户需要或合同的要求D)集成测试在编码结束前就可以开始(22)下列哪项工作与软件缺陷管理和追踪无关A)对缺陷应该包含的信息条目、状态分类等进行完善设计B)通过软件系统自动发送通知给相关开发和测试人员,使缺陷得到及时处理C)对测试用例的执行结果进行记录和追踪D)通过一些历史曲线和统计曲线来分析和预测未来的缺陷发现情况(23)下列有关软件问题生命周期模型状态定义的说法中,错误的是A)“新建”表示测试中发现并报告了新的软件问题B)“打开”表示软件问题已被确认并分配给相关开发工程师处理C)“关闭”表示软件问题已被开发人员修复并等待测试人员验证D)“解决”表示软件问题已被确认修复(24)下列有关软件测试工具的说法中,错误的是A)静态测试工具可用于对软件需求、结构设计、详细设计和代码进行评审、走查和审查B)静态测试工具可对软件的复杂度分析、数据流分析、控制流分析和接口分析提供支持C)动态测试工具可用于软件的覆盖分析和性能分析D)动态测试工具不包括软件的仿真测试和变异测试(25)计算机软件测试规范规定,软件测试的类别可分为:单元测试、集成测试以及A)系统测试B)验收测试C)系统测试和验收测试D)配置项测试、系统测试和验收测试论述题(3题,共50分)论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题纸的相应位置上。
论述题1:以下是学生选课系统中“学生查询成绩”交互行为的描述,请按要求回答问题(20分)交互开始时终端上显示首页,用户选择“查询”请求后,显示“请输入学号”。
在用户输入学号后,系统核对学生学号:若输入的学号不正确,则显示“输入的学号不正确”,此次查询取消,回到首页;若输入的学号正确,出现“请输入课程名”。
一旦输入课程名,就开始核对课程名称:若输入的课程名不正确,则显示“输入的课程名不正确”,此次查询取消,回到首页;若输入的课程名正确,则根据“学号”和“课程名”,查询学生成绩。
若查询学生成绩成功,则显示查询到的成绩,系统询问是否继续查询:当用户选择“继续查询”后回到“请输入学号”;当用户选择“结束查询”后回到首页。
若查询学生成绩失败,则显示“查询失败”后回到首页。
(1)请画出该系统以上交互行为的状态图(应满足功能图的要求,不可画成流程图)。
(10分)(2)使用基本路径测试方法确定该状态图的测试路径。
(10分)论述题2:以下是QESuite Web Version 中某测试项目的部分界面,请按要求回答问题(12分)(1)下图是该测试项目的测试用例执行文档界面。
有几个测试用例没有执行有几个测试用例最近一次执行通过有几个测试用例最近一次执行失败(3分)(2)下图是该测试项目的某软件问题报告视图。
按QESuite Web Version 中的软件问题生命周期定义,4号软件问题报告需要何种人员进行哪些可能的操作5号软件问题报告需要何种人员进行哪些可能的操作8号软件问题报告需要何种人员进行哪些可能的操作(9分)论述题3:针对以下C语言程序,请按要求回答问题(18分)已知源程序如下:/*程序对单向链表进行操作,首先建立一个单向链表,然后根据用户的选择可以对其进行插入节点、删除节点和链表反转操作*/#include#includetypedef struct list_node *list_pointer; //定义链表指针typedef struct list_node{ //定义链表结构int data;list_pointer link;}list_node;//用到的操作函数:list_pointer create(); //建立一个单向链表void insert(list_pointer *p_ptr, list_pointer node); //在node后加入一个新的节点void delete_node(list_pointer *p_ptr, list_pointer trail, list_pointer node);//删除前一个节点是trail的当前节点nodevoid print(list_pointer ptr); //打印链表节点中的值list_pointer invert(list_pointer lead); //反转链表int main(){list_pointer ptr=NULL;list_pointer node, trail;list_pointer *p = &ptr;int choose, location, i;printf("you should create a link first:\n");//建立一个单向链表:ptr=create(); /* ptr 指向链表的第一个节点 */print(ptr);//根据用户的不同选择进行相应的操作:printf("input number 0, you can quit the program\n");printf("input number 1, you can insert a new node to link\n"); printf("input number 2, you can delete a node from the link\n"); printf("input number 3, you can invert the link\n");printf("please input your choice\n");scanf("%d", &choose);while(choose!=0){switch(choose){case 1:printf("you will insert a node to the link\n");printf("please input the location of the node:\n");scanf("%d", &location);node = ptr;i = 1;while(i<location){node = node->link;i++;}insert(p, node); /* p为指向ptr的指针 */print(ptr);break;case 2:printf("you will delete a node from the link\n");printf("please input the location of the node:\n");scanf("%d", &location);node = ptr;if(location ==1)trail = NULL;trail = ptr;i = 1;while(i<location){trail = trail->link;i++;}node = trail->link;delete_node(p, trail, node);print(ptr);break;case 3:printf("you will invert the link\n");ptr = invert(ptr);print(ptr);break;default:break;return -1;}printf("please input your choice\n");scanf("%d", &choose);}return 0;}//根据用户的输入数值建立一个新的单向链表:list_pointer create(){int i, current, length;list_pointer p1, p2, head;printf("please input the node number of the link:\n");scanf("%d", &length);printf("the number of the link is : %d\n", length);printf("please input the data for the link node:\n");i =0;p1= p2= (list_pointer) malloc(sizeof(list_node));head = p1;for(i = 0; iscanf("%d", ¤t);p1->data = current;p2->link = p1;p2 = p1;p1 = (list_pointer) malloc(sizeof(list_node));}p2->link = NULL;return head;}……(1)画出主函数main的控制流程图。