
2016年马上就要过去了,作为一个没有测试培训经验就直接上岗的测试人员,感觉有必要对自己这近一年的测试工作做个总结。一是回顾下这一年做了什么,二是为以后的工作提供个借鉴,让自己能在测试道路上走的更加清晰。
但是发现自己居然无从说起......尴尬之余想起一种另类的总结,拿几套面试题来谈一谈,因为自己也没有培训经历,理论方面就看过一本Software Testing,就结合自己的实际工作来检验下能否通过面试吧。
软件测试面试题和答案
一、判断题
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.软件测试的目的。曾在Software Testing这本书中看到,软件测试的目的不是发现所有缺陷提交一个完美的产品,软件测试的目的是在软件上线前尽可能早的发现更多的bug。那么这里我还想谈下为什么要尽早的发现bug。
以我们公司为例,一个bug的生命周期包括提交→确认→分配→设计→处理→申请发版→已发版→测试通过→关闭,一旦在回归测试过程中发现问题,那么会将这个BUG打回到确认状态再进行一次处理。这是时间的浪费,这是成本的增加。如果在设计及处理阶段就能把问题处理的干净利落,那么会省很多麻烦,而做到这一点可能就还需要在处理完成后添加单元测试,或者是Code Review,但是这样也会增加成本,并且对测试人员的要求能力更高,不然没法体现出这个位置的价值。没有单元测试或Code Review那就需要开发人员提高自测的质量了。
2.验收测试:验收测试包括alpha测试,beta测试,验收测试。我并没有这三种验收测试的理论概念,先来看下百度是怎么定义这三种测试的:
Alpha测试是由用户在开发环境下进行的测试,也可以是开发机构内部的用户在模拟实际操作环境下进行的测试。开发者坐在用户旁边,这是在开发者受控的环境下 进行的测试。由开发者随时记录下错误情况和使用中的问题并进行修改。
Beta测试是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试,它是在系统根本完成时进行的测试。开发者通常不在测试现场,这是在开发者无法控制的环境下进行的测试。由用户记录下遇到的所有问题,定期向开发者报告。beta测试是一模拟真实的使用环境从而发现缺陷的一种测试
验收测试是以用户为主的测试,软件开发和QA人员也应该参加,测试一般在用户所在地进行,由用户验证软件产品是否满足了所有的需求的一系列的验收测试工 作。仅限于做项目的公司,部门内部测试稳定后,根据合同中需求由发包商进行验收测试。验收测试的目的是为了以发现”未实现的需求”为目的,以评估”适合使用”为目标, 该类测试的不是以发现缺陷为主要目的。
我认为不同公司对于验收测试的方法是不一样的。以我们公司的项目为例:我们的验收测试一般分为两种,普通专题类验收测试和大型项目更新验收测试。当客户需要上线一个新功能(专题),当我们测试人员测试完毕,会提供给客户一个相对稳定的服务器环境进行测试,客户将问题直接反馈给测试人员,再由我们测试人员与开发沟通;大型项目更新换代测试的话,这个就需要客户驻场测试,来到我们公司进行验收测试,会直接与开发及我们测试进行沟通。结合实际工作来说,我们的验收测试并没有说很好的吻合这三种测试的哪一种,我认为这个要根据项目的实际需要来。alpha测试有点像我们外派测试人员,beta测试有点像我们的专题验收测试,而验收测试则与客户来我们公司进行驻场验收有点相像。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-25539-1.html
千千