面试综合问题指导Word格式文档下载.docx
《面试综合问题指导Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《面试综合问题指导Word格式文档下载.docx(24页珍藏版)》请在冰点文库上搜索。
7.你觉得测试最重要的是什么?
我觉得测试的每一个阶段环节都很重要,都需要正确地、高质量地完成每个测试活动和任务。
8.怎样看待加班问题?
在工作需要的情况下加班是可以接受的,当然,合理的作息时间更能激发员工的工作动力。
9.如果一个很有个性的程序员认为自己的BUG不是BUG,怎么解决?
首先我要确认我所提的在我认为属不属于bug,如果我认为确实是属于bug我会在他面前重现这个bug以及和他讲解这个bug的重要性,如沟通解决不成功我会提交给我的直系领导让他分析是不是bug,如确认属于bug可以让领导协调解决。
10.为什么在团队中要有测试?
因为没有经过测试的软件很难在发布之前知道该软件的质量,在测试的过程发现软件中存在的问题及时让开发人员得知并修改问题在即将发布时从测试报告中得出软件的质量情况。
11.自己优势及缺点?
12.请谈谈您对测试工作的理解?
软件测试主要是根据用户的需求,找出软件中不符合用户需求的方面,是为了保障软件上线的质量,通过执行用例找出软件的缺陷而执行的一种程序。
13.你认为测试人员需要具备哪些素质?
我认为做测试的应该要有一定的协调能力,因为测试人员要经常与开发接触处理一些问题,如果处理不好的话会引起一些冲突这样的话工作上就会做不好。
还有测试人员要有一定的耐心,有的时候做的测试很枯燥乏味的。
除了要有耐心之外还要细心,不放过每一个可能的错误。
14.你为什么能够做测试这一行?
虽然说我的测试技术还不是很纯熟,但是我觉得我还是可以胜任软件测试这个工作的,因为做软件测试不仅是要求技术好,还要有一定的沟通能力,耐心、细心等外在的因素,综合起来看我认为我是可以胜任这个工作的。
15.测试的目的是什么?
测试的目的是找出软件产品中的错误,使软件尽可能的符合用户的要求。
当然测试是不可能找出全部的错误的。
16.测试分为那几个阶段?
一般来说测试大体分为5个阶段:
单元测试、集成测试、确认测试、系统测试、验收测试
在测试过程中如果有需要还要进行回归测试。
17.单元测试的测试对象,目的、测试依据、测试方法?
测试对象是:
程序模块
测试目的是:
检验软件基本组成单位的正确性
测试依据是:
软件详细说明书
主要方法有:
白盒测试
18.集成测试的测试对象,目的、测试依据、测试方法?
模块之间的组装和调用关系
检查软件单位之间的接口是否正确
概要设计说明书。
测试方法:
灰盒测试。
19.系统测试的测试对象,目的、测试依据、测试方法?
整个程序系统
对整个系统进行测试
需求规格说明书
测试方法:
黑盒测试
20.白盒测试覆盖的类型?
1.语句覆盖2.判定覆盖3.条件覆盖4.判定/条件覆盖5.组合覆盖6.路径覆盖
21.性能测试的分类?
1.负载测试2.压力测试3.强度测试4.容量测试
22.列举您熟悉的主流自动化测试工具?
Loadrunner:
是一种预测系统行为和性能的负载测试工具。
通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。
通过使用LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
23.编辑sql语句时,年月日型时间字段如何表达?
yyyy年MM月DD日sysdate系统时间
selectto_char(sysdate,'
yyyy-mm-dd'
)fromdual;
--显示系统时间,格式为1900-01-01
24.c/s和b/s结构的软件进行测试时有何不同?
C/S又称Client/Server或客户/服务器模式。
服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统。
客户端需要安装专用的客户端软件。
B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser)。
浏览器通过WebServer同数据库进行数据交互。
25.页面中有一个输入日期的输入框和一个输入身份证号的输入框,如何进行用例设计?
输入日期的输入框要考虑边界值、输入非法数据、非数字等
身份证输入框要考虑18位省份证、16位身份证、非18、16位的数据、汉字、字母、非法数据等
26.测试和质量保证有什么区别?
质量保证是对软件制作过程的制作质量进行管理,看是否符合公司的规定。
软件测试是对软件产品的质量本身进行测试,是从技术方面出发测试软件质量
27.用过什么缺陷管理工具?
流程是什么?
有什么能改进的?
我所熟悉的是TD,流程是讲测试计划、方案、测试用例录入TD,在TD上执行测试用例记录缺陷,并对bug进行跟踪。
28.路由器,集线器,交换机的区别?
路由器的作用是用于连接不同网段并且找到网络中数据传输最合适的路径。
集线器的作用是将一些pc机连起来组成一个局域网。
交换机的作用与集线器的相似,区别在于集线器采用的是共享带宽的方式,交换机是独享带宽。
29.我手上这支笔,请你根据这支笔设计测试用例?
1.需求测试:
查看使用说明书
2.功能测试:
能不能写字
3.界面测试:
查看笔的外观
4.可移植性:
笔在不同的纸质、温度等环境下是否可以使用
5.兼容性:
笔是否可以装不同颜色、大小的笔芯
6.易用性:
是否方便使用、方便携带
30.BUG报告包括那些内容?
Bug出现的位置、可重现的步骤、所使用的数据、bug的截图、发现人及日期。
31.什么是兼容性测试?
兼容性测试侧重哪些方面?
兼容测试:
主要是检查软件在不同的软\硬件平台上是否可以正常的运行,即软件可移植性。
兼容测试的重点:
对兼容环境的分析,通常,是在运行软件的环境不是很确定的情况下,才需要做兼容测试。
32.正交表测试用例设计方法的特点是什么?
针对多个输入的组合,用尽量少的用例覆盖输入的两两组合。
最终得到测试用例。
33.LoadRunner分哪三部分?
1.脚本生成器2.场景控制器3.结果分析器
34.什么是并发?
什么是集合点?
在lordrunner中,如何进行并发的测试?
并发:
在同一时间点,支持多个不同的操作。
LoadRunner中提供IP伪装,集合点,配合虚拟用户的设计,以及在多台电脑上设置,可以比较好的模拟真实的并发。
35.使用QTP做功能测试,录制脚本的时候,要验证多个用户的登录情况/查询情况,如何操作?
1.分析用户登录的基本情况,得出一组数据2.通过性测试/失败性测试的都有(根据TC来设计这些数据)3.录制登录的脚本,将关键的数据参数化4.修改脚本,对代码进行加强5.调试脚本
36.QTP中的Action有什么作用?
有几种?
Action的作用有:
1.可以对步骤集进行分组2.步骤重写,然后被整体调用3.拥有自己的sheet4.组合有相同需求的步骤,整体操作5.具有独立的对象仓库
Action的种类:
1.可复用Action2.不可复用Action3.外部Action
37.你所熟悉的软件测试类型都有哪些?
请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试)?
1.测试类型有:
功能测试,性能测试,界面测试。
2.功能测试,性能测试的测试的目的不一样。
功能测试的目的是检查被测试对象所要求的功能实现是否完整。
性能测试是检查被测试对象是否满足项目所要求的性能指标。
38.测试活动中,如果发现需求文档不完善或者不准确,怎么处理?
如果发现需求文档不完善或者不准确的情况应该立即和相关人员进行协调。
39.阶段评审与项目评审有什么区别?
阶段评审是对项目各阶段评审,对应阶段成果和工作。
项目评审时对项目总体评审,对应工作和产品。
40.你认为做好测试用例工作的关键是什么?
首先是理解需求,对测试用例编写的熟练度,用最少的用例覆盖更多的路径,覆盖和冗余。
41.软件的安全性应从哪几个方面去测试?
1.用户程序安全。
(1)用户登陆密码是否是可见、可复制
(2)系统中会不会出现用户冲突
(3)用户推出系统后是否删除了所有鉴权标记,是否可以使用后退键而不通过输入口令进入系统。
2.系统网络的安全。
(1)采用各种木马检查工具检查系统木马情况
(2)采用各种防外挂工具检查系统各组程序的客外挂漏洞
3.数据库的安全。
(1)系统数据是否机密
(2)系统数据的完整性(3)系统数据可管理性
42.软件配置管理工作开展的情况和认识?
软件配置管理是贯穿于软件开发、测试活动的始终,覆盖了开发、测试活动的各个环节,它的重要作用之一就是全面的管理保存各个配置项,监控各配置项的状态,并向项目经理及相关的人员报告,从而实现对软件过程的控制。
软件测试配置管理主要包括4个最基本的活动:
1.配置项标识2.配置项控制3.配置项状态报告4.配置审计
43.你觉得软件测试通过的标准应该是什么样的?
1.软件需求分析说明书中定义的所有功能都已全部实现,性能指标全部达到要求
2.所有测试项没有参与的一级二级三级的错误
3.需求分析文档、设计文档和编码实现一致
4.验收测试包括测试文档、测试用例、测试日志、测试通知单、测试分析报告等文档齐全
44.引入测试管理的含义?
测试管理:
1.风险管理2.测试中角色与职责管理3.测试流程的管理
45.集成测试也叫组装测试或者联合测试,请简述集成测试的主要内容?
a)把各个模块连接起来,验证穿越模块间的数据是否会丢失
;
b)一个模块的功能是否会对另一个模块的功能产生影响;
c)各个子模块的功能组合起来是否达到预期的父功能;
d)全局的数据结构是否有问题;
e)每个模块的错误累加起来是否会放大,从而达到无法接受的程度。
46.简述集成测试与系统测试关系?
1、集成测试主要依据是概要设计说明书,而系统测试主要依据是需求设计说明书;
2、集成测试主要是对系统的模块进行测试,而系统测试是对整个系统进行测试,包括软硬件平台、网络及相关外设的测试。
47.简述软件系统中用户文档的测试要点?
1.读者群2.术语3.正确性4.完整性5.一致性6.易用性
48.如何理解强度测试?
强度测试是为确定系统在最差工作环境的工作能力,也可能是用于验证在标准工作压力下的各种资源的最下限指标
49.如何理解压力、负载、性能测试?
压力测试:
是在标准工作环境下,不断增加系统负荷,最终测试出该系统能力达到的最大负荷。
性能测试:
性能测试是一个较大的范围,实际上性能测试本身就包含了性能、强度、压力、负载等多方面的测试内容。
负载测试:
实际上压力测试和负载测试没有明显的区分。
50.什么是系统瓶颈?
系统瓶劲即是指计算机设备方面对数据传输的一个限制
51.功能测试用例需要详细到什么程度才是合格的?
1.这个问题也是测试工程师经常问的问题。
有人主张测试用例详细到每个步骤执行什么都要写出来,目的是即使一个不了解系统的新手都可以按照测试用例来执行工作。
2.另外一种观点就是主张写的粗些,类似于编写测试大纲。
主张这种观点的人是因为软件开发需求管理不规范,变动十分频繁,因而不能按照欧美的高标准来编写测试用例。
3.实际上,软件测试用例的详细程度首先要以覆盖到测试点为基本要求。
52.没有产品说明书和需求文档地情况下能够进行黑盒测试吗?
这个问题是国内测试工程师经常遇到的问题,根源就是国内软件开发文档管理不规范,对变更的管理方法就更不合理了。
实际上没有任何文档的时候,测试人员是能够进行黑盒测试的,这种测试方式我们可以称之为探索测试,具体做法就是测试工程师根据自己的专业技能、领域知识等不断的深入了解测试对象、理解软件功能,进而发现缺陷。
53.完全测试程序是可能的吗?
完全测试是不可能的,因为输入量太大,输出结果太多以及路径组合太多。
54.软件测试的风险主要体现在哪里?
我们没有对软件进行完全测试,实际就是选择了风险,因为缺陷极有可能存在没有进行测试的部分。
55.发现的缺陷越多,说明软件缺陷越多吗?
这是一个比较常见的现象。
测试工程师在没有找到缺陷前会绞尽脑汁的思考,但是找到一个后,会接二连三的发现很多缺陷,颇有个人成就感。
其中的原因主要如下:
-代码复用、拷贝代码导致程序员容易犯相同的错误。
类的继承导致所有的子类会包含基类的错误,反复拷贝同一代码意味可能也复制了缺陷。
-程序员比较劳累是可以导致某些连续编写的功能缺陷较多。
程序员加班是一种司空见惯的现象,因此体力不只时容易编写一些缺陷较多的程序。
而这些连续潜伏缺陷恰恰时测试工程师大显身手的地方。
“缺陷一个连着一个”不是一个客观规律,只是一个常见的现象。
如果软件编写的比较好,这种现象就不常见了。
测试人员只要严肃认真的测试程序就可以了。
56.所有的软件缺陷都能修复吗?
所有的软件缺陷都要修复吗?
不是所有的缺陷都能修复,原因有
1.没有足够的时间2.修复的风险太大2.值不值得修复2.是否需要修复2.不算真正的缺陷
57.请以您以往的实际工作为例,详细的描述一次测试用例设计的完整的过程。
首先根据需求文档、概要设计、测试计划、测试方案细分出各功能模块的测试项,再根据各测试项,按照概要设计、详细设计以及测试方案中测试的覆盖率细分出测试子项,最后按照测试子项、根据测试用例的设计方法(因果图、边界值、等价类等的设计方法)书写测试用例。
58.你对测试最大的兴趣在哪里?
为什么?
最大的兴趣就是测试有难度,有挑战性!
做测试越久越能感觉到做好测试有多难。
59.你以前工作时的测试流程是什么?
软件测试的测试流程有1.进行需求评审2.制定测试计划和方案3.编写测试用例4.执行测试用例5.发现并提交缺陷6.开发组修正BUG7.对已修正BUG进行回归测试8.对正确修复完成的缺陷将状态置为已关闭,未正确修正的BUG重新激活
60.当开发人员说不是BUG时,你如何应付?
(1)要尽可能避免这种情况的发生,此类情况多发生在新员工身上,由于技术和业务掌握不是很扎实,导致提交一些无效的缺陷,这时可以增加测试内部的评审的环节来解决,就是提交新缺陷后,由测试经理或资深人员进行审核,确认无误后可以打开缺陷,提交给开发修改,否则置为无效。
(2)尽量沟通协调,听听对方的理由,如果开发理由充分,放弃此缺陷。
(3)如果认为开发理由不充分,确实需要修复,就要举出反例来证明该缺陷是有道理的。
(4)咨询其他自身的测试同事,看是否有过类似问题,可以请教一下。
(5)实在是无法协调的,可以直接提交缺陷报告,改或不改完全由开发决定,起码保证客户反馈类似问题的时候,责任不在测试这里。
61.软件测试的目的是什么?
测试的目的是发现软件中尽可能多的缺陷,并不是说明软件没有缺陷。
测试的目标在于揭示软件中的错误,站在用户的角度,最严重的错误在于导致程序无法满足于需求的错误。
62.需求评审的目的是什么?
为什么要进行需求评审?
软件缺陷的最大来源是软件需求规格说明,软件测试的任务在于发现软件程序中的错误,尽可能的保证软件的优良品质。
软件需求规格说明不仅是系统测试和用户文档的基础,也是所有子系列项目规划、设计和编码的基础。
63.测试方案应该怎么写?
测试方案和计划有什么区别?
测试方案:
包括测试目标、测试内容、测试使用的方法(黑盒,白盒,自动化等)、时间人员进度安排。
测试计划:
是指描述了要进行的测试活动的范围、方法、资源和进度的文档,它主要包括了测试项、被测特性、测试任务、由谁执行任务和风险控制等。
描述需要测试的特性、测试的方法、测试环境的规划、测试工具的设计和选择、测试用例的设计方法、测试代码的设计方案。
64.你认为写测试计划最重要的是什么?
安排不合理怎么办?
1.确定测试目标,增强测试计划的实用性,测试计划中的测试范围需要高度覆盖功能需求,测试方法必须要切实可行,测试工具要具有较高的实用性,便于使用,生成的测试结果直观准确。
2.安排不合理会对整个小组的工作造成很大的麻烦,在具体测试工作中要随机应变,要随时关注工作的进度,以便于调整测试计划,加快目标的完成。
65.用例优先级有什么作用?
用例优先级:
意味着用例测试的先后顺序,也决定了用例测试的重要性。
66.缺陷分析有哪些指标?
缺陷严重程度、复现率、优先级三个指标。
67.缺陷报告能否代替测试报告?
测试报告除了缺陷分析还包括了什么?
缺陷报告不能代替测试报告。
测试报告除了分析还包括测试用例分析、遗留问题清单、评估结果、改进建议等。
68.若现在给你一个项目,你打算怎么测?
首先要对需求进行评审,分析需求点。
其次,编写测试计划,包括人员、软硬件资源和进度安排等。
然后完成测试方案,对测试用例进行设计,运行软件,执行测试,得出实际结果,及时提交有质的bug报告,最后进行缺陷分析,完成测试报告。
69.在项目中你最大的收获是什么?
你觉得最困难的部分是什么?
你是怎么解决的?
我觉得最大的收获是经经历了软件测试的整个环节,熟悉了软件测试的整体流程,和组员一起友好的合作,最困难的部分是最测试计划的制定和测试用例的编写,通过不断的联系,慢慢的摸索,和组员一起讨论,不断地发现问题。
70.什么是确认测试?
确认测试:
又称为有效测试,有效性测试是在模拟的环境下,运用黑盒测试的方法,验证被测软件是否满足需求规格说明书列出的需求,任务是验证软件的功能及其他特性是否与用户的要求一致,对软件的功能和性能要求在软件需求规格说明书中已经明确规定,它包含的信息就是软件确认测试的基础。
71.什么是V模型?
V模型中包含哪些阶段?
具体是什么?
1.V模型:
是软件开发过程中的一个重要模型,由于其模型构图形似字母V,所以又称软件开发的V模型.它通过开发和测试同时进行的方式来缩短开发周期,提高开发效率。
2.V模型大体可以划分为以下几个不同的阶段步骤:
需求分析、概要设计、详细设计、软件编码、单元测试、集成测试、系统测试、验收测试。
需求分析:
即首先要明确客户需要的是什么,需要软件作成什么样子,需要有那几项功能,这一点上比较关键的是分析师和客户沟通时的理解能力与交互性。
要求分析师能准确的把客户所需要达到的功能,实现方式,等表述出来,给出分析结果,写出需求规格说明书。
概要设计:
主要是架构的实现,指搭建架构、表述各模块功能、模块接口链接和数据传递的实现等项事物。
详细设计:
对概要设计中表述的各模块进行深入分析,对各模块组合进行分析等,这一阶段要求达到伪代码级别,已经把程序的具体实现的功能,现象等描述出来,其中需要包含数据库设计说明。
软件编码:
按照详细设计好的模块功能表,编程人员编写出实际的代码。
单元测试:
按照设定好的最小测试单元进行按单元测试,主要是测试程序代码,为的是确保各单元模块被正确的编译,单元的具体划分按不同的单位与不同的软件有不同,比如有具体到模块的测试,也有具体到类,函数的测试等。
集成测试:
经过了单元测试后,将各单元组合成完整的体系,主要测试各模块间组合后的功能实现情况,以及模块接口连接的成功与否,数据传递的正确性等,其主要目的是检查软件单位之间的接口是否正确。
根据集成测试计划,一边将模块或其他软件单位组合成系统,一边运行该系统,以分析所组成的系统是否正确,各组成部分是否合拍。
系统测试:
经过了单元测试和集成测试以后,我们要把软件系统搭建起来,按照软件规格说明书中所要求,测试软件其性能功能等是否和用户需求相符合,在系统中运行是否存在漏洞,等。
验收测试:
主要就是用户在拿到软件的时候,在使用现场,会根据前边所提到的需求,以及规格说明书来做相应测试,以确定软件达到符合效果的。
72.什么是测试过程?
具体是怎样?
1、测试需求:
就是根据用户需求来评定测试员需要测试的内容,因为并不是说所有的东西都是可测的,对于某些软件,有些部分是无法测试的,这就需要测试员来评估,哪些可测哪些不可测。
2、测试计划:
根据测试需求来制定测试计划,即时间安排,人员安排以及硬件安排等。
3、测试用例设计:
设计测试用例,用以指导测试并可直观看出你测试的覆盖率;
4、测试环境搭建;
5、用例执行;
6、提交BUG;
7、回归BUG;
8、测试总结:
即完成一轮测试后,需要根据BUG分布来分析软件薄弱点在何处,以方便后续测试计划的制定;
73.什么是测试策略?
测试策略:
描述了测试工作的总体方法和目标,描述目前在进行哪一阶段的测试(单元测试、集成测试、系统测试)以及每个阶段内在进行的测试种类的概要性文档。
74.软件生命周期和软件测试生命周期的区别是什么?
软件生命周期:
是指从软件的产生直到报废的整个周期,包括可行性分析与项目计划,需求分析,概要设计和详细设计,编码,调试,维护七个阶段。
软件测试生命周期:
是指从测试项目计划建立到BUG提交的整个测试过程,包括软件项目测试计划,测试需求分析,测试用例设计,测试用例执行,BUG提交五个阶段。
75.缺陷描述包括哪些内容?
1.缺陷ID2.缺陷状态(新建、待解决、已解决、已修复)3.缺陷标题4.缺陷描述5.严重程度(致命、严重、一般、细微)6.优先级(1~4个等级,1为最高)7.缺陷提交人8.提交时间9.缺陷所属项目/模块10.指定解决时间11.附件
76.缺陷跟踪的目的是什么?
状态是什么?
目的:
管理缺陷,随时随地跟踪缺陷所处的位置,并进行缺陷分析。
状态:
New(新建缺陷)–open(打开缺陷)–fixed(已修复)–reopen(重新打开)–closed(关闭
实现跟踪需要支撑的工具:
QC
77.黑、白、灰盒测试的区别是什么?
代码不可见,不考虑系统内部结构的功能