搜档网
当前位置:搜档网 › 测试面试题

测试面试题

测试面试题
测试面试题

QA能力测试题(职位:测试)

测试基础(30分)

1.你认为测试人员在软件开发过程中的任务是什么?

比如:寻找Bug

2. 测试案例(Test case)的基本要素

比如:测试步骤、期望结果

3. 描述一种缺陷管理工具对软件缺陷(Bug)跟踪的管理的流程

比如:测试人员提交Bug,设置状态为Open

SQL语句(20分)

Name Class Score

张三语文81

张三数学75

李四语文76

李四数学90

王五语文81

王五数学100

王五英语90

1.用一条SQL语句查询除李四以外,语文成绩最低的学生Name

2.用一条SQL语句更新数学、语文成绩小于等于80分的学生成绩为80分

测试案例(50分)

1.员工资料维护模块的需求评审中,产品经理分享了界面图供大家参考,作为一名测试人员,请根据上图提问

2.请根据以上界面图,写出员工资料维护模块的测试案例

软件测试工程师笔面试试题

软件测试工程师笔面试试题 面试题 1.为什么要在一个团队中开展软件测试工作? 2.您是否了解以往所工作的企业的软件测试过程?如果了解,请试述 在这个过程中都有哪些工作要做?分别由哪些不同的角色来完成这些 工作? 03. 您是否了解以往所工作的企业的软件开发过程?如果了解,请试述 一个完整的开发过程需要完成哪些工作?分别由哪些不同的角色来完 成这些工作?(对于软件测试部分,可以简述) 4.您在以往的测试工作中都曾经具体从事过哪些工作?其中最擅长

哪 部分工作? 5.您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测 试类型的区别与联系(如功能测试、性能测试……) 6.请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统 测试、验收测试的区别与联系。 7.测试计划工作的目的是什么?测试计划工作的内容都包括什么?其 中哪些是最重要的? 8.您认为做好测试计划工作的关键是什么? 9.您所熟悉的测试用例设计方法都有哪些?请分别以具体的例子来说 明这些方法在测试用例设计工作中的应用。 10.您认为做好测试用例设计工作的关键是什么?

11.请以您以往的实际工作为例,详细的描述一次测试用例设计的完整 的过程。 12.您以往的工作中是否曾开展过测试用例的评审工作?如果有,请描 述测试用例评审的过程和评审的内容。 13.您以往是否曾经从事过性能测试工作?如果有,请尽可能的详细描 述您以往的性能测试工作的完整过程。 14.您在从事性能测试工作时,是否使用过一些测试工具?如果有,请 试述该工具的工作原理,并以一个具体的工作中的例子描述该工具是如何在实际工作中应用的。 15.您认为性能测试工作的目的是什么?做好性能测试工作的关键 是什 么?

软件测试工程师笔试题及答案

测试工程师笔试题 一、计算机知识(30分) 1、在Linux系统中,一个文件的访问权限是755,其含义是什么 参考答案: 755表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。 2、Linux中,如何从root用户切换到普通用户 参考答案:su su user1 切换到user1,但切换后的当前目录还是root访问的目录 su – user1 切换到user1,并且当前目录切换到user1的根目录下(/home/user1/) 3、简述一下C/S模式和B/S模式的区别 参考答案: c/s 是客户端/服务器架构 b/s 是浏览器/服务器架构 C/S模式有以下特点: S模式将应用与服务分离,系统具有稳定性和灵活性 S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性 3.由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快 4.在C/S模式中,作为客户机的计算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂 B/S模式有以下特点: 1.系统开发、维护、升级方便 每当服务器应用程序升级时,只要在服务器上升级服务应用程序即可,用户计算机上的浏览器软件不需要修改,系统开发和升级维护方便 S模式具有很强的开放性 在B/S模式下,用户通过通用的浏览器进行访问,系统开放性好 S模式的结构易于扩展 由于Web的平台无关性,B/S模式的结构可以任意扩展,可以从包含一台服务器和几个用户的小型系统扩展成为拥有成千上万个用户的大型系统 4.用户使用方便 B/S模式的应用软件都是基于Web浏览器的,而Web浏览器的界面是类似的。对于无用户交换功能的页面。用户接触的界面都是一致的,用户使用方便 4、Windows操作系统中PATH环境变量的作用是什么 参考答案: PATH是Windows操作系统环境变量,PATH作用是用户在命令行窗口执行一个命令,则在PATH变量设置的目录下依次寻找该命令或对应的执行文件,若找到,则执行,若没有找到,则命令行窗口返回无效命令。 5、TCP和UDP有什么区别 参考答案: TCP-有连接,所以握手过程会消耗资源,过程为可靠连接,不会丢失数据,适合大数据量交换UDP-非可靠连接,会丢包,没有校验,速度快,无须握手过程

测试面试问题及答案

这篇帖子中的题目有我自己面试过程中问道过的,也有在网上看到的,但是答案我都是结合自己的从业经验以及真是的项目实践流程来编写的,不能说这就是最终的正确答案,但是希望整理出来能给大家一些参考和帮助!如果大家有更好的答案不妨写到帖子当中,我们共同讨论 1、介绍一下整体项目流程 答案: 1.搭建缺陷管理的环境和测试环境以及配置管理的环境搭建; 2.编写测试计划; 3.设计测试用例; 4.编写测试用例; 5.测试用例的评审; 6.执行测试; 7.缺陷管理; 8.测试报告的输出 2、在实际项目中你是如何做测试计划 答案: 1.对客户提供的或需求分析人员编写的用户需求文档或需求规格说明书进行分析,提炼出测试要点; 2.根据测试要点编写测试用例。 3.由评审组对测试用例进行评审--修改--再次评审--初步定稿 4.执行测试 4.1按照测试用例对系统进行功能验证及客户的需求验证 4.2将测试过程中产生的Bug录入缺陷管理系统 4.3新版本发布后,对本次版本新增加的功能以及开发人员修正的Bug进行回归测试 4.4根据项目需要提交测试报告。 3、你是如何制定测试过程中的时间进度表的 答案:根据项目的需求、开发周期、开发人员的开发进度等时间安排来制定一个测试时间进度初稿,并将测试时间进度表交与整个项 目团队成员大家一起讨论和分析,最终和所有人达成共识制定出一个大家都可以执行的测试时间进度表。时间表中包括了开发人员提交功能或功能模块的时间,以及为了更好的执行测试,配合测试人员进行功能培训的时间,以及测试执行时间等,都详细的写到WBS中,并按照这个时间进度表来执行项目的测试任务。 4、测试计划都包括那些项 答案:1.测试计划目标2.测试参考文档3.测试术语与定义4.测试内容5.测试人员的分工6.测试进度7.测试流程8.测试工具9.测试缺陷管理10.测试的风险分析 5、测试用例如何设计的 答案:在测试用例设计之前首先要熟悉客户的需求文档或需求规格说明书,以做到对被测系统的熟悉,充分了解产品的详细功能,并在熟悉过程中即使与研发人员和客户人员进行有效的沟通。然后从需求中提炼中各个模块的详细功能点编写出一个测试要点的文档。根据测试要点设计测试用例,测试要点与测试用例

自动化测试工程师面试题

自动化测试工程师面试题 (答题时间100分钟) A.测试基础 1、白盒测试与黑盒测试的区别是什么? 2、什么是正交试验法,使用场景是什么? 3、数据库中,游标是什么?其作用是什么? 。 4、简述常用的Bug管理或者用例管理工具,并且描述其中一个工作流程。 5、智力题 6、一个屋子有一个门(门是关闭的)和3盏电灯。屋外有3个开关,分别与这3 盏灯相连。你可以随意操纵这些开关,可一旦你将门打开,就不能变换开关了。请确定每个开关具体管哪盏灯。

B.自动化测试 1、自动化测试与测试自动化的区别。 2、列举出你熟悉的自动化工具,并说明其实现原理。 3、自动化测试的使用场景? 4、什么是关键字驱动? 5、高质量的自动化脚本应该具备哪些特性? 6、简述Slenium grid的作用。 7、简要说明下面api的使用方法 A: 此API功能说明:

C.开发能力 1、描述==与equals的区别 2、final, finally, finalize的区别 3、说明Tomcat的中下列参数的作用: enableLookups= "false " redirectPort= "8443 " 4、Java中sleep和wait的区别 5、SSH是什么?每个框架扮演的角色是什么? 6、Linux系统下怎么查看和关闭名为jira的进程? 7、Linux如何安装jdk、mysql请写出相关命令? 8、HashMap和Hashtable的区别? 9、编程题: 1:写一个Singleton模式

2:现在需要实现一个用户登录功能,需要不同的用户有不同的权限,请设计出开发思路,可以使用伪代码。

软件测试工程师笔试题目和答案

一、判断题 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负责人

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、哪个函数是用来截取虚拟用户脚本中的动态值?(手工关联) Web_reg_save_param 2、你如何识别系统瓶颈? 从TPS指标分析(即系统每秒处理可处理事务数)当前随着用户数的增长其系统每秒可处理的事务数是否也会增长 3、think_time有什么用? Think_time作用主要有以下几种: 1)降低当前运行时压力,缓解对应用服务器所造成的压力 2)模拟真实生产用户操作,考察对服务器所造成的影响 4、一般什么时候开始进行性能测试 被测系统的正常业务流程通过,即集成测试通过后。 5、进行参数化的目的 1)减少脚本的大小 2)提供不同的值以提高执行脚本的能力,从而更加真实的模拟生产环境的数据 6、容量测试方法中为什么要以逐步递增的的方式进行 虚拟用户数随着负载时间的延长而增加,可以帮助确定系统响应时间减慢的准确时间点以及准确用户数 7、假设在测试过程中发现某些事务的响应时间过长,但分析应用服务、数据库服务以及网络都属于 正常现象,问题可能出现的原因 1)LR客户端机器是否已无法承载当前运行压力导致LR无法及时获取从服务端返回的信息2)Think_time(即思考时间)是否已忽略 3)确定当前被测系统架构,是否为在每次测试过程中清除缓存所导致 8、如何发现应用服务的相关问题? 1)通过某些事务的运行,判断是否在应用代码层未进行调优导致事务响应事件过长 2)通过实时监控工具(nmon等)监控分析: a)系统在运行过程其CPU是否稳定运行或CPU耗用是否过高 b)在系统运行过程中其内存是否存在内存泄露现象 3)打开应用相应日志,分析在运行过程中是否存在交易报错并获取错误原因查看是否由于代码原因导致交易错误发生 9、如何发现数据库的相关问题? 1)通过运行某些相应的已获取的SQL语句,判断是否由于数据库索引所导致的事务响应过长的问题发生 2)通过实时监控工具(nmon等)监控分析: a)在系统运行过程中CPU是否可稳定运行或CPU耗用过高; b)在系统运行过程中其内存是否存在内存泄露等现象。

一套比较完整的软件测试人员面试题

人力资源问题 你为什么选择软件测试行业 因为之前有了解软件测试这个行业,觉得他的发展前景很好。也对 根据你以前的工作经验描述一下软件开发、测试过程,由那些角色负责,你做什么 要有架构师、开发经理、测试经理、程序员、测试员 我在里面主要是负责所分到的模块执行测试用例。 结合你以前的学习和工作经验,你认为如何做好测试。 根据我以前的工作经验,我认为做好工作首先要有一个好的沟通,只有沟通无障碍了,才会有好的协作,才会有跟好的效率,再一个就是技术一定要过关,做测试要有足够的耐心,和一个良好的工作习惯,不懂的就问,实时与同事沟通这样的话才能做好测试工作。 你觉得测试最重要的是什么 尽可能的找出软件的错误 怎样看待加班问题 加班的话我没有太多的意见,但是我还是觉得如果能够合理的安排时间的话,不会有太多时候会加班 的。 如果一个很有个性的程序员认为自己的BUG不是BUG,怎么解决? 首先我要确定我所提的在我认为是不是bug,如果我认为是的话我会在他面前重现这个bug和他讲这是个bug,和他沟通,或者我会找到我的直系领导让他解决。 为什么在团队中要有测试 因为软件有错误,如果没有专业的测试人员很难发现软件的一些错误。 在测试时代学习自己最大的收获是什么? 在测试时代我除了学习了测试的知识外,还看到了老师们对待测试的一种态度,明白了做任何工作都要有沟通,做测试的也要有很好的沟通才可以做好。知道自己在项目组中的位置,和开发的关系。 你对未来的规划 我想在工作中慢慢的积累经验,使自己强大起来,能够担任更重要的职务。 自己优势及缺点 我的优点是有足够的耐心对待每一件事情,善于观察事物,承受压力的能力很强。缺点可能就是我不是很爱说话,习惯做不习惯说,但是和人沟通还是没有问题的。

华为软件测试工程师面试题

华为软件测试工程师面试题 2010-05-27 10:25 Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图? 答:七层结构从上到下依次是: 7 应用层;6 表示层;5 会话层;4 传输层;3 网络层;2 数据链路层;1 物理层 五层结构是 5 应用层;4 运输层;3 网络层; 2 链路层;1 物理层。 Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用?TCP与UDP 呢? 答:UDP,TCP在传输层,IP在网络层, TCP/IP是英文Transmission Control Protocol/Internet Protocol的缩写,意思是"传输控制协议/网际协议"。TCP/IP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T1和X.25、以太网以及RS-232串行接口)之上。确切地说,TCP/IP协议是一组包括TCP协议和IP协议,UDP(User Datagram Protocol)协议、ICMP(Internet Control Message Protocol)协议和其他一些协议的协议组。TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层、数据链路层、网路层、传输层、话路层、表示层和应用层。而TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。 传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到 Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的? 一般意义上说交换机是工作在数据链路层。但随着科技的发展,现在有了三层交换机,三层交换机已经扩展到了网络层。也就是说:它等于“数据链路层+ 部分网络层”。交换机中传的是帧。通过存储转发来实现的。 路由器是工作在网络层。路由器中传的是IP数据报。主要是选址和路由。 Q4:请问C++的类和C里面的STRUCT有什么区别? 答:除关键字不同外(class,struct)的唯一区别是, 结构在默认情况下的成员是公共(public)的, 而类在默认情况下的成员是私有(private)的。 在C++中,结构是特殊的类。 class是从struct发展而来的。之所以将struct和class都保留,是因为: 1、提出class是为了强调一种概念。 2、保留struct是为了照顾到大多数人的习惯。 struct和class是有区别的。 struct保证成员按照声明顺序在内存中存储。class不保证等等 而它们都可以继承,实现多态等。但也有少许区别。比如:

软件测试工程师笔试题

一、判断题 1.软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。(?) 分析:软件测试人员应在需求阶段就加入到开发过程中。因为软件的质量问题会随着软件开发周期的不断展开而不断放大的,而更正质量问题的成本也是不断放大的,也就是说在需求阶段出现的小问题,到开发完成后缺陷可能成几何倍数放大,而修改所需要的成本也会不断的放大,如果测试工程师能够尽早的加入其中的话可以尽早的找出问题,及时发现,避免问题最后放大到不可收拾。 2.发现错误多的模块,残留在模块中的错误也多。(?) 分析:开发人员能力参差不齐,当发现某模块bug数越多,修改的bug越多,则引入新的bug就会越多,那么这些新的bug发现的难度要比修改前发现bug要大的多,其隐藏未发现的bug数量就越多,那么相应的模块质量也就越差。代码复用也可能造成该模块的bug比较多。 3.测试人员在测试过程中发现一处问题,如果影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。(?) 分析:正确流程应提交错误缺陷,此时开发组人员会有记录,并修改此问题。如果测试人员自己修改,会导致开发人员无记录,容易出现冗余系统版本,并不清楚哪个为最终版本。 4.单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。(?) 5.功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。(?) 6.软件质量管理即QM是由QA和QC构成,软件测试属于QC的核心工作内容。(?) 补充:
QA(QualityAssurance)品质保证;
QC(QualityConterller)品质控制员 7.软件测试只能发现错误,但不能保证测试后的软件没有错误。(?) 8.软件就是程序。(?) 概念:软件是计算机程序,程序所用的数据以及相关文档资料的结合。软件又分为系统软件和应用软件两大类。 9.测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。(?) 分析:白盒测试用例设计6种覆盖方法: a.语句覆盖 b.判定覆盖 c.条件覆盖 d.判定/条件覆盖 e.组合覆盖 f.路径覆盖 软件测试的目的是发现软件中的错误,但不能保证软件没有错误。 10.I18N测试是指对产品做出具有国际性的规划,而L10N测试则是指软件做出符合本地的工作。(?)

最新一个常见的软件测试面试题

一个常见的软件测试面试题 一个常见的软件测试面试题 考官从办公室(面试现场)随意选取一个简单物品,假定是一个喝水的带广告图案的花纸杯,让应聘人对它设计出尽可能多的测试用例。 测试项目:杯子 需求测试:查看杯子使用说明书 界面测试:查看杯子外观 功能度:用水杯装水看漏不漏;水能不能被喝到 安全性:杯子有没有毒或细菌 可*性:杯子从不同高度落下的损坏程度 可移植性:杯子再不同的地方、温度等环境下是否都可以正常使用 兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等 易用性:杯子是否烫手、是否有防滑措施、是否方便饮用 用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述 疲劳测试:将杯子盛上水(案例一)放24小时检查泄漏时间和情况;盛上汽油(案例二)放24小时检查泄漏时间和情况等 压力测试:用根针并在针上面不断加重量,看压强多大时会穿透 跌落测试:??杯子加包装(有填充物),在多高的情况摔下不破损 震动测试: 杯子加包装(有填充物),六面震动,检查产品是否能应对恶劣的铁路\公路\航空运输 测试数据: 测试数据具体编写此处略(最讨厌写测试数据了)。其中应用到:场景法、等价类划分法、因果图法、错误推测法、边界值法等方法 期望输出:

该期望输出需查阅国标、行标以及使用用户的需求 说明书测试: 检查说明书书写准确性 给大家提三个产品:1.手机 2.电饭锅 3.电梯 有兴趣的同学可以把答案写出来 一个常见的软件测试面试题 问题集 1.软件测试分哪两种方法?分别适合什么情况? 2.一套完整的测试应该由哪些阶段组成?分别阐述一下各个阶段。 3.软件测试的类型有那些?分别比较这些不同的测试类型的区别与联系。 4.测试用例通常包括那些内容?着重阐述编制测试用例的具体做法 5.在分别测试winform的C/S结构与测试WEB结构的软件是,应该采取什么样的方法分别测试?他们存在什么样的区别与联系? 6.在测试winform的C/S结构软件时,发现这个软件的运行速度很慢,您会认为是什么原因?您会采取哪些方法去检查这个原因? 7.描述使用bugzilla缺陷管理工具对软件缺陷(BUG)跟踪的管理的流程8.如果您是测试组长,您会采取什么样的方式管理团队?在测试人员同开发人员的沟通过程中,如何提高沟通的效率和改善沟通的效果?维持测试人员同开发团队中其他成员良好的人际关系的关键是什么? 问题解答: 1.软件测试分哪两种方法?分别适合什么情况? 软件测试方法一般分为两种:白盒测试与黑盒测试。白盒测试又称为结构测试、逻辑驱动测试或基于程序本身的测试,它着重于程序的内部结构及算法,通常不关心功能与性能指标;黑盒测试又被称为功能测试、数据驱动测试或基于规格说明的测试,它实际上是站在最终用户的立场,检验输入输出信息及系统性能指标是否符合规格说明书中有关功能需求及性能需求的规定。 2.一套完整的测试应该由哪些阶段组成?分别阐述一下各个阶段。 计划阶段、设计阶段、白盒单元、白盒集成、黑盒单元、黑盒集成、系统测试、回归测

测试工程师面试题(100分钟完成)

测试工程师面试题 (答题时间100分钟) A.测试基础 1、白盒测试与黑盒测试的区别是什么? 白盒测试:测试程序内部结构,内部特征 黑盒测试:通过界面测试程序功能,查看输入输出结果 2、什么是正交试验法,使用场景是什么? 研究多因素多水平的一种设计方法 场景:多因素多条件的情况下 3、数据库中,游标是什么?其作用是什么? 。 游标:从多条数据中检索集中提取一条数据 作用:当做指针,保存查询结果,方便后续使用 4、简述常用的Bug管理或者用例管理工具,并且描述其中一个工作流程。 常用:testlink,QC,mantis,禅道,TAPD,JIRA TAPD:产品创建(需求,计划,模块)-->项目创建(PM排期、任务分解)-->研发(编码、单元测试等)-->测试(测试计划,用例,执行,bug,报告等) 基于敏捷开发 5、智力题 一个屋子有一个门(门是关闭的)和3盏电灯。屋外有3个开关,分别与这3盏灯相连。 你可以随意操纵这些开关,可一旦你将门打开,就不能变换开关了。请确定每个开关具体管哪盏灯。 一个开关关掉,一个打开,一个打开几分钟、然后关掉 进屋后,亮这的是第二个开关,关闭的两灯中,有热量的为第三个开关,剩下的为第一个开关

B.自动化测试 1、自动化测试与测试自动化的区别。 自动化测试:利用工具录制或编写脚本进行功能以及性能测试 测试自动化:让测试过程脱离人工。对于控制成本,控制质量,回溯质量和减少测试周期都有积极影响的一种研发过程 2、列举出你熟悉的自动化工具,并说明其实现原理。 Web应用类工具:selenium 客户端建立与selenium-RC server 的连接。 Selenium RC Server 启动一个浏览器,并注入JS 代码 将Selenese 代码传到客户端的Selenium-Core 中。 Selenium-Core 翻译并解析执行用户录制的操作。 让代理Server 进行通讯 Remote Control Server 负责跟远程Web 应用服务器进行通讯。 操作完成,显示结果,并执行下一指令。 3、自动化测试的使用场景? 软件需求变更不是很快(尤其是UI自动化)}, 项目周期长 自动化测试脚本重复使用 4、什么是关键字驱动? 功能自动化测试框架,表格驱动测试或者基于动作字的测试 5、高质量的自动化脚本应该具备哪些特性? 1、不需要深入的工作或计划 2、可以加快开始自动化 3、对实际执行操作可以审计跟踪 4、用户不必是编程人员 5、提供良好的(软件或工具)的演示

精选软件测试笔试题目及答案

精选软件测试笔试题目及答案 软件测试去面试的时候都会做哪些题目呢?下面是收集的精选软件测试笔试题目及答案,欢迎大家阅读。 1、集成测试也叫组装测试或者联合测试,请简述集成测试的主要内容? (1)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失; (2)一个模块的功能是否会对另一个模块的功能产生不利的影响; (3)各个子功能组合起来,能否达到预期要求的父功能; (4)全局数据结构是否有问题; (5)单个模块的误差累积起来,是否会放大,从而达到不能接受的程度。 2、简述集成测试与系统测试关系?

(1)集成测试的主要依据概要设计说明书,系统测试的主要依据是需求设计说明书; (2)集成测试是系统模块的测试,系统测试是对整个系统的测试,包括相关的软硬件平台、网络以及相关外设的测试。 3、软件测试的文档测试应当贯穿于软件生命周期的全过程,其中用户文档是文档测试的重点。那么软件系统的用户文档包括哪些? 用户手册 安装和设置指导 联机帮助 指南、向导 样例、示例和模板 授权/注册登记表 最终用户许可协议

4、软件系统中除用户文档之外,文档测试还应该关注哪些文档? 开发文档 软件需求说明书 数据库设计说明书 概要设计说明书 详细设计说明书 可行性研究报告 管理文档 项目开发计划 测试计划 测试报告

开发进度月报 开发总结报告 5、简述软件系统中用户文档的测试要点? (1)读者群。文档面向的读者定位要明确。对于初级用户、中 级用户以及高级用户应该有不同的定位 (2)术语。文档中用到的术语要适用与定位的读者群,用法一致,标准定义与业界规范相吻合。 (3)正确性。测试中需检查所有信息是否真实正确,查找由于 过期产品说明书和销售人员夸大事实而导致的错误。检查所有的 目录、索引和章节引用是否已更新,尝试链接是否准确,产品支 持电话、地址和邮政编码是否正确。 (4)完整性。对照软件界面检查是否有重要的分支没有描述到,甚至是否有整个大模块没有描述到。 (5)一致性。按照文档描述的操作执行后,检查软件返回的结 果是否与文档描述的相同。 (6)易用性。对关键步骤以粗体或背景色给用户以提示,合理

软件测试工程师笔试题有答案

软件测试笔试题(含答案) 1.请写出一个你工作经历中的一个功能点测试用例,例如:用户页面登陆 2.请在以下两个项目当中,选择一个,考虑如何进行用例设计:a.杯子 b.有弹簧的圆珠笔 杯子: 需求测试:查看杯子使用说明书 界面测试:查看杯子外观 功能度:用水杯装水看漏不漏;水能不能被喝到 安全性:杯子有没有毒或细菌 可靠性:杯子从不同高度落下的损坏程度 可移植性:杯子再不同的地方、温度等环境下是否都可以正常使用软件开发网兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等 易用性:杯子是否烫手、是否有防滑措施、是否方便饮用 用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述 疲劳测试:将杯子盛上水(案例一)放24小时检查泄漏时间和情况;盛上汽油(案例二)放24小时检查泄漏时间和情况等 压力测试:用根针并在针上面不断加重量,看压强多大时会穿透 强度测试: 杯子加包装(有填充物),在多高的情况摔下不破损 有弹簧的圆珠笔: 功能测试:圆珠笔按下是否能正常写字,写字太重会不回缩回 去,继续按会不会弹回去 性能测试:圆珠心弹出弹回的快慢

负载测试:一直按,弹簧能接受多少次的升缩 兼容性测试:换其他的笔芯能不能行 强度测试:用力过度会怎样 可恢复性测试:如果弹簧压久了,是否可恢复等等 GUI测试:笔的外观,拿笔的舒适性 安全性:考虑对笔芯的保护,是否对使用者造成危害等等 3.白箱测试和黑箱测试是什么?什么是回归测试? 白箱测试是在看懂程序代码和设计方案的前提下,进行软件的测试。这种测试注重于源代码 的覆盖率,同时需要测试者具备较高的技术水平。白箱测试的优点是可以对代码有详细的审 查,能找出隐藏在代码中的错误,从而确保高质量的代码;缺点是很多时候不能看完所有的 代码,不能找出欠缺的代码,同时白箱测试和用户如何使用软件无关。 黑箱测试的优点是测试者无需熟悉软件内部结构,并且根据蓝图在早期就可以制定测试方 案,并不依赖于开发者的工作进展,而且黑箱测试简单易行,对测试者的技术要求不高;但 是,黑箱测试主要是功能上的测试,只能覆盖只有一小部分的输入,不能保证程序的所有部 分都被测试到。 回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致

软件测试人员面试笔试题及答案

软件测试笔试试题 一、单选题 1.关于HTTP协议中状态码的表示,下列说法错误的是(A) A.1**:表示服务器错误 B.2**:表示请求成功地接收 C.3**:表示重定向 D.4**:表示客户端错误 2.在Linux中.要解包bugzilla.tar.gz并详细报告tar命令处理的文件名,应使用命令(A )A.tar –xvzf bugzilla.tar.gz B.tar –cvzf bugzilla.tar.gz C.tar –cvzf bugzilla.tar.gz D.tar –cxvf bugzilla.tar.gz 3.有如下C程序 #include void main() { int n; int s = 0; int t = 1; for( n = 1 ; n <= 20 ; n++) { _______ s += t; } printf(“%d\n”, s); } 若使该程序实现计算1!+ 2!…….+20!的功能,则在程序横线上应填语句(D ) A.n*=t B. n=n*(n-1) C. t=t*(n-1) D. t*=n; 4.有如下IP地址 (1)192.168.1.1 (2)10.10.0.0 (3)165.100.0.0 (4)202.255.0.255 则下列说法中正确的是(C ) A.(1)是C类地址可以直接出现在互联网上 B.(2)是A类地址,主机号为0.0,不可以直接出现在互联网上 C.(3)是B类地址,不可以直接出现在互联网上 D.(4)是D类地址,不可以直接出现在互联网上 5. 下列常用的测试用例设计技术中,不属于白盒测试技术的是(D ) A.信息流分析法 B.数据流分析法 C.逻辑覆盖测试和基本路径测试 D.状态图法

软件测试面试题目及答案

软件测试面试题目及答案 这是一份很火的软件测试面试题目及答案,今天千锋老师就发出来给大家看看,并介绍一下思路。 <1>功能方面,是否能按指定条件查到正确、完整的结果,具体: 1、录入条件为可查到结果的正常关键字、词、语句,检索到的内容、链接正确性; 2、录入条件为不可查到结果的关键字、词、语句; 3、录入条件为一些特殊的内容,如空、特殊符、标点符、极限值等,可引入等价类划分的方法等。

<2>性能方面,可利用测试工具或各种测试手段考虑功能在各方面的表现,具体: 1、压力测试:在不同发用户数压力下的表现(评价指标如响应时间等); 2、负载测试:看极限能承载多大的用户量同时正常使用; 3、稳定性测试:常规压力下能保持多久持续稳定运行; 4、内存测试:有无内存泄漏现象; 5、大数据量测试:如模拟从庞大的海量数据中搜索结果、或搜索出海量的结果后列示出来,看表现如何等等。 <3>易用性方面,交互界面的设计是否便于、易于使用,具体: 1、依据不同的查询结果会有相关的人性化提示,查不到时告知?查到时统计条数并告知?有疑似输入条件错误时提示可能正确的输入项等等处理; 2、查询出的结果罗列有序,如按点击率或其他排序规则,确保每次查询出的结果位置按规则列示方便定位,显示字体、字号、色彩便于识别等等; 3、标题查询、全文检索、模糊查询、容错查询、多关键字组织查询(空格间格开)等实用的检索方式是否正常? 4、输入搜索条件的控件风格设计、位置摆放是否醒目便于使用者注意到,有否快照等快捷查看方式等人性化设计?

<4>兼容性方面,跨平台、多语言等多样性环境组合情况下测试使用的正常性,具体: 1、WINDOWS/Linux/UNIX等各类操作系统下及各版本条件下的应用; 2、IE/FIREFOX/GOOGLE/360/QQ等各类浏览器下及各版本条件下、各种显示分辨率条件下的应用; 3、SQL/Oracle/DB2/MySQL等各类数据库存储情况下的兼容性测试; 4、简体中文、繁体中文、英文等各类语种软件平台下的兼容性测试; 5、IPHONE/IPAD、安卓等各类移动应用平台下的兼容性测试; 6、与各相关的监控程序的兼容性测试,如输入法、杀毒、监控、防火墙等工具同时使用。 <5>安全性方面,往往容易被忽视的环节,具体: 1、被删除、加密、授权的数据,不允许被查出来的,是否有安全控制设计; 2、录入一些数据库查询的保留字符,如单引号、%等等,造成查询SQL拼接出的语句产生漏洞,如可以查出所有数据等等,这方面要有一些黑客攻击的思想并引入一些工具和技术,如爬网等。 3、用白盒测试技术,检查一下在程序设计上是否存在安全方面的隐患; 4、对涉及国家安全、法律禁止的内容是否进行了相关的过滤和控制;

性能测试经典面试题

性能测试人员面试经典技术问题 1.请问什么是性能测试、负载测试、压力测试? 性能测试:对一个软件系统而言,包括执行效率、资源占用、系统稳定性、安全性兼容性、可扩展性等。 负载测试:通过逐步加压的方式来确定系统的处理能力,确定系统能承受的各项阀值。 压力测试:逐步增加负载,使系统某些资源达到饱和甚至失效的测试。 2.请分别针对性能测试、负载测试和压力测试试举一个简单的例子? 性能测试例子:公司开发了一个小型项目管理系统,上线前需要做负载、压力、大数据量、强度测试等。 负载测试:逐步加压,从而得到“响应时间不超过10秒”,“服务器平均CPU利用率低于85%”等指标阀值。 压力测试:逐步加压,从而使“响应时间超过10秒”,“服务器平均CPU利用率高于90%” 等指标来确定系统能承受的最大负载量。 3.请例举出常用的性能测试工具,并指出这些工具的优缺点? LoadRunner,录制脚本快捷操作简便,需要一定的学习时间,有采购成本。 4.请问您是如何得到性能测试需求?怎样针对需求设计、分析是否达到需求? 在查看需求文档,从中提取性能测试需求,与用户交流,了解实际使用情况。 结合业务信息设计操作场景总结出需测试的性能关键指标。 执行用例后根据提取关键性能指标来分析是否满足性能需求。 5.什么时候可以开始执行性能测试? 在产品相对比较稳定,功能测试结束后。灵活性比较强。 6.什么是集合点?设置集合点有什么意义?LoadRunner中设置集合点的函数是哪个?

集合点可以控制各个Vuser以便在同一时刻执行任务。 借助集合点,可以再LoadRunner中实现真正意义上的并发。 lr_rendezvous() 7.性能测试时,是不是必须进行参数化?为什么要创建参数?LoadRunner中如何创建参数?8是。 模拟用户真实的业务操作。 创建参数列表,用参数替换固定的文本。 8.您了解关联吗?如何找出哪里需要关联?请给一些您所在项目的实例。 了解。 使用LoadRunner自动关联功能。手动关联:录制两份相同操作步骤的脚本,找出不同的部分进行判断。 一个项目管理系统,每次登录后服务器都自动分配一个sessionID以便之后每次表单提交后验证。 9.您如何调试LoadRunner脚本? 设置断点、增加log。 10.在LoadRunner中如何编写自定义函数?请给出一个您在以前项目中编写的函数。 11.请问您是如何理解LoadRunner中集合点、事务以及检查点等概念? 集合点:可以控制各个Vuser以便在同一时刻执行任务,可实现真正意义上的并发。 事务:事务是用来度量服务器响应时间的操作集。 检查点:在回放脚本期间搜索特定内容,从而验证服务器响应内容的正确性。 12.如何应用LoadRunner进行性能测试? 使用虚拟用户生成器创建脚本,使用控制器设定场景、运行脚本,使用分析器分析运行后得

软件测试人员面试题

你为什么选择软件测试行业 因为之前有了解软件测试这个行业,觉得他的发展前景很好。也对 责,你做什么 我在里面主要是负责所分到的模块执行测试用例。 结合你以前的学习和工作经验,你认为如何做好测试。 根据我以前的工作经验,我认为做好工作首先要有一个好的沟通,只有沟通无障碍了,才会有好的协作,才会有跟好的效率,再一个就是技术一定要过关,做测试要有足够的耐心,和一个良好的工作习惯,不懂的就问,实时与同事沟通这样的话才能做好测试工作。 你觉得测试最重要的是什么 尽可能的找出软件的错误 怎样看待加班问题 加班的话我没有太多的意见,但是我还是觉得如果能够合理的安排时间的话,不会有太多时候会加班的。 如果一个很有个性的程序员认为自己的BUG不是BUG,怎么解决?首先我要确定我所提的在我认为是不是bug,如果我认为是的话我会在他面前重现这个bug和他讲这是个bug,和他沟通,或者我会找到我的直系领导让他解决。

为什么在团队中要有测试 因为软件有错误,如果没有专业的测试人员很难发现软件的一些错误。在测试时代学习自己最大的收获是什么? 在测试时代我除了学习了测试的知识外,还看到了老师们对待测试的一种态度,明白了做任何工作都要有沟通,做测试的也要有很好的沟通才可以做好。知道自己在项目组中的位置,和开发的关系。 我想在工作中慢慢的积累经验,使自己强大起来,能够担任更重要的职务。 自己优势及缺点 的能力很强。缺点可能就是我不是很爱说话,习惯做不习惯说,但是和人沟通还是没有问题的。 你为什么选择测试时代不选择51testing 因为相对比来看测试时代价钱相对公道,师资也不错,还有一个原因就是在网上查了一下测试时代的口碑不错,也是网放心过来的原因。 13.请谈谈您对测试工作的理解 我认为测试工作是找出软件产品的错误, 14.你认为测试人员需要具备哪些素质? 我认为做测试的应该要有一定的协调能力,因为测试人员要经常与开发接触处理一些问题,如果处理不好的话会引起一些冲突这样的话工

软件测试面试题[找工作必读]

01. 为什么要在一个团队中开展软件测试工作? 因为没有经过测试的软件很难在发布之前知道该软件的质量,就好比ISO质量认证一样,测试同样也需要质量的保证,这个时候就需要在团队中开展软件测试的工作。在测试的过程发现软件中存在的问题,及时让开发人员得知并修改问题,在即将发布时,从测试报告中得出软件的质量情况。 02. 您在以往的测试工作中都曾经具体从事过哪些工作?其中最擅长哪部分工作? 我曾经做过web测试,后台测试,客户端软件,其中包括功能测试,性能测试,用户体验测试。最擅长的是功能测试 03. 您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同04. 的测试类型的区别与联系(如功能测试、性能测试……) 测试类型有:功能测试,性能测试,界面测试。 功能测试在测试工作中占的比例最大,功能测试也叫黑盒测试。是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。 性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。 界面测试,界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。而且设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。同时界面如同人的面孔,具有吸引用户的直接优势。设计合理的界面能给用户带来轻松愉悦的感受和成功的感觉,相反由于界面设计的失败,让用户有挫败感,再实用强大的功能都可能在用户的畏惧与放弃中付诸东流。 区别在于,功能测试关注产品的所有功能上,要考虑到每个细节功能,每个可能存在的功能问题。性能测试主要关注于产品整体的多用户并发下的稳定性和健壮性。界面测试更关注于用户体验上,用户使用该产品的时候是否易用,是否易懂,是否规范(快捷键之类的),是否美观(能否吸引用户的注意力),是否安全(尽量在前台避免用户无意输入无效的数据,当然考虑到体验性,不能太粗鲁的弹出警告)?做某个性能测试的时候,首先它可能是个功能点,首先要保证它的功能是没问题的,然后再考虑该功能点的性能测试 04.您认为做好测试用例设计工作的关键是什么? 白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果 黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题 05. 请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。 黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。 白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。 软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,

软件测试技术笔试题及答案

1 .软件测试的目的是尽可能多的找出软件的缺陷。( Y) 2 .Beta 测试是验收测试的一种。( Y) Acceptance testing 验收测试是部署软件之前的最后一个测试操作。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。 3 .验收测试是由最终用户来实施的。( N ) 是由测试人员来实施的 4 .项目立项前测试人员不需要提交任何工件。( Y ) 工件:加工过程中生产对象 5 .单元测试能发现约80% 的软件缺陷。( Y ) 6 .代码评审是检查源代码是否达到模块设计的要求。( N ) 代码评审也称代码复查,是指通过阅读代码来检查源代码与编码标准的符合性以及代码质量的活动。 7 .自底向上集成需要测试员编写驱动程序。( Y ) Vvvvvvvvvvvvvvvvvvv 自顶向下综合测试的具体步骤为: 1 以主控模块作为测试驱动模块,把对主控模块进行单元测试时引入的所有桩模块用实际模块替代; 2 依据所选的集成策略(深度优先或广度优先),每次只替代一个桩模块; 3 每集成一个模块立即测试一遍; 4 只有每组测试完成后,才着手替换下一个桩模块; 5 为避免引入新错误,须不断地进行回归测试(即全部或部分地重复已做过的测试)。 自底向上综合测试的步骤分为: 1 把低层模块组织成实现某个子功能的模块群(cluster);

2 开发一个测试驱动模块,控制测试数据的输入和测试结果的输出; 3 对每个模块群进行测试; 4 删除测试使用的驱动模块,用较高层模块把模块群组织成为完成更大功能的新模块群。 8 .负载测试是验证要检验的系统的能力最高能达到什么程度。( N ) 负载测试(Load testing),通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。在这种测试中,将使测试对象承担不同的工作量,以评测和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。负载测试的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。此外,负载测试还要评估性能特征。例如,响应时间、事务处理速率和其他与时间相关的方面。 9 .测试人员要坚持原则,缺陷未修复完坚决不予通过。( N ) 10 .代码评审员一般由测试员担任。( N ) 11 .我们可以人为的使得软件不存在配置问题。( N ) 是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。我们知道,在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。 12 .集成测试计划在需求分析阶段末提交。( N ) 执行阶段 1)时间安排单元测试已经完成后就可以开始执行集成测试了 2)输入需求规格说明书概要设计集成测试计划集成高度设计集成测试例集成测试规程集成测试代码(如果有)集成测试脚本集成测试工具详细设计代码单元测试报告 3)入口条件单元测试阶段已经通过基线化评审 4)活动步骤执行集成测试用例回归集成测试用例撰写集成测试报告 5)输出集成测试报告 6)出口条件集成测试报告通过集成测试阶段基线评审 二、选择题 1 .软件验收测试的合格通过准则是:(ABCD)

相关主题