软件测试的面试技巧

以下是博文学习网为大家整理的关于软件测试的面试技巧的文章,希望大家能够喜欢!

软件测试的面试技巧篇一:软件测试经典面试题总结

1、什么是兼容性测试?兼容性测试侧重哪些方面?

兼容测试:主要是检查软件在不同的软\硬件平台上是否可以正常的运行,即软件可移植性。

兼容的类型:细分为平台的兼容,网络兼容,数据库兼容,以及数据格式的兼容。

兼容测试的重点:对兼容环境的分析。通常,是在运行软件的环境不是很确定的情况下,才需要做兼容测试。 兼容和配置测试的区别:做配置测试通常不是Clean OS下做测试,而兼容测试多是在Clean OS的环境下做的。

2、我现在有个程序,发现在Windows上运行得很慢,怎么判别是程序存在问题还是软硬件系统存在问题?

1、检查系统是否有中毒的特征;

2、检查软件/硬件的配置是否符合软件的推荐标准;

3、确认当前的系统是否是独立,即没有对外提供什么消耗CPU资源的服务;

4、如果是C/S或者B/S结构的软件,需要检查是不是因为与服务器的连接有问题,或者访问有问题造成的;

5、在系统没有任何负载的情况下,查看性能监视器,确认应用程序对CPU/内存的访问情况。

3、测试的策略有哪些?

黑盒/白盒,静态/动态,手工/自动,冒烟测试,回归测试,公测(Beta测试的策略)

4、正交表测试用例设计方法的特点是什么?

1、用最少的实验覆盖最多的操作,测试用例设计很少,效率高,但是很复杂;

2、对于基本的验证功能,以及二次集成引起的缺陷,一般都能找出来;但是更深的缺陷,更复杂的缺陷,还是无能为力的;

3、具体的环境下,正交表一般都很难做的。大多数,只在系统测试的时候使用此方法。

5、描述使用bugzilla缺陷管理工具对软件缺陷(BUG)跟踪的管理的流程?标记

就是Bugzilla的状态转换图。

6、你觉得bugzilla在使用的过程中,有什么问题?标记

界面不稳定;

根据需要配置它的不同的部分,过程很烦琐。

流程控制上,安全性不好界定,很容易对他人的Bug进行误操作;

没有综合的评分指标,不好确认修复的优先级别。

7、描述测试用例设计的完整过程?

需求分析 + 需求变更的维护工作;

根据需求, 得出测试需求;

设计测试方案,评审测试方案;

方案评审通过后,设计测试用例,再对测试用例进行评审;

8、单元测试的策略有哪些?

逻辑覆盖、循环覆盖、同行评审、桌前检查、代码走查、代码评审、景泰数据流分析

9、LoadRunner分哪三部分?标记

用户动作设计;

场景设计;

测试数据分析;

10、LoadRunner进行测试的流程? 标记

1、 测试用例

2、 创建虚拟用户脚本

3、 创建运行场景

4、 运行测试脚本

5、 监视场景

6、 分析测试的结果

以上,最好是结合一个案例,根据以上流程来介绍。

11、什么是并发?在lordrunner中,如何进行并发的测试?集合点失败了会怎么样?标记

在同一时间点,支持多个不同的操作。

LoadRunner中提供IP伪装,集合点,配合虚拟用户的设计,以及在多台电脑上设置,可以比较好的模拟真实的并发。

集合点,即是多个用户在某个时刻,某个特定的环境下同时进行虚拟用户的操作的。集合点失败,则集合点的才操作就会取消,测试就不能进行。

12、使用QTP做功能测试,录制脚本的时候,要验证多个用户的登录情况/查询情况,如何操作?标记

分析用户登录的基本情况,得出一组数据,通过性测试/失败性测试的都有(根据TC来设计这些数据),然后录制登录的脚本,将关键的数据参数化,修改脚本,对代码进行加强,调试脚本。

13、QTP中的Action有什么作用?有几种?标记

Action的作用

? 用Action可以对步骤集进行分组

? 步骤重组,然后被整体调用

? 拥有自己的sheet

? 组合有相同需求的步骤,整体操作

? 具有独立的对象仓库

Action的种类

? 可复用Action

? 不可复用Action

? 外部Action

14、TestDirector有些什么功能,如何对软件测试过程进行管理?标记

需求管理

? 定义测试范围

? 定义需求树

? 描述需求树的功能点

测试计划

? 定义测试目标和测试策略。

? 分解应用程序,建立测试计划树。

? 确定每个功能点的测试方法。

? 将每个功能点连接到需求上,使测试计划覆盖全部的测试需求。

? 描述手工测试的测试步骤

? 指明需要进行自动测试的功能点

测试执行

? 定义测试集合。

? 为每个测试人员制定测试任务和测试日程安排。

? 运行自动测试。

缺陷跟踪

? 记录缺陷

? 查看新增缺陷,并确定哪些是需要修正的

? 相关技术人员修改缺陷

? 回归测试

? 分析缺陷统计图表,分析应用程序的开发质量。

15、你所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试??)?

Compatibility Testing(兼容性测试),测试软件是否和系统的其它与之交互的元素之间兼容,如:浏览器、操作系统、硬件等。验证测试对象在不同的软件和硬件配置中的运行情况。

Functional testing (功能测试),根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。

Performance testing(性能测试),评价一个产品或组件与性能需求是否符合的测试。包括负载测试、强度测试、数据库容量测试、基准测试等类型。

16、软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录?

1,硬件平台和操作系统

2,版本

3,bug编号

4,bug报告优先级

5,bug状态

6,发现人

7,提交人

8,提交日期

9,指定处理人

10,概述

11,从属关系

12,详细描述

13,严重程度

14,所属模块

要提交高质量的软件缺陷记录要参考需求及前期详细设计等前期文档,设计高效测试用例,然后执行用例,对发现问题要充分肯定,然后对外发布。

17、Beta测试与Alpha测试有什么区别?

Beta testing(β测试),测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场

Alpha testing (α测试),是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试

18、软件的评审一般由哪些人参加?其目的是什么?标记

在正式的会议上将软件项目的成果(包括各阶段的文档、产生的代码等)提交给用户、客户或有关部门人员对软件产品进行评审和批准。其目的是找出可能影响软件产品质量、开发过程、维护工作的适用性和环境方面的设计缺陷,并采取补救措施,以及找出在性能、安全性和经济方面的可能的改进。

人员:用户、客户或有关部门开发人员,测试人员,需求分析师都可以,就看处于评审那个阶段

19、阶段评审与项目评审有什么区别?标记

阶段评审 对项目各阶段评审:对阶段成果和工作

项目评审 对项目总体评审:对工作和产品

20、阐述工作版本的定义?

软件开发过程中,用于内部测试的功能和性能不完善的软件版本。工作版本既可以是系统的可操作版本,也可以是要在发布产品中演示的部分功能模块。

21、什么是桩模块?什么是驱动模块?

桩模块:被测模块调用模块

驱动模块 调用被测模块的模块

22、什么是扇入?什么是扇出?

扇入:被调次数,扇出:调其它模块数目

23、你认为做好测试计划工作的关键是什么?标记

软件测试计划就是在软件测试工作正式实施之前明确测试的对象,并且通过对资源、时间、风险、测试范围和预算等方面的综合分析和规划,保证有效的实施软件测试;

做好测试计划工作的关键 :目的,管理,规范

1. 明确测试的目标,增强测试计划的实用性

编写软件测试计划得重要目的就是使测试过程能够发现更多的软件缺陷,因此软件测试计划的价值取决于它对帮助管理测试项目,并且找出软件潜在的缺陷。因此,软件测试计划中的测试范围必须高度覆盖功能需求,测试方法必须切实可行,测试工具并且具有较高的实用性,便于使用,生成的测试结果直观、准确

2.坚持“5W”规则,明确内容与过程

“5W”规则指的是“What(做什么)”、“Why(为什么做)”、“When(何时做)”、“Where(在哪里)”、“How(如何做)”。利用“5W”规则创建软件测试计划,可以帮助测试团队理解测试的目的(Why),明确测试的范围和内容(What),确定测试的开始和结束日期(When),指出测试的方法和工具(How),给出测试文档和软件的存放位置(Where)。

3.采用评审和更新机制,保证测试计划满足实际需求

测试计划写作完成后,如果没有经过评审,直接发送给测试团队,测试计划内容的可能不准确或遗漏测试内容,或者软件需求变更引起测试范围的增减,而测试计划的内容没有及时更新,误导测试执行人员。

4. 分别创建测试计划与测试详细规格、测试用例

应把详细的测试技术指标包含到独立创建的测试详细规格文档,把用于指导测试小组执行测试过程的测试用例放到独立创建的测试用例文档或测试用例管理数据库中。测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。

24、你认为做好测试用例工作的关键是什么?

需求和设计文档的理解程度,对系统的熟悉程度

25、简述一下缺陷的生命周期?

提交->确认->分配->修复->验证->关闭

26、软件的安全性应从哪几个方面去测试?

用户认证机制:如数字证书、智能卡、双重认证、安全电子交易协议

加密机制

安全防护策略:如安全日志、入侵检测、隔离防护、漏洞扫描

数据备份与恢复手段:存储设备、存储优化、存储保护、存储管理

防病毒系统

27、软件配置管理工作开展的情况和认识?标记

软件配置管理贯穿于软件开发、测试活动的始终,覆盖了开发、测试活动的各个环节,它的重要作用之一就是要全面的管理保存各个配置项,监控各配置项的状态,并向项目经理及相关的人员报告,从而实现对软件过程的控制。

软件测试配置管理包括4个最基本的活动:

配置项标识

配置项控制

配置项状态报告

配置审计

软件配置管理通常借助工具来辅助,主要有MS SourceSafe、Rational ClearCase等

28、你觉得软件测试通过的标准应该是什么样的?

缺陷密度值达到客户的要求

29、引入测试管理的含义?标记

风险分析,进度控制、角色分配、质量控制

30、一套完整的测试应该由哪些阶段组成?

需求分析→测试计划→测试设计→测试环境搭建→测试执行→测试记录→缺陷管理→软件评估

31、集成测试也叫组装测试或者联合测试,请简述集成测试的主要内容?

(1)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;

(2)一个模块的功能是否会对另一个模块的功能产生不利的影响;

(3)各个子功能组合起来,能否达到预期要求的父功能;

(4)全局数据结构是否有问题;

(5)单个模块的误差累积起来,是否会放大,从而达到不能接受的程度。

32、简述集成测试与系统测试关系?

(1)集成测试的主要依据概要设计说明书,系统测试的主要依据是需求设计说明书;

(2)集成测试是系统模块的测试,系统测试是对整个系统的测试,包括相关的软硬件平台、网络以及相关外设的测试。

33、软件测试的文档测试应当贯穿于软件生命周期的全过程,其中用户文档是文档测试的重点。那么软件系统的用户文档包括哪些?

用户手册

安装和设置指导

联机帮助

指南、向导

样例、示例和模板

授权/注册登记表

最终用户许可协议

34、软件系统中除用户文档之外,文档测试还应该关注哪些文档?

开发文档

软件需求说明书

数据库设计说明书

概要设计说明书

详细设计说明书

可行性研究报告

管理文档

项目开发计划

测试计划

测试报告

开发进度月报

开发总结报告

35、简述软件系统中用户文档的测试要点?

(1)读者群。文档面向的读者定位要明确。对于初级用户、中级用户以及高级用户应该有不同的定位

(2)术语。文档中用到的术语要适用与定位的读者群,用法一致,标准定义与业界规范相吻合。

(3)正确性。测试中需检查所有信息是否真实正确,查找由于过期产品说明书和销售人员夸大事实而导致的错误。检查所有的目录、索引和章节引用是否已更新,尝试链接是否准确,产品支持电话、地址和邮政编码是否正确。

(4)完整性。对照软件界面检查是否有重要的分支没有描述到,甚至是否有整个大模块没有描述到。

(5)一致性。按照文档描述的操作执行后,检查软件返回的结果是否与文档描述(转 载于:www.hnNscy.CoM 博文学习网:软件测试的面试技巧)的相同。

(6)易用性。对关键步骤以粗体或背景色给用户以提示,合理的页面布局、适量的图表都可以给用户更高的易用性。需要注意的是文档要有助于用户排除错误。不但描述正确操作,也要描述错误处理办法。

软件测试的面试技巧篇二:软件测试工程师面试技巧

如何避免面试失败

面试是职业生涯发展中的重要一环

有不少来我这里面试软件测试工程师的朋友,对面试的重要性认识不清,特别是一些刚刚毕业的朋友,把面试看得形同儿戏。你要进入一家企业,就必须认真准备其安排的面试,而且需要引起高度重视。这里列举几个不好的行为:

(1)迟到或无故缺席

有不少大学生、研究生在学校里形成了拖拖拉拉的习惯,在跨入社会之际,没有意识到角色开始发生变化,仍然保持着其散漫的个性。比如:本来约好6月22日早晨10:30到的,到6月22日早晨10:40才电话通知面试人员临时有事去不了。本来是下午两点开始的面试,过了四点还不见人影,后来急匆匆跑过来解释说是导师找谈话,脱不开身,天知道,这些仁兄或义妹是不是午睡过了头。

这是在校学生;对于某些工程师,甚至是职场老鸟也会不小心犯这个错,本来约好下班以后7:00的面试,非得拖到8:30才见到人。不用问绝对是路上堵车,上班时间又不方便过不来,看来只能占面试官的下班时间了。天知道这么做有多么愚蠢。你既然是来面试的,就要知道面试官的重要性。你不可以动动脑筋吗?比如早点出来,打个出租车,实在不行就装病请半天假,这么做远比让面试官下班后专等您老人家来得明智。

(2)调整好心态

求职者来我这里面试,有时候就缺乏智慧和心态。我笑脸相迎,礼让有加,他/她却以为是来和我决战的,要在气势上高我一筹。我含蓄地指出回答中的不足,他/她却认为必须死撑到此,以永不认错为乐。还有一个妹子,我问了一些技术问题,没有答上来,就对我冷着脸,像要吃人。回到原单位还和她朋友说:“面试官是个矮胖子,脸上有青春痘,我懒得搭理他”。其实,脸上有痘子的矮胖子就和黄桥镇的老百姓差不多,对每个来面试的求职者都是很热心地支援的,只要有可能甚至愿意与之结交为朋友。而且,我也坚信,技术上有点问题也不是什么大不了的事情,学习就是了,难道还有什么知识是生而知之的。但如果是人的心态出现问题,就会很麻烦,会出现沟通不畅、合作不力、士气下降、文化野蛮等问题。而这恰恰是任何一个项目通往成功路上的死敌。

对于刚刚毕业、初入职场的朋友,我要多叮咛几句:要放弃那种视众生为刍犬的心态,要放弃那种自信得自负的气质,要用平和的心态,友善合作的态度,去和你对面的面试官谈话,真正地坦诚地交流。承认你还有一些问题不知道答案,这不可怕。可怕的是不懂装懂、一错到底的粗暴态度;可怕的是一揭短就暴跳如雷、冷若冰霜的神态。

(3)请关掉您的手机

切记切记:在您面试的时候,请关闭手机。

不要相信某些专家的歪招:面试的时候装着接听另一家单位的面试或录用通知可以显著提升你的价值。事实证明,这给面试官的心理打击是致命的;对您的形象的破坏也是深刻的。关掉它,可以让面对面的沟通更为友好更为温馨。好几次,有求职者对我说“对不起,我出去接个电话”,“对不起,请稍等一下”??

然后我尴尬地等他/她煲完电话粥回来。我相信:恐怕没有比这种等待更尴尬的。好在我是一个大度的人,但我不能保证所有的面试官都会有这样的耐心和宽容心。

关掉手机吧,特别是对于那些爱发短信的女孩子。在我的面试经历中,当我第一次碰到有应聘者当着我的面大发短信时,我觉得滑稽异常。要知道,这是在面试,是一件严肃的事情。退一百步,即使是一次平常的谈话,你也不希望你在讲话时对方正在忙与谈话毫不相干的事情吧?对于职场老鸟来讲,我相信你们不会犯这样的低级错误,但我还是忍不住嘀咕一句:决定您能否被录用的飞机马上就要起飞了,请您系好安全带,及时关闭手机。

接着简单谈谈面试过程中的气质问题、沟通问题及肢体语言。

第一个单元:面试过程中的气质问题

有很多大学毕业生到我这里来面试,不注重自己的气质。有些人表现得像是独行侠,神神秘秘,眼神游移不定,说话磕磕巴巴,衣服皱皱巴巴,个别的身上还有一股馊味、怪味。这其中也不乏技术尚可的人,但一谈到技术问题就像葛朗台临死前看到金币那样,两眼放出攫取的光芒,不停地说啊说啊,完全不顾面试官的表情和暗示,说得几乎都不肯停下来。技术好是好事,但如果到了那种如癫似狂、和雪山派“白自在”类似的地步,着实让人觉得可怕。这些来面试的人,如果落选,原因很简单,太不修边幅。

今年上半年,我们还从某管理软件学院招聘过学生来做初级测试工程师。但见个几个以后,实在是没有兴趣再轻易通知面试该院校的学生了。为什么呢?实在是气质差。第一眼看上去,精神很萎靡,有一股“痞”气(满脸横肉,目露凶光),其次就是肚子里头货存太少,古人说“腹有诗书气自华”,这些人连基本的英语句子都读不懂、说不出、写不来,那还能叫“大学生”吗?

有一个好的气质,是非常重要的,它能吸引你的面试官,让他眼前一亮。我清晰记得去年冬天见到的一位先生,也是刚刚从大学毕业,来应聘测试工程师,穿着很干净、很得体的西服,打着领带,举手投足间有一股自信、谦虚、专业的味道。这类求职者受到用人单位的青睐,自是情理中的事。不要说我“以气质取人”或“以貌取人”,事实上,很多单位的高层很明确的表示“往往从应聘者进来到坐下的10秒钟,就已经决定了这个人适合不适合企业的职位”。这些高层人物里面就包括前微软中国区总裁李开复先生。这短短的10秒,你能传递给别人的只有气质。锻炼你的气质,刻不容缓;锻炼你的气质,能你在职业生涯发展过程中独占鳌头。

第二个单元:面试过程中的沟通问题

沟通是一切团队工作最基本的内容,只要是与人相关的工作都会涉及沟通。沟通是极其重要的。有很多求职者,不知道怎么沟通,犯了不少错误,吃了不少亏。碰到好的面试官,可能会给你指点指点;碰到心冷一些的面试官,可能只会抛给你一句“回家等复试通知”,打发了事。

那么,如何进行沟通呢?我把沟通分为两个境界。第一境界是有效沟通;第二境界是有艺术性地沟通。对于求职者而言,重点要练习的是第一个境界。因为在面试过程中,我发现90%以上的求职者,都存在有效沟通(即第一境界)的问题。

阅读本文的读者可能会很不以为然或不信,这里且听我慢慢讲来。诸位肯定都学过中学政治,也参加过不少政治考试。一个比较典型的政治试卷包括“判断题、单选题、多选题、简答题、论述题和材料分析题”。你们都很清楚该怎么回答。如果有考生将“判断题答成材料分析题、单选题答成多选题、多选题答成单选

题、简答题答成论述题、论述题答成简答题”,恐怕大家都会埋怨他是糊涂蛋。既然这样,为什么面试的时候会出现类似荒唐可笑的回答呢?比如,面试官问:“请问你热爱软件测试这个行业吗?”这显然是一道判断题。面试官问:“请问你有多长时间的测试经验,一年,两年,还是更多?”这显然是一道单选题。面试官问:“请问一个规范的测试计划大致包括那些内容?”这显然是一道多选题或简答题。面试官问:“请你详细描述一下你在最近一个项目中的角色与职责。”这显然是一道论述题。如果面试官问:“如果你所在的团队有个团队成员经常迟到,作为这个团队的项目经理,你会怎么处理这件事情?”这显然是一道材料分析题。不同的题型怎么回答,政治老师都传授过秘籍。我这里不赘述。

以上讲的是第一步,有效沟通的第二步是学会倾听。不少面试者,性子特别急,根本不等面试官讲完,就打断对方,滔滔不绝地说自己的答案。这是很不礼貌的,也很容易领会错了面试官的问题。要耐着性子听,仔细地听,边听边思考,边组织答案,等面试官讲完了,你等上两秒,然后开口讲你的答案。这样效果就很好。为什么要不停地打断面试官,抢着发表你的观点呢?更不要像开机关枪一样,不做仔细思考,就无休无止,开口千言,离题万里。弄得面试官都不知道是他面试你还是你来考验他的耐性。

有效沟通的第三步,是恰当作答。在倾听的时候,要弄清楚别人问的是什么问题,属于什么类型的问题,组织那些内容作答。很多人回答没有条理性,逻辑混乱,问题就出在倾听阶段。他光听了,是听懂了,但没有脑子跟着转,没有在听的同时组织答案。结果到了恰当作答阶段就开口乱说,自以为说越多越好,自我感觉良好,其实面试官已经很讨厌了。有一次,我面试一个应聘者,问一个问题,问了三遍,他的答案才是和我的问题相关的。他滔滔不绝,每次都离题万里,弄得作为面试官的我很郁闷。好在我给他留了面子,有耐心听他讲完,再重述一下我的问题。但如果换一个人或许就是“今天的面试就到这里,请你回家等我们的电话通知。”

总体上来讲,面试官要问的问题包括这三种类型,一,你知道答案的;二,你不知道答案的;三,你只知道一部分答案,没有太多把握的。这三类问题如何问答,也是很有讲究的。比如面试官问“你能介绍一下你的优缺点吗?”这个问题属于第一类型且属于简答题。你要打好腹稿,注意好逻辑关系,不要只谈优点不谈缺点,也不要把缺点部分当成论述题大谈特谈。又比如面试官问“你能解释一下什么是Belady现象吗?”大部分人并不知道这个问题的答案。那你能否很有礼貌地回答:“对不起,我不知道这个问题的答案。如果贵公司需要我学与此相关知识,我将尽最大所能尽快去学会它,也希望能得到您的指导。”问题在于很多人即使不知道,也要胡乱凑一个答案给我,还言之凿凿。少部分人会选择沉默30秒到1分钟,才憨憨地挠头说“不会”。这些都是不好的沟通。又比如面试官问“Wiunner的检查点有哪几种类型?分别用于什么情况?”,这很可能是一道你只知道部分答案的题目。需要很有技巧地说“****,还包括其他一些类型的检查点,它们也应用得较为广泛。”或者说“对不起,这个问题我以前仔细学习过,现在印象有点不深刻了。我谈谈我能记起的,*******”。而不是说话断断续续,像挤牙膏那样,让人听着心像悬在空中。

以上我已经谈完了有效沟通的三个步骤,希望求职的朋友能参考。至于如何艺术性地沟通,这是另一个境界的,对于一些高阶职位至关重要,笔者将在“软件质量研究网”的培训班做仔细论述。

第三个单元:面试过程中的肢体语言

很多来求职的人,不会使用肢体语言,一见面就是点一下头,然后这个面试过程就是目光呆呆地盯在某处一动不动。直到最后离开,才略略说一个“再见”。这当然不算很坏的情况,但也算不上很Smart.一般情况下,如果你已在房间等待,面试官进入房间,应聘人员起身握个手,或者起身微笑,说一个“您好”,是很得体的,不要毫无表情地点一下头。这个是有点犯忌的。在面试过程中,你可以选择使用适当的eye

contact,也可以选择很平和地看着面试官或者面试官前面的桌子。不要像祥林嫂那样,“眼眶间或一轮,方知是个活物”,也不要像狐狸精那样,眼珠在眼眶里滴溜溜乱转。

在实际面试过程中,我还看到有些女孩子一见面试官就不停地笑,有时候还笑得很厉害,不知道什么事情这么可乐。我觉得微笑是比较合适的,笑得花枝乱颤让人觉得有点不愉快,得不到所问问题的答案,光听她笑了。此外,手势也是一个大问题。如果你不会,就不要打手势。没有手势也是很好的,有些应聘者,说起话来离题万里,还要边说边比划,整个一个张牙舞爪。

曾经有个来面试的小伙子比划比划着竟把饮水的纸杯给弄泼倒了,流了一个满桌,那个尴尬。笔者认为如果没有专门训练过手势,就没有必要用。手势贵在得当,从面试官到应聘者,没有一个人是聋子或者哑巴,不需要每说一句话都要比划一下。有些人认为外国人都喜欢说起话来张牙舞爪,笑起来肆意夸张,到外企来面试要入乡随俗。其实,没有这个必要,面试官不会因为你能像猩猩那样笑起来旁若无人就认为你适合外企。肢体语言要得体,这个是最重要的。关于肢体语言,笔者在面试过程中还遇到过很多个案,比如头抬得过高,比如乱晃二郎腿等等等等。因为不具有代表性,这里略过不提。

软件测试的面试技巧篇三:软件测试面试问题--个人

软件测试面试问题

1. 首先一般都是比较老套点的问题:介绍一下你的经历。

HOHO......这个问题我想谁都被问过吧,注意一下重点,不要紧张慢慢说就OK了。

2. 老套话说了就可以马上切入正题了。根据你的经验说说你对软件测试/质量保证的理解? 这个就要仁者见仁、智者见智了,也基本上都是书上的东东,如果能有一些自己独特的想法那就最好啦,呵呵

3. 理解完了那当然就要问一下是不是对软件测试了解啰。这就轮到问软件测试的流程是什么,你原先的公司又是怎么的流程了?

前面个问题也还是书本上的东西,一般介绍软测的书上都有,实际上国内一般的中小公司根本就达不到书上所说的那些个测试规范,测试流程也是如此,没办法,这就是现在我们整个大的测试环境,这个问题照着书上说的办就行了,后面那个知道该怎么做了吧,尽量把原来公司的测试流程言简意赅的表达出来。

4. 接着问题就可以有一大堆了,这些问题很多都是要看自己的测试经验以及对测试的理解来作答了,如:

(1) 你对SQA的职责和工作活动(如软件度量)的理解:

SQA就是独立于软件开发的项目组,通过对软件开发过程的监控,来保证软件的开发流程按照指定的CMM规程(如果有相应的CMM规程),对于不符合项及时提出建议和改进方案,必要是可以要高层经理汇报以求问题的解决。通过这样的途径来预防缺陷的引入,从而减少后期软件的维护成本。SQA主要的工作活动包括制定SQA工作计划,参与阶段产物的评审,进行过程质量、功能配置及物理配置的审计等;对项目开发过程中产生的数据进行度量等等;

(2) 说说你对软件配置管理的理解:

项目在开发的过程中要用相应的配置管理工具对配置项(包括各个阶段的产物)进行变更控制,配置管理的使用取决于项目规模和复杂性能及风险的水平。软件的规模越大,配置管理就显得越重要。还有在配置管理中,有一个很重要的概念,那就是基线,是在一定阶段各个配置项的组合,一个基线就提供了一个正式的标准,随后的工作便基于此标准,并且只有经过授权后才能变更这个标准。配置管理工具主要有CC,VSS,CVS等,偶只用过CVS,对其它的不熟悉

(3) 怎样写测试计划和测试用例:

简单点,测试计划里应有详细的测试策略(测试方法等),合理详尽的资源安排等,至于测试用例,那是依赖于需求(包括功能与非功能需求)是否细化到功能点,是否可测试等。

(4) 说说主流的软件工程思想(如CMM,CMMI,RUP,XP,PSP,TSP等)的大致情况以及你对它们的理解:

CMM:SW Capability Maturity Model 软件能力成熟度模型,其作用是用于软件过程的改进、评估及软件能力的评鉴

CMMI:Capability Maturity Model Integration 能力成熟度模型集成 CMMI融入了大部分最新的软件管理实践,同时弥补了SW-CMM模型中的缺陷

RUP:rational unified process 是软件工程化过程。它提供了在开发机构中分派任务和责

任的纪律化方法.它的目标是在可预见的日程和预算前提下确保满足最终用户需求的高质量产品,个人认为:它的核心观念是开发的迭代,每个公司可以根据自身的软件开发的流程和待开发项目的特点对RUP进行适当的剪裁,制定出符合自己的软件开发流程。

XP:extreme program,即极限编程的意思,适用于小型团队的软件开发,想上面第三个问题就可以结合原型法采用这样的开发流程。要明白测试对于xp开发的重要性,强调测试(重点是单元测试)先行的理念。编程可以明显提高代码的质量,持续集成对于快速定位问题很有好处。

PSP ,TSP 分别是个体软件过程(Personal Software Process),群组软件过程(Team Software Process)大家都知道,CMM只是告诉你怎么做但并没有告诉你如何做,所以PSP/TSP就是告诉你企业在实施CMM的过程中如何做,PSP强调建立个人技能(如何制定计划、控制质量及如何与其他人相互协作等等)而TSP着重于生产并交付高质量的软件产品(如何有效地规划和管理所面临的项目开发任务等等)

总之,单纯实施CMM,永远不能真正做到能力成熟度的升级,只有将实施CMM与实施PSP和TSP有机地结合起来,才能发挥最大的效力。因此,软件过程框架应该是CMM/PSP/TSP的有机集成。

(5) 对项目管理、白盒测试、单元测试、自动测试、性能测试、压力测试工具的了解程度和实际使用经验。(其实基本上也就是MI和Rational工具):

这个就要看个人的了,没法说了

(6) 其它一些具体的技术知识(如各种计算机语言的了解程度、数据库等);

5. 还有问一下你是怎样保证软件质量的,也就是说你觉得怎样才能最大限度地保证软件质量?

测试并不能够最大限度的保证软件的质量,软件的高质量是开发和设计出来的,而不是测试出来的,它不仅要通过对软件开发流程的监控,使得软件开发的各个阶段都要按照指定的规程进行,通过对各个阶段产物的评审,QA对流程的监控,对功能及配置的审计来达到开发的最优化。当然测试也是保证软件质量的一个重要方式,是软件质量保证工程的一个重要组成部分。

6. 然后紧接着就基于目前中国的国情,大多数公司的软件项目进度紧张、人员较少、需求文档根本没有或者很不规范,你认为在这种情况下怎样保证软件的质量?(大多数公司最想知道的就是在这种困难面前你该怎么保证软件的质量,因为这些公司一般就是这种情况-----既不想投入过多又想保证质量,faint )

出现以上的情况,如果仅仅想通过测试来提高软件质量,那几乎是不可能,原因是没有足够的时间让你去测试,少而不规范的文档导致测试需求无法细化何谈足够且有针对性进行测试。所以,作为公司质量保证的你应该先后项目经理确定符合项目本身最适合的软件生命周期模型(比如RUP的剪裁,原型法),明确项目的开发流程并督促项目组按照此流程开展工作,所有项目组成员(项目经理更加重要)都要制定出合理的工作计划,加强代码的单元测试,在客户既定的产品交付日期范围之内,进行产品的持续集成等等,如果时间允许可以再配合客户进行必要的系统功能测试。

7. 差不多了就该问一些只和软件测试相关的问题了,如:

(1) 你觉得怎样才能做一个(或者,怎样才能算一个)优秀的测试工程师?(faint,这个问题好像是必问的,答案也无非是什么要求全面的技术能力、缜密的逻辑思维、出色的沟通能力、还要有怀疑精神、幽默感、洞察力等等。啥叫优秀啊?该有的能力都有,不该有的也有,而且个个能力还都是出色的,这就是优秀,呵呵,开玩笑的,反正这个问题差不多就这样,具体的什么要求网络上也到处都有。

(2) 还有其它的如对自己优缺点的评价、自己的职业理想、为何离开上一家公司、自己在职业生涯中印象最深的事情、能否出差和加班、能否承受压力和挑战、薪水要求、何时能到岗等等这些啥面试都要回答的问题,这个就只能自己斟琢着办了。

(3) 另外还有一个重要的问题就是语言能力啦,尤其是英语水平,这个的话每个具体的公司都有不同的要求,也就没啥好说的了 。