《《软件测试笔试题》word版.doc》由会员分享,可在线阅读,更多相关《《软件测试笔试题》word版.doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一、 谈谈了解的测试流程及工具一般测试流程:1.需求分析阶段:只要就是对业务的学习,分析需求点。2.测试计划阶段:测试组长就要根据SOW开始编写测试计划,其中包括人员,软件硬件资源,测试点,集成顺序,进度安排和风险识别等内容。3.测试设计阶段:测试方案一般由对需求很熟的高资深的测试工程师设计,测试方案要求根据SRS上的每个需求点设计出包括需求点简介,测试思路和详细测试方法三部分的方案。测试方案编写完成后也需要进行评审。4.测试方案阶段:主要是对测试用例和规程的设计。测试用例是根据测试方案来编写的,通过测试方案阶段,测试人员对整个系统需求有了详细的理解。这时开始编写用例才能保证用例的可执行和对需
2、求的覆盖。测试用例需要包括测试项,用例级别,预置条件,操作步骤和预期结果。其中操作步骤和预期结果需要编写详细和明确。测试用例应该覆盖测试方案,而测试方案又覆盖了测试需求点,这样才能保证客户需求不遗漏。同样,测试用例也需要评审。5.测试执行阶段:执行测试用例,及时提交有质量的Bug和测试日报,测试报告等相关文档。流程:需求分析测试计划测试设计测试环境搭建测试执行测试记录缺陷管理软件评估RTM.测试工具:C/S及B/S架构相关的软件产品,那么对不同操作系统,如Windows系列、unix、linux甚至苹果OS等测试环境都是必须的常用的软件测试工具分为:开源测试工具:开源测试管理工具:Bugfre
3、e、Bugzilla、TestLink、mantis开源功能自动化测试工具:Watir、Selenium、MaxQ、WebInject开源性能自动化测试工具:Jmeter、OpenSTA、DBMonster、TPTEST、Web ApplicationLoadSimulatorTestDirector:企业级测试管理工具,也是业界第一个基于Web的测试管理系统。Quality Center:基于Web的测试管理工具,可以组织和管理应用程序测试流程的所有阶段,包括指定测试需求、计划测试、执行测试和跟踪缺陷。QuickTest Professional:用于创建功能和回归测试。LoadRunner
4、:预测系统行为和性能的负载测试工具。二、套题一、选择 :1. 从是否需要被执行测试软件的角度,软件测试可分为哪两种?(B)A. 黑、白盒(软件测试用例设计方法角度) B.静、动态 C.单、集 (策略和过程)2. 下列哪一项不是白盒测试?(C)A.单元测试 B.集成测试 C.系统测试 D.回归测试3. 计算机环路复杂度(计算方法)(重点:选择 简答)V(G)=简单判定节点数+ 1 ; V(G) = E-N+2 ; V(G)=封闭区域数+ 1 (记住这三个公式)4. 属于黑盒测试的方法?(C)A.基于基本路径 B.控制流 C.基于用户需求测试 D.逻辑覆盖(基于用户需求的测试,功能图分析方法,等价
5、类划分方法,边界值分析方法,错误推测方法,因果图方法,判定表驱动分析方法,正交实验设计方法和功能图分析方法等。)5. 测试的报告由五部分。答:首页、引言部分、测试概要、测试结果及缺陷分析、测试结论与建议。6. 单元测试环境由三部分构成?答:所测模块和与它相关的驱动模块及桩模块共同构成了一个“测试环境”7. 单元测试中综合测试主要是考虑哪些方式?答:自顶向下的单元测试策略、自底向上的单元测试策略。8. 不是软件实施活动的进入准则? (D)A.需求工件已经被基线化 B.详细设计工件已经被基线化 C.构架工件已经被基线化 D. 项目阶段成果及被基线化9. 确定单元测试指导的基本方针? () (3个,
6、选择其中不是的)答: 能够自身编译的最小程序块,单一过程/函数(独立),由一个人完成的小规模工作10. 对于自动化测试成本从高到底的排序 ,下列描述正确的是?(A)(PPT6 七章)(进行排序)A. GUI,编译器,用户图形11. 软件测试是软件开发的重要环节之一。按照软件开发过程可分为:单元测试、集成测试、系统测试、域测试等。12. 软件测试的任务 发现、改正软件错误(找错,修正)13. 下面哪一项测试步骤中需要进行局部数据结构测试?(A)A.单元测试 B.集成测试 C.确认测试 D.系统测试14. 白盒测试是根据程序的(C)来选设计测试用例?A.功能 B.性能 C.内部逻辑 D.内部数据1
7、5. 单元测试的终止的标准(3个 )(PPT47 三章)1.硬件资源不足或故障造成软件运行无法运行;2.软件运行后无法正确显示;3.所有功能测试均已经完成。16. 软件测试是对系统逆向求证的过程,集成测试对应的过程中单元测试的过程A.需求设计 B.概要设计 C.详细设计 D.编码实现17. 单元测试主要测试技术不包括?(B)(PPT12 三章)A.白盒 B.功能 C.静态 D.以上都不是18. 环路复杂度公式哪个不是?()V(G)=简单判定节点数+ 1 ; V(G) = E-N+2 ; V(G)=封闭区域数+ 1 (记住这三个公式)19. 如果一个产品中次严重缺陷基本完成修复并且通过了复测,这
8、个阶段的产品是(B)A.阿尔法版 B.beta版 C.正版 D.以上都不是20. 自底向上方法需要写 ()A. 驱动程序桩程序驱动程序和桩程序两个都不是21. (A)的目的是对最终软件系统进行全面的测试确保最终软件系统产品满足需求。系统测试集成测试单元测试功能测试22. 测试用例的4个关键元素。(1) 被测单元模块初始状态声明,即测试用例的开始状态(仅适用于被测单元维持了调用中间状态的情况);(2) 被测单元的输入,包含由被测单元读入的任何外部数据值;(3) 该测试用例实际测试的代码,用被测单元的功能和测试用例设计中使用的分析来说明,如:单元中哪一个决策条件被测试;(4) 测试用例的期望输出结
9、果(在测试进行之前的测试说明中定义)。23. 目前主要的单元测试的方法(A.基本路径测试 B.等价类划分/边界值分析测试 C.覆盖测试 D.循环测试 E.数据流测试 F.程序插桩测试 G变异测试)从中选。24. 哪个方法根据输出输入依赖关系设计的测试用例?(C)?A.路径 B.等价类 C.因果图 D.归纳25. 有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准(B)。(PPT22 二章)A. 语句覆盖 B.判定覆盖 C.条件覆盖 D.路径覆盖二、填空:1. 单元测试中对类进行测试有3个“定义引用对”(方法内部定义-引用对 方法间定义-引用对 类内部定义-引用对)。(
10、PPt37 三章)2. 测试的主要目标,不再只是找出其缺陷,而是证明其(性能)。3. 压力测试又称强度测试,是在(各种资源超负荷)情况下,观察系统的运行情况。4. (缺陷跟踪工具)是管理工具使用最多的。5. 集成测试划分为5个阶段(制定集成测试的计划、设计集成测试、实施集成测试、执行集成测试、评估集成测试)。6. 根据软件生命周期中的定义,可以把自动化测试工具划分3大类(白盒测试工具、黑盒测试工具、测试管理工具)。7. 对类进行测试时,类之间的关系6类(关联 泛化 实现 依赖 聚合 组合)。每种不同符号来表示,并分别用(私有的“-”、公有的“+”、保护的“#”)三个关键字来修饰类。8. 白盒测
11、试工具针对代码进行的工具,测试中发现的缺陷可以定义到代码级,根据测试工具原理的不同,又可以分为静态测试工具和动态测试工具。9. 黑盒测试工具包括(功能测试工具、性能测试工具)。10. 软件开发的基本过程(需求分析、设计、实现、测试、维护)。11. 单元测试的策略(自顶向下的单元测试策略、自底向上的单元测试策略和孤立的单元测试策略)。12. 集成测试的工作开展更多站在测试工作人员的角度上; 系统测试站在用户的角度上。13. 对面向对象来说,按照集成的粒度不同,可把集成测试分为(类间集成测试 、 类内集成测试)。14. 类测试用例中,基于3个标准(基于状态的覆盖率、基于限制的覆盖率和基于代码的覆盖
12、率)。(PPT13 六章)15. 哪一个不属于增量式集成?答案:大爆炸集成17. 单元测试中对类进行三级测试(方法内部测试、方法间测试、类内部测试)PPT36 三章18. 目前单元测试主要的方法:基于路径测试,等价类划分/边界值分析测试,覆盖测试,循环测试,数据流测试,程序插桩测试,变异测试。三、判断:1. 发现错误是软件测试的目的。 (错)2. 白盒测试可以找出软件遗漏功能和代码错误功能。(PPT47 二章) (错)3. 在设计测试用例时,应包括合理的应用条件和不合理的应用条件。 (对)4. 软件缺陷一定是由编码引起的错误。 (错)5. Bata测试是软件多个用户在实际。多个测试。 (对)6
13、. 系统测试属白盒测试。 (黑盒) (错)7. 手工测试可以达到好的系统化测试。 (对)8. 功能测试属于白盒测试的技术范畴。 (错)9. 文档测试是对系统提交给用户的文档进行验证,并不是一般性的审查活动。P35 5(对)四、大题1. 计算环路复杂度方法哪些 ? (要求写成3个公式,一个公式2分)答:V(G)=简单判定节点数+ 1 ; V(G) = E-N+2 ; V(G)=封闭区域数+ 12. 基于状态测试的主要步骤?(PPT32 三章)答: 依据设计文档,或者通过分析对象数据成员的取值空间(笛卡尔积),得到被测试类的状态转移图;给被测试的类加入用于设置和检查对象状态的新方法,导出对象的逻辑
14、状态;对于状态转移图中的每个状态,确定该状态是哪些方法的合法起始状态,即在该状态时,对象允许执行哪些操作;在每个状态,从类中方法的调用关系图最下层开始,逐一测试类中的方法;测试每个方法时,根据对象当前状态确定出对方法的执行路径有特殊影响的参数值,将各种可能组合作为参数进行测试。3. Bug的种类有哪些?答:需求阶段的BUG,分析设计阶段的BUG,设计阶段的BUG,实现阶段的BUG,配置阶段的BUG,短视将来的BUG,静态文档的BUG 。4. 自动化测试的缺点?(5点)答:1、自动化测试不能取代手工测试, 测试主要还是要靠人工的。2、新缺陷越多,自动化测试失败的几率就越大。3、工具本身不具有想象
15、力4、技术问题、组织问题、脚本维护5、测试工具与其他软件的互操作性5. 选择手动和自动化测试,为了作出一个合理的决定,需要做哪些方面假设?(7个)答: 1拥有稳定的自动化测试技术支持。2两种极端的可能性:一种就是无需人工干预的完全自动化测试,另一种就是只运行一次就废弃的人工测试。3自动化测试和手工测试都可行(但事实并非如此)。4测试是通过外部接口完成的(黑盒测试)。5不要求必须进行自动化测试。6测试已经设计好之后,再决定是否进行自动化测试。7有一定的时间用于完成测试,并且在这段时间里完全有可能把测试做好。6. 集成测试分析方法有哪些?答:体系结构分析 模块分析 接口分析 风险分析 可测试性分析
16、 集成测试策略分析7. 编写类测试驱动程序的方法有很多种,以Java语言为例来说明,测试驱动程序设计的结构,并简要说明其优缺点。(PPT15 六章)答:1.在main方法中写入需要运行的测试用例,即实现main方法,然后编译、执行该类。缺点:不利于维护和复用,交付时,逐个剔除代码2.在类中实现一个静态测试方法,通过调用该测试方法来收集每个测试用例的执行结果。缺点:同1.3.实现独立的测试类,它的职责是执行并收集每个测试用例的结果。优点:可复用,支持回归测试缺点:必须创建新类,关注被测试类的变化8. 增量式集成和非增量式集成的概念和举例。?答:非增量式测试:就是分别对系统中每个模块进行单元测试,
17、然后将所有模块按照层次结构组装到一起进行测试,最终得到所要求的软件。例如:大爆炸集成增量式集成(或组装):先对一个个模块进行模块测试,然后在组装过程中边连接边测试,以发现连接过程中产生的问题。例如:自顶向下集成和自底向上集成9. 制定集成测试计划时间,一般安排在概要设计评审通过后大约一个星期的时候一、计划阶段制定集成测试计划时间:一般安排在概要设计评审通过后大约一个星期的时候,参考需求规格说明书、概要设计文档、产品开发计划时间表来制定。二、设计阶段制定集成测试设计时间:一般在详细设计开始时,就可以着手进行。可以把需要规格说明书、概要设计、集成测试计划文档作为参考依据。10. 列举出图中三个模块
18、,写出全部模块执行路径,最后给出其MM路径(书162页)1. 源节点: 程序中的源节点是指程序执行开始或重新开始处的语句片断。A:1,5节点 B:1,3节点 C:1节点2汇节点: 汇节点是程序执行结束处的语句片断。这里转移控制到其它单元的节点也是汇节点。 A:4,6节点 B:2,4节点 C:5节点3模块执行路径模块执行路径是以源节点开始、以汇节点结束的一系列语句,中间没有插入汇节点。在图4-12中有七条模块执行路径: 图4-12 跨三个单元的MM-路径模块执行路径如下:MEP(A,1)=1,2,3,6MEP(A,2)=1,2,4MEP(A,3)=5,6MEP(B,1)=1,2MEP(B,2)=
19、3,4MEP(C,1)=1,2,4,5MEP(C,1)=1,3,4,54. 消息消息是一种程序设计语言机制,通过这种机制可以把控制从一个单元转移到另一个单元。5. MM-路径(Method Message Path)是穿插出现模块执行路径和消息的序列。如图4-12中的粗线所示,代表模块A调用模块B,模块B调用模块C,这就是一个MM-路径,可用图4-13表示。对于传统软件来说,MM-路径永远是从主程序开始,在主程序中结束。MM-路径如下:11.设一个控制图如下,请给出其环路复杂度和基本路径。环路复杂度:5基本路径: 路径1:12356121315路径2:12456121315路径3:123578
20、1315路径4:1245781315路径5:12357910141315路径6:12457910141315路径7:12357911141315路径8:1245791114131512.软件测试活动的生命周期测试周期分为计划、设计、实现、执行、总结。其中:计划:对整个测试周期中所有活动进行规划,估计工作量、风险,安排人力物力资源,安排进度等;设计:完成测试方案,从技术层面上对测试进行规划;实现:进行测试用例和测试规程设计;执行:根据前期完成的计划、方案、用例、规程等文档,执行测试用例。总结:记录测试结果,进行测试分析,完成测试报告。13. 三明治集成方法答:1. 确定以哪一层为界来决定使用三明
21、治集成策略(在4-7中,我们确定以B模块为界);2. 对模块B及其所在层下面的各层使用自底向上的集成策略;3. 对模块B所在层上面的层次使用自顶向下的集成策略;4. 把模块B所在层各模块同相应的下层集成;5. 对系统进行整体测试。14. 集成测试可看着是体系结构分析工作基础之上的细化。可从哪几个角度进行模快分析。答: 1)确定本次要测试的模块;2)找出与该模块相关的所有模块,并且按优先级对这些模块进行排列;3)从优先级别最高的相关模块开始,把被测模 块与其集成到一起;4)然后依次集成其他模块。三、性能测试需要注意的问题 性能测试即测试软件处理事务的速度,一是为了检验性能是否符合需求,二是为了得
22、到某些性能数据供人们参考(例如用于宣传)。 有时人们关心测试的“绝对值”,如数据送输速率是每秒多少比特。有时人们关心测试的“相对值”,如某个软件比另一个软件快多少倍。 在获取测试的“绝对值”时,我们要充分考虑并记录运行环境对测试的影响。例如网络环境、计算机主频,总线结构和外部设备都可能影响软件的运行速度。 性能测试的一些注意事项: 不要试图让人拿着钟表去测时间,应当编写一段程序用于计算时间以及相关数据。应当测试软件在标准配置和最低配置下的性能。为了排除干扰,应当关闭那些消耗内存、占用CPU的其它应用软件(如杀毒软件)。不同的输入情况会得到不同的性能数据,应当分档记录。例如传输文件的容量从100
23、K到1M可以分成若干等级。由于环境的波动,同一种输入情况在不同的时间可能得到不同的性能数据,可以取其平均值。四、健壮性测试是什么?目的是什么?健壮性是指在异常情况下,软件还能正常运行的能力。健壮性有两层含义:一是容错能力,二是恢复能力。容错性测试通常构造一些不合理的输入来引诱软件出错,例如:(1)输入错误的数据类型。如“猴”年“马”月。(2)输入定义域之外的数值。如上海人常说的“十三点”粗暴一些方式俗称“大猩猩”测试法。除了不能拳打脚踢嘴咬外,什么招术都可以使出来。例如在测试客户机服务器模式的软件时,把网络线拔掉,造成通信异常中断。恢复测试重点考察一下几项:(1)系统能否重新运行;(2)有无重
24、要的数据丢失;(3)是否毁坏了其它相关的软件硬件。五、接口与路径测试都包括哪些内容? 数据一般通过接口输入和输出,所以接口测试是白盒测试的第一步。每个接口可能有多个输入参数,每个参数有“典型值”、“边界值”、“异常值”之分,所以输入的组合数可能并不少。根据接口的定义,可以推断某种输入应当产生什么样的输出。输出包括函数的返回值和输出参数。如果实际输出与期望的输出不一致,那么说明程序有错误。白盒方式的接口测试和黑盒方式的功能测试,其方法十分相似。 一个函数体内的语句可能只有十几条,但逻辑路径可能有成千上万条。想遍历测试几乎是不可能的,不测试或者胡乱找几条路径测试却又不行。 对于非严格系统而言,在分
25、析路径方面化费很多精力是不值得的。我认为在构造接口测试的同时已经建立了测试路径。因为每一种输入将产生唯一的输出,输入与输出之间的路径也是唯一的。由于接口测试中的输入是有代表性的,因此相应的路径也具有代表性,不用得着费煞苦心地去找测试路径。 路径测试的检查表 数据类型、变量值、逻辑判断、循环、内存管理、文件I/O、错误处理 由于接口测试是枚举的,有可能漏掉某些状况,导致一些重要的路径没有被测试。预防措施有: 观察是否有程序语句从来没有被执行过。如果发生在这种情况,要么是程序有错误,存在无用的代码;要么是接口测试不充分,漏掉了一些路径。 要特别留意函数体内的错误处理程序块(如果存在的话),这是最易
26、被人疏忽的路径,隐患最多。 六、有了“黑盒”测试,为什么还要白盒测试呢?黑盒测试只能观察软件的外部表现,即使软件的输入输出都是正确的,却并不能说明软件就是正确的。因为程序有可能用错误的运算方式得出正确的结果,例如“负负得正,错错得对”,只有白盒测试才能发现真正的原因。白盒测试能发现程序里的隐患,象内存泄漏、误差累计问题。在这方面,黑盒测试存在严重的不足。七、alpha测试和beta测试的区别定义:alpha测试是在用户组织模拟软件系统的运行环境下的一种验收测试,由用户或第三方测试公司进行的测试,模拟各类用户行为对即将面市的软件产品进行测试,试图发现并修改错误。Beta测试是用户公司组织各方面的
27、典型终端用户在日常工作中实际使用beta版本,并要求用户报告异常情况,提出批评意见。区别:两者的主要区别是测试的场所不同。Alpha测试是指把用户请到开发方的场所来测试,beta测试是指在一个或多个用户的场所进行的测试。Alpha测试的环境是受开发方控制的,用户的数量相对比较少,时间比较集中。而beta测试的环境是不受开发方控制的,谁也不知道用户如何折磨软件,用户数量相对比较多,时间不集中。一般地,alpha测试先于beta测试执行。通用的软件产品需要较大规模的beta测试,测试周期比较长。如果产品通过了beta测试,那么就可以正式发行了。八、回归测试的概念及过程回归测试:是指软件系统被修改或
28、扩充(如系统功能增强或升级)后重新进行的测试,是为了保证对软件所做的修改没有引入新的错误而重新进行的测试。回归测试过程:识别出软件中被修改的部分从原基线测试用例库T中,排除所有不再适用的测试用例,确定对新版本依然有效的测试用例,建立新的基线测试用例库TN依据一定的策略从TN中选择测试用例测试被修改的软件如果必要,生成新的测试用例集T1,用于测试TN无法充分测试的软件部分用T1执行修改后的软件第2和第3步测试验证修改是否破坏了现有的功能,第4和第5步测试验证修改工作本身回归测试的一些观念:回归测试是指重复以前的全部或部分的相同测试。新加入测试的模组,可能对其他模组产生副作用,故须进行某些程度的回
29、归测试。回归测试的重心,以关键性模组为核心。九、系统验收测试的内容1)系统验收测试是在在系统测试完成后,项目最终交付前进行。2)系统验收测试不是对系统的全面覆盖,而是针对用户的核心业务流程进行测试。3)验收测试的执行人员不是开发方的测试组成员,是由用户方的使用人员完成。4)验收可以由第三方专业化全覆盖型技术测试团队测试。十、系统测试的定义及内涵系统测试定义: 系统测试是将通过集成测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际或者模拟运行(使用)环境下,对计算机系统进行一系列测试。系统测试包含: 功能测试、性能测试、压力
30、测试、容量测试、安全性测试、GUI测试、可用性测试(也叫易用性测试)、安装测试、配置测试、异常测试,备份测试、健壮性测试、文档测试、在线帮助测试、网络测试、稳定性测试。十一、测试人员在软件开发过程中的任务?软件测试目的1、测试的最终目的是为了避免错误的发生,确保应用程序能够正常高效的运行;2、好的测试用例在于发现至今未发现的错误;3、成功的测试是发现了至今未发现的错误的测试;4、好的测试工程师应该做到不仅发现问题,还能够帮助开发人员分析问题;测试人员在软件开发过程中的任务:1、尽可能早的找出系统中的Bug;2、避免软件开发过程中缺陷的出现;3、衡量软件的品质,保证系统的质量;4、关注用户的需求
31、,并保证系统符合用户需求。软件测试的原则:1、应把“尽早和不断地进行软件测试”作为软件开发者的座右铭,实践证明单元测试能够尽早发现问题,减少后期测试的错误量。2、测试用例应由测试输入数据、测试执行步骤和与之对应的预期输出结果三部分组成。3、应当避免由程序员检查自己的程序。(指后期系统测试阶段,不包括单元测试)4、测试用例的设计要确保能覆盖所有可能路径。在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。不合理的输入条件是指异常的,临界的,可能引起问题的输入条件。5、充分注意测试中的群集现象。经验表明,测试后程序残存的错误数目与该程序中已发现的错误数目或检错率成正比。应该对错误群集的程序
32、段进行重点测试。6、严格执行测试计划,排除测试的随意性。测试计划应包括:所测软件的功能,输入和输出,测试内容,各项测试的进度安排,资源要求,测试资料,测试工具,测试用例的选择,测试的控制方法和过程,系统的配置方式,跟踪规则,调试规则,以及回归测试的规定等等以及评价标准。7、应当对每一个测试结果做全面的检查。8、妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。软件测试过程开始是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。确认测试则是要检查已实现
33、的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。系统测试把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。十二、如何尽快找出软件中的bug1. 尽快熟悉软件的需求和业务,只有熟悉了产品的业务流程、你才能迅速找出软件中存在的一些重要的缺陷2. 把自己当成用户,把自己当成是用户去使用该系统,比如在使用该系统过程中是这样操作的吗?3. 善于怀疑,不要开发人员的能力4.不要让程序开发人员的观点:“用户不会进行这样的操作”而说服自己5. 使用完整的流程去测试软件系统,有些子流程在单独测试时没有问题,但按流程走的时候问题就可能出来了。十三、性能测试问题1
34、.如果web服务器、数据库以及网络都正常,问题会出在哪里?这个问题可以在系统本身,还是在应用服务器中的代码。2.如何发现web服务器的相关问题?利用网络资源的监控,我们可以找到的Web服务器的性能。利用这些监测分析吞吐量我们可以在Web服务器上,点击数每秒期间发生的情况下,一些HTTP响应每秒下载的人数页每秒。3.如何发现数据库的相关问题?运行“数据库”的监督和帮助下, “数据资源图”我们可以找到数据库有关的问题。例如您可以指定您想要的资源来衡量的,然后再运行控制器和比你可以看到数据库的有关问题4.解释所有web录制配置?5.解释一下覆盖图和关联图的区别?覆盖图:它覆盖的内容,这两个图表有着共
35、同的X轴。左Y轴的图表显示,合并后的当前图的价值和权利Y轴显示的价值, Y轴的图表是合并。关联图:图的Y轴的两个图表互相对抗。积极图表的Y轴成为X -轴的合并图。 Y轴的图表合并成为合并后的图Y轴。34.你如何设计负载?标准是什么?负荷试验计划,以决定用户数量,什么样的机器,我们要使用和从那里运行。它是基于两个重要文件,工作分布图和交易资料。任务分布图给我们的信息的用户人数为特定的交易和时间上的负荷。在高峰使用和场外的使用是决定从这个图。交易的个人资料给我们提供了一个有关交易的名字和他们的优先级6.Vuser_init中包括什么内容?业务初始化内容Vuser_init action conta
36、ins procedures to login to a server.7. Vuser_end中包括什么内容?业务执行场景Vuser_end section contains log off procedures8.什么是think time?think_time有什么用?“Think Time”顾名思义思考时间。它效仿真实用户在实际操作过程中的等待时间。我们做性能测试,很多时候就要模拟这种状态。例如:某系统,要求满足100用户同时在线操作,响应时间在5秒。如果不设置Think Time,我觉得,你的测试是失败的。大家想想为什么?设置Think Time有两种方式,一种是使用Record t
37、hink time在录制过程中根据实际等待时间自动的写入脚本。另一种是在脚本录制结束后手动加入到脚本中。接下来我们详细介绍。 思考时间是真实用户在action之间等待的时间。例如:当一个用户从服务器接收到数据时,用户可能需要在响应之前等待几分钟回顾数据,这种推迟被称为思考时间。9.标准日志和扩展日志的区别是什么?Standard Log Option:选择标准日志时,就会在脚本执行过程中,生成函数的标准日志并且输出信息,供调试用。大型负载测试场景不用启用这个选项。扩展日志包括警告和其他信息。大型负载测试不要启用该选项。用扩展日志选项,可以指定哪些附加信息需要加到扩展日志中十四、测试用例在软件测
38、试中的作用?1、 指导测试的实施。测试用例主要适用于集成测试、系统测试和回归测试。2、 规划测试数据的准备3、 编写测试脚本的”设计规格说明书”4、 评估测试结果的度量基准。完成测试实施后需要对测试结果进行评估,并且编制测试报告。判断软件测试是否完成、衡量测试质量需要一些量化的结果。例:测试覆盖率是多少、测试合格率是多少、重要测试合格率是多少,等等。5、 分析缺陷的标准十五、套题一简答题 (每道题10)1. 测试的目标?:是为了尽可能多的发现程序中的缺陷。2. 测试的步骤?:单元测试(模块测试). 集成测试. 系统测试. 调试. 系统的转换与交付使用3. 您认为做好测试用例设计工作的关键是什么
39、?白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题4您所熟悉的测试用例设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。1)等价类划分2)边界值分析法3)错误推测法4)因果图方法5测试人员的职业素质要求是什么?1)责任感2)沟通能力3)独立的判断和自学习能力4)耐心、自我督促5)团队精神二选择题(单选题)(每道题5分)1软件验收测试的合格通过准则是:()A 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。B
40、 所有测试项没有残余一级、二级和三级错误。C 立项审批表、需求分析文档、设计文档和编码实现一致。D 验收测试工件齐全。答:B2软件测试计划评审会需要哪些人员参加?()A项目经理BSQA 负责人C配置负责人D测试组答:A3下列关于alpha 测试的描述中正确的是:()Aalpha 测试需要用户代表参加Balpha 测试不需要用户代表参加Calpha 测试是系统测试的一种Dalpha 测试是验收测试的一种答:D4测试设计员的职责有:()A制定测试计划B设计测试用例C设计测试过程、脚本D评估测试活动答:C5软件实施活动的进入准则是:()A需求工件已经被基线化B详细设计工件已经被基线化C构架工件已经被
41、基线化D项目阶段成果已经被基线化答: C6关于软件测试,以下()是正确的:A 测试只能证明缺陷,不能证明缺陷不存在B 开发人员测试自己的程序后,可作为该程序已经通过测试的依据C 80%的缺陷聚集在20%的模块中,经常出错的模块改错后还会经常出错答:C三选择题(多选题)(每道题5分)1. 测试的依据A. 需求说明 B. 技术规范 C. 安全规范 D. 个人能力答: A, B, C2. 软件缺陷都包括什么?A. 软件未达到客户需求的功能和性能B. 软件超出客户需求的范围C. 软件出现客户需求不能容忍的错误D. 软件的使用未能符合客户的习惯和工作环境答:A,B,C,D3. 请对以下测试计划做排序。A
42、. 系统测试计划 B. 验收测试计划 C. 单元测试计划 D. 回归测试策略 (适用的)E. 集成测试计划答: C,E,A,B,D4. 缺陷度量分析包括以下哪种?A.缺陷分析 B.缺陷数据统计 C.缺陷预防 D.缺陷控制答:B,C十六、一个合格的软件测试员应该具备的知识?1、 软件测试基础知识:测试计划编写、设计测试用例、编写测试报告、编写BUG报告单、跟踪BUG修复情况、还需要良好的沟通能力、以及各种测试阶段所使用的测试方法、单元测试、功能测试、集成测试、系统测试等等、CMMI /ISO90012、 各种测试工具的使用:我们在测试的工作中为了能够提高工作效率进程会用到很多工具、QTP、LR、
43、QC、TD、Bugfree、VSS、SVN等等工具、虽然说工具不是万能的但是工具能为我们提高工作效率所以不能吧工具当神一样看待、但是必须得会熟练的使用3、 操作系统相关知识:Windows、linux、uinx这些都必须会使用、而且不仅仅是简单的操作、一般的服务管理、注册表编辑、命令行操作都需要会、可以想象下一个连apache服务都不会安装配置的人、谁能想象你可以做好基于apache环境的测试工作、什么?不知道怎么查看磁盘压力、IO数据。windows linux都有提供自带的工具可用于查看这些数据、perfmon、top什么的。4、 数据库知识:现在Oracle的DBA待遇比一般的开发人员待
44、遇还高就知道数据库在企业中的重要性了、作为测试人员虽然不需要有DBA的能力、但是基本的数据库操作你必须得会把、不管是Oracle、DB2、MSsql还是mysql最少都应该能熟悉使用其中的一二。5、 计算机硬件知识:做过性能测试的朋友都知道在性能测试过程中硬件性能也是一个非常重要的指标、CPU、内存、IO、带宽等等、如果你是做硬件测试的。那么就更不用说了。交换机、路由器、防火墙这些设备都需要有所了解。6、 网络协议:如果你还知道TCP和UDP有什么不一样的话请赶快去补充点知识吧、互联网时代、一切都通过网络传输、常用协议必须得了解、曾经面试了一个测试工程师做了2年的测试居然不知道自己测试软件使用
45、什么协议、这样的人是你的话你敢招么?7、 开发语言即代码编写能力:虽然不会写代码也能做测试、但是如果你想做到高级测试工程师以上、那么代码编写能力就是必选项、如果不会写代码、那么你不可能成为高级测试。高级测试工程师的一部分工作就是在写测试工具。虽然测试也需要写代码但不需要和开发一样那么精通某一门语言、可是测试却需要了解很多门开发语言(举一个简单的例子:你现在所在的项目从C+语言、2年后你换工作了、新公司的开发语言是java或者是VB什么的)所以在开发语言中测试需要更广的学习。8、 行业知识:行业知识之所以写在最后面是因为前面的7条我们都可以通过学习来掌握、但是唯独行业知识却只能通过工作经验来积累、不要说你去看几本书就知道通信行业、医疗行业、或者是航天行业、你认为在书本上面能学到么?由于行业知识的特殊性所以建议朋友们不要频繁的跳槽、经验的积累是需要时间来沉淀的。9、 具有一定的美学观:这个说起来比较拗口一点、简单来说不管是开发活动还是测试活动、最后的目标就是将产品推向市场、而且得到用户的认可。所以如果产品在需求分析阶段就出现了偏离用户航道、那么就算测试 开发做得再好这个项目也是一样会失败。所以各位如果有幸能够参加需求评审的话、请不要吝啬你的言论。10、请不要忘记时刻学习着:这点我相信大家应该都能理解所以不用写什么:仅此一点“不学习就会落后”