测试工程师试题及答案.doc

上传人:s****u 文档编号:12809240 上传时间:2020-05-25 格式:DOC 页数:26 大小:421.56KB
返回 下载 相关 举报
测试工程师试题及答案.doc_第1页
第1页 / 共26页
测试工程师试题及答案.doc_第2页
第2页 / 共26页
测试工程师试题及答案.doc_第3页
第3页 / 共26页
点击查看更多>>
资源描述
测试工程师试题及答案本考卷时长:120分钟 满分:100分一、判断题(每题1分,共10分)10题1、软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。( ) 2、 白盒测试侧重于程序结构,黑盒测试侧重于功能,其中白盒测试需要程序员参与,黑盒测试不需要 ()3、单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。( )4、集成测试也叫做组装测试,通常在编码完成的基础上,将所有的程序模块进行有序的、递增的测试( )5、系统测试应尽可能在实际运行使用环境下进行( )6、详细设计的目的是为软件结构图中的每一个模块确定使用的算法和块内数据结构,并用某种选定的表达工具给出清晰的描述。 ( ) 7、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。( )8、程序、需求规格说明、设计规格说明都是软件测试的对象( )9、第三方测试是在开发方与用户方的测试基础上进行的验证测试 ( )10、数据流图和数据字典共同构成系统的逻辑模型。( )二、单选题 (每题2分,共40分)20题1、软件测试的目的正确的是 ( D ) 测试是为了发现程序中的错误而执行程序的过程; 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案; 成功的测试是发现了至今为止尚未发现的错误的测试测试并不仅仅是为了找出错误.通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进;A、 B、 C、 D、2、软件测试的对象包括( B )A目标程序和相关文档 B源程序、目标程序、数据及相关文档 C目标程序、操作系统和平台软件D源程序和目标程序3、从是否关心软件内部结构和具体实现的角度划分。( B )A、静态测试、动态测试B、黑盒测试、白盒测试、灰盒测试C、单元测试、集成测试、确认测试、系统测试、验收测试D、以上都不对4、关于软件测试模型,描述正确的是( C )A、V模型测试的对象就是程序本身,测试与开发可以同一阶段进行B、W模型测试的对象是程序,需求、设计等,可以支持迭代的开发模型C、H模型软件测试过程活动完全独立,贯穿产品整个生命周期,与其他流程并发地进行。D、X模型是事先计划再进行测试。5、软件测试按实施组织分,测试应该包括以下的( A ) 开发方测试 用户方测试 第三方测试 验收测试 确认测试 A B C D6、制定测试计划的步骤:(D)A、确定项目管理机制 预计测试工作量 测试计划评审B、确定测试范围 确定测试策略 确定测试标准、预计测试工作量C、确定测试构架 确定项目管理机制 预计测试工作量 测试计划评审D、确定测试范围 确定测试策略 确定测试标准 确定测试构架 确定项目管理机制 预计测试工作量 测试计划评审7、为保证测试活动的可控性,必须在软件测试过程中进行软件测试配置管理,一般来说,软件测试配置管理中最基本的活动包括( A )A配置项标识、配置项控制、配置状态报告、配置审计 B配置基线确立、配置项控制、配置报告、配置审计 C配置项标识、配置项变更、配置审计、配置跟踪 D配置项标识、配置项控制、配置状态报告、配置跟踪 8、某次程序调试没有出现预计的结果,下列( B)不可能是导致出错的原因。A、变量没有初始化 B、编写的语句书写格式不规范C、循环控制出错 D、代码输入有误9、下列关于程序效率的描述错误的是(B )。A、提高程序的执行速度可以提高程序的效率B、降低程序占用的存储空间可以提高程序的效率C、源程序的效率与详细设计阶段确定的算法的效率无关D、好的程序设计可以提高效率10、逻辑路径覆盖法是白盒测试用例的重要设计方法,其中语句覆盖法是较为常用的方法,针对下面的语句段,采用语句覆盖法完成测试用例设计,测试用例见下表,对表中的空缺项(True或者False),正确的选择是( A )。语句段:if (A & (B|C) x=l;else x=O;用例表: 用例1用例2ATRUEFALSEBFALSECTRUEA &(B|C)FALSE ATRUE FALSE TRUE BTRUE FALSE FALSECFALSE FALSE TRUE DTRUE TRUE FALSE 11、程序设计语言中( D )。 A. while 循环语句的执行效率比 do-while 循环语句的执行效率高 B. while 循环语句的循环体执行次数比循环条件的判断次数多 1,而do-while 语句的循环体执行次数比循环条件的判断次数少 1 C. while 语句的循环体执行次数比循环条件的判断次数少 1,而 do-while语句的循环体执行次数比循环条件的判断次数多 1 D. while 语句的循环体执行次数比循环条件的判断次数少 1,而 do-while语句的循环体执行次数等于循环条件的判断次数12、DB, DBMS 和 DBS 三者间的关系是( B ) A DB 包括 DBMS 和 DBS B DBS 包括 DB 和 DBMS C DBMS 包括 DBS 和 DB D DBS 与 DB 、 DBMS 无关 13在TCP/IP模型中,应用层包含了所有的高层协议,在下列的一些应用协议中,B是能够实现本地与远程主机之间的文件传输工作。A telnetB FTPC SNMPD NFS14、一个局域网中某台主机的IP 地址为176.68.160.12,使用22 位作为网络地址,那么该局域网的子网掩码和,最多可以连接的主机数分别为 ( B )A、2552552510 1021B、2552552520 1022C、2552552530 1023D、2552552540 102415、Linux文件系统的文件都按其作用分门别类地放在相关的目录中,对于外部设备文件,一般应将其放在( C )目录中。A /binB /etcC /devD /lib16、某公司采用的软件开发过程通过了CMM2认证,表明该公司 ( C ) 。A. 开发项目成效不稳定,管理混乱B. 对软件过程和产品质量建立了定量的质量目标C. 建立了基本的项目级管理制度和规程,可对项目的成本、进度进行跟踪和控制D. 可集中精力采用新技术新方法,优化软件过程17、质量管理人员在安排时间进度时,为了能够从全局出发、抓住关键路径、统筹安排、集中力量,从而达到按时或提前完成计划的目标,可以使用( A )。 A活动网络图 B因果图C优先矩阵图 D检查表18、某公司最近承接了一个大型信息系统项目,项目整体压力较大,对这个项目中的变更,可以使用( B )等方式提高效率。分优先级处理规范处理整批处理分批处理 A. B. C. D.19、下面哪项工作是制订进度计划的基础:( A )A、工作分解结构(WBS)B、网络图 C、甘特图(GANTT)D、资源平衡(RESOURCE LEVELLING)20、下面哪一方法通常不会被用来缩短进度? ( D )A. 赶工B. 变更范围C. 以并行方式而不是序列方式来实施进行活动D. 资源平衡三、填空题(每空1分,共10分)共10空1、黑盒测试是功能测试,用黑盒技术设计测试用例有4种方法:(等价类划分)(边界值分析 )( 错误推测 )( 因果图)。2、实际的逻辑覆盖测试中,一般以条件组合覆盖为主设计测试用例,然后再补充部分用例,以达到 (路径 )覆盖测试标准。3、集成测试的方法有两种:渐增式测试和(非渐增式测试 )。4、软件测试过程中需要3类信息:软件配置、(测试配置) 和 ( 测试工具) 。5、SCM是一组管理整个软件生存期各阶段中( 变更 )的活动。6、基线的作用是把各阶段的开发工作划分得更加明确,便于检查与确认阶段成果。因此,基线可以作为项目的一个 ( 检查点)。四、简答题(每题5分、共25分)1、高级测试工程师日常工作职责,及应该遵循规范(5分)2、请画出软件测试过程V模型,并写出采用V模型存在的问题(5分)答:1)V模型图2) 采用V模型存在问题: .测试是开发之后的一个阶段。 .测试的对象就是程序本身。 实际应用中容易导致需求阶段的错误一直到最后系统测试阶段才被发现。 整个软件产品的过程质量保证完全依赖于开发人员的能力和对工作的责任心,而且上一步的结果必须是充分和正确的,如果任何一个环节出了问题,则必将严重的影响整个工程的质量和预期进度。3、软件测试的原则,这些原则能更好的理解和指导我们做测试工作,请把你所知道的原则详细列出来。(5分)答:1、测试可以显示缺陷的存在,但不能证明系统不存在缺陷。2、穷尽测试是不可能的3、测试的尽早介入(越晚发现一个bug,修改bug成本成倍增加)。4、第三方或独立的测试团队。5、测试的标准是用户的需求6、尽早定义产品的质量标准(测试用例应包括明确的输入和输出,做到有的放矢)7、用例全面(有效数据、无效数据)8、及时更新测试用例,减少测试人员形成定势思维(杀虫剂悖论:杀虫剂用得多了,害虫就有免疫力,杀虫剂就发挥不了效力)9、严格执行测试计划,排除测试的随意性。10、充分注意测试中的群集现象,80%的错误集中在20%的程序模块中。11、应当对每一个测试结果做全面检查。12、妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。13、测试贯穿于整个生命周期4、CMM由低至高共分为5个级别是什么?并简述每级基本特征。(5分) 答:CMM由低至高共分为5个级别:初始级、可重复级、定义级、管理级和优化级 CMM五级基本特征: CMM一级,初始级:个别的,混乱的过程,几乎没有定义过程的规则或步骤; CMM二级,可重复级:已建立的必要过程准则,但主要过程依赖于个人经验; CMM三级,定义级:量化的已定义且制度化的过程; CMM四级,管理级:量化的已质量的过程; CMM五级,优化级:达到一个持续改善过程。5、ISO 9001管理八原则是什么?并进行简要描述?(5分)答:1以顾客为关注焦点:组织依赖于顾客,因此组织应该理解顾客当前的和未来的需求,从而满足顾客要求并超越其期望。 2 领导作用:领导者将本组织的宗旨、方向、和内部环境统一起来,并创造使员工能够充分参与实现组织目标的环境。80%质量问题与管理有关,20%与员工有关。 3 全员参与:各级员工是组织的生存和发展之本,只有他们的充分参与,才能使其才能给组织带来最佳效益。岗位职责包括了全员(从总经理到基层员工)。 4 过程方法:将相关的资源和活动作为过程进行管理,可以更高效地取得预期结果。5 管理的系统方法: ISO9000针对设定的目标,识别、理解并管理一个由相互关联的过程所组成的体系,有助于提高组织的有效性和效率。木水桶的围板原理。 6持续改进:是组织的一个永恒发展的目标。PDCA循环。 7 基于事实的决策方法:针对数据和信息的逻辑分析或判断是有效决策的基础。用数据和事实说话。 8 互利的供方关系:通过互利的关系,增强组织及其供方创造价值的能力。麦当劳管理方式。五、分析题(每题15分、共1题、共15分)有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:若投入5角钱或1元钱的硬币,押下橙汁或啤酒的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示零钱找完的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示零钱找完的红灯灭,在送出饮料的同时退还5角硬币。1)分析这一段说明,列出原因和结果原因:1.售货机有零钱找2.投入1元硬币3.投入5角硬币 4.押下橙汁按钮5.押下啤酒按钮 结果: 21.售货机零钱找完灯亮 22.退还1元硬币23.退还5角硬币 24.送出橙汁饮料25.送出啤酒饮料2)画出因果图,如图所示。所有原因结点列在左边,所有结果结点列在右边。建立中间结点,表示处理的中间状态。中间结点:11. 投入1元硬币且押下饮料按钮 12. 押下橙汁或啤酒的按钮 13. 应当找5角零钱并且售货机有零钱找 14. 钱已付清 1软件测试是软件开发的重要环节,进行软件测试的目的是(B )A)证明软件错误不存在 B)证明软件错误的存在C)改正程序所有的错误 D)发现程序所有的错误2对于软件质量描述不正确的是:( B)A)高质量的过程产生高质量的产品B)软件质量是测试人员测试出来的C)软件质量是设计和规划出来的D)项目阶段结束意味着产品质量达到了预期的标准3对于软件测试描述不正确的是:(C )A)软件测试无法找到程序当中的所有缺陷B)测试工程师需要在最短时间内完成最有效的测试C)软件测试工程师只要了解需求就可以了D)测试工程师也需要了解编码知识4测试工程师需要了解下面哪些知识:(D )A)项目管理知识B)测试知识C)需求管理D)以上都包括5检查软件产品是否符合需求定义的过程称为:( A)A)确认测试B)集成测试C)性能测试D)功能测试6评审是对软件进行表态测试的一种方法,下述结论中。哪个是与软件评审无关的内容:( D)A)尽量发现错误B)检查软件文档C)根据评审标准D)依靠测试信息7路径测试是整个结构测试的重要组成,但在研究路径测试时,通常又是使用程序控制流图来代替(C )A)程序框图B)结构图C)数据流图D)程序流程图8软件测试类型按开发阶段划分是(A )A)需求测试、单元测试、集成测试、验证测试B)单元测试、集成测试、确认测试、系统测试、验收测试C)单元测试、集成测试、验收测试、确认测试、验收测试D)调试、单元测试、集成测试、用户测试9下述说法错误的是(B )A)单元测试又称为模块测试,是针对软件测试的最小单位程序模块进行正确性检验的测试工作B)集成测试也叫做组装测试,通常在编码完成的基础上,将所有的程序模块进行有序的、弟增的测试。C)集成测试是检验程序单元和部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统。D)系统测试是真实或模拟系统运行环境下,检查完整的程序系统能否和相关硬件、外设、网络、系统软件和支持平台等正确配置与连接,并满足用户需求10下列关于alpha测试的描述:C(1)alpha测试需要用户代表参加(2)alpha测试不需要用户代表参加(3)alpha测试是系统测试的一种(4)alpha测试是验收测试的一种A)(1)(3)B)(2)(3)C(1)(4)C(2)(4)21关于自动化测试描述正确的是( D)A)引入自动化测试可以降低测试成本B)软件产品测试适合自动化测试C)自动化测试工具能够完成所有的自动化测试D)自动化测试脚本同样需要进行验收和确认22关于软件性能简述不正确的是(A )A)在看代码完成之前,无法进行与性能有关的工作B)性能是设计和规划出来的,而不是测试出来的C)性能测试在很多情况下不能发现特定的性能缺陷23LoadRunner中关于“关联(Conelation)”描述错误的是(D )A)关联分为手动管理和自动关联B)关联是对提交数据的参数化过程C)关联是为了解决服务器端生成数据后期使用的问题D)关联函数是一种注册类函数24LoadRunner中Controller对于虚拟用户描述正确的是(C )A)虚拟用户并发测试可以做到绝对并发B)在一台计算机上可以实际模拟任意多的虚拟用户C)虚拟用户可分布在多台客户端上D)虚拟用户数和服务器端压力呈线性关系25关于性能测试,描述错误的是( C)A)性能测试是对系统的在性能方面的测量工作。B)响应时间是系统重要的性能指标,原则上可以用秒表手工测试C)思考时间是指系统停顿的时间D)吞吐量是指系统在单位时间内处理事务的能力26下列哪些概念不属于性能测试(B )A)测量相应时间B)可伸缩性C)吞吐量D)可维护性27测试一个WEB应用性能,可能会用到的协议有(C )A)HTTPB)HTTP/HTTPSC)HTTP/HTTPS/SOAPD)HTTP/HTTPS/SOAP/UDP28单元测试范围包括(A )A)方法间集成B)平行类测试C)类簇测试D)以上都是29关于JUNIT,描述错误的是( B)A)JUNIT是Java语言的单元测试框架B)JUNIT只能测试公共函数C)JUNIT推荐先测试后实现的方法D)setUp、tearDown函数只执行一次30关于测试驱动开发,描述错误的是( C)A)测试驱动开发式是一种敏捷开发方法B)TDD需求开发人员学习测试相关知识C)测试驱动开发不适合使用CMM/CMMI方法D)测试驱动开发可以和结对编程结合使用31下面过程模型中不属于测试过程模型的是(D)A)X模型B)V模型C)H模型D)B模型32下列哪个描述可以看作是测试工作结束的标志(D)A)发现的缺陷全部修改B)缺陷发现率低于阈值C)测试用例全部运行结束D)开发人员不再修改缺陷33测试过程中需要度量的基础数据(一阶度量元)不包括(C )A)严重缺陷数B)关闭缺陷数C)缺陷密度D)各个阶段发现和清除缺陷数34、独立的测试项目管理通常不包括下面哪些内容(B )A)测试需求管理B)测试目标管理C)测试工作量管理D)被测试产品质量35、TQM是指(B )A)Team Quality ManagementB)Total Quality ManagementC)Total Quick ManagementD)Total Quality Managers36、估算过程中QCD标准是指( A)A)Quality, Cost, DeliveryB)Quality Cause DeliveryC)Quantity Cost DeliveryD)Quality Cost Demand37PDCA环又被叫做(B)A)Deming WheelB)Continuous Improvement CycleC)Deming CycleD)All of the above 38The type oftestingdone during software implementation and before module integration is called(A )A)unit testing B)beta testingC)system testingD)acceptance testing39Which is NOT a concept of White Box Testing(B )A)You should execute all loops at their boundary conditions B)You should execute all interfaces at their boundary conditionsC)You should execute all logical decisions on their true and false sidesD)You should execute all independent paths within a module at least once40Black-box and white-box testing method are often used in software testing phase .in which,the white-box is mainly used totestsoftwares( D)A)reasonableness of structureB)correctness of a programC)external function of a programD)internal logic of a program-下面附上个人给出的参考答案(仅供参考,未必完全正确):15: BBCDA610:DCABC2125:DADCC2630:BCABC3135:DDCBC3640:ABABD面试题http:/wenku.baidu.com/view/c05b674d2b160b4e767fcf00.htmlhttp:/wenku.baidu.com/view/048079f69e314332396893f7.html1.静态变量的作用。const,Volatile,synchrnize什么情况下使用?如何声明一个常量。2.用于线程实现的类和接口分别是什么?简单举出使用范例。3.java.io.reader和java.io.inputstream的区别。4.设计一个servlet读取客户端上载的文件,继承自那个类?支持post/get操作要实现哪些方法?简述如何读取上载文件。5.读程序输出结果。字符串: ss= ddd dddd ;ss1=trim(ss);ss2=ss.tostring(ss);ss3=ss.substring(0);结果是:ss=ss1=ss2=ss3?6.EJB实现的流程。CreateEJB,LoadEJB,ActiveEJB,RemoveEJB7.sql题8.程序题,用vector打印出上面sql的结果表格,写出整个完整过程。9.列出uml中的几种图,分别做什么用。10.说出下面uml图的含义。11.列出几种设计模式,简述实现方式,实用情况。12.英译汉。13.汉译英。umlpublic class StaticVariableTest private static StaticVariableTest svt = new StaticVariableTest();/语句(1) private static int count1;/语句(2) private static int count2 = 0;/语句(3) private StaticVariableTest()/语句(4) count1+; count2+; public static StaticVariableTest getInstance()/语句(5) return svt; public static int getCount1() return count1; public static void setCount1(int count1) StaticVariableTest.count1 = count1; public static int getCount2() return count2; public static void setCount2(int count2) StaticVariableTest.count2 = count2; public static void main(String args) StaticVariableTest svt = StaticVariableTest.getInstance();/语句(6) System.out.println(count1: + svt.getCount1();/语句(7) System.out.println(count1: + svt.getCount2();/语句(8) 问题:当执行完语句(7)(8)时,打印结果分别是什么?为什么? 解答:当执行完语句(7)时,打印结果是1,当执行完语句(8)时,打印结果是0。分析:程序执行从main方法开始,首先执行语句(6),调用 getInstance方法,然而当它去调用这个方法的时候,它是一个静态的方法,在这个类里面定义了多个静态的成员变量。根据java初始化的顺序我们知道,对于静态的内容肯定是先执行的,也就是说在执行getInstance方法之前,肯定先执行private static StaticVariableTest svt = new StaticVariableTest();而且它是从上到下分别执行静态的内容。换句话说,这个程序首先执行private static StaticVariableTest svt = new StaticVariableTest();而这里面又要调用一个构造方法StaticVariableTest(),则去执行这个构造方法 private StaticVariableTest(),执行这个构造方法时发现它里面的功能是将count1加1,将count2加1,而这个count1和 count2是我们定义的int类型的静态变量。根据java对成员变量的默认值,count1和count2初始化的时候都被设置为0,当执行完构造方法后count1和 count2都等于1,这时StaticVariableTest这个对象就生成了,已经在内存里面存在了。接着赋给svt这个引用。那么svt这个引用指向的StaticVariableTest类型的对象,它里面的count1是1,count2也是1。接着发现下面一行private static int count1;它是一个静态的,那么它要执行这行代码,这行代码只是一个声明,但是没有赋值,接着它就跳过这行不再赋值了(究其原因是因为count1已经被赋值了,已经被加1了,也就是count1为1)。当我执行private static int count2 = 0;时发现count2也是一个静态变量,而且有一个显示的去赋值的这样一个动作。我们知道count2已经被赋值1了,但是这儿有一个显示的赋值的动作,就把count2的值由1改变成了0。这个就是调用getInstance方法时程序的执行流程:语句(6)、语句(5)、语句(1)、语句(4)、语句(2)、语句(3) 思考:如果将语句(2)和语句(3)放在语句(1)前面,当执行完语句(7)时,打印结果是1,当执行完语句(8)时,打印结果是1,想想是为什么?
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!