下面是小编整理的软件测试工程师面试技巧(共含8篇),欢迎大家阅读借鉴,并有积极分享。同时,但愿您也能像本文投稿人“六芒星”一样,积极向本站投稿分享好文章。
一、什么是软件测试?
IEEE中是这样描述的:使用人工或自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。
二、我们怎么开展软件测试呢?
现代软件测试活动一般包括以下内容:
制定测试计划。
设计测试用例。
实施测试。
提交缺陷报告。
测试总结。
三、为什么要开展软件测试呢?
首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程的缺陷,以便及时改进。同时,这种分析也能帮助测试人员设计出游针对性的测试方法,改善测试的效率和有效性。
其次,没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法。
简单地说,测试的根本目的就是确保最终交给客户的产品符合用户的需求,在产品交给用户之前尽可能多地发现并改正错误。
四、软件测试要达到什么目标呢?
软件测试一般要达到下列目标:
确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说明。
确保产品满足性能和效率的要求。使用起来系统运行效率低、用户界面不友好,用户操作部方便的产品不能说是一个有竞争力的产品。用户最关心的不是产品的技术有多先进,而是他能从这些技术中得到多少好处,使用是否得心应手。
确保产品是健壮的和适应用户环境的。健壮性即稳定性,是产品质量的基本要求。
五、测试和调试有什么不同?
测试调试
发现软件的错误(是否满足用户需求) 确定程序中可疑错误的原因和确切位置,对程序(设计或编号)进行修改,排除错误
贯穿整个软件生命周期(很多公司只在编码后期才进行测试) 主要在开发阶段
由测试人员和程序员参与程序员参与
可见,有些人认为测试和调试时一码事是错误的,实际上测试与调试有着本质的区别。简单地说,测试的主要工作是找缺陷,而调试的目的是解决缺陷。具体地讲,软件测试时在进行成功的软件调试后才开始进行的。
六、怎样才能成为一个优秀的测试工程师?
一个优秀的测试工程师必须具备的素质如下:
1、很强的责任心
2、良好的沟通能力
3、团队合作精神
4、耐心、细心、信心
5、时时保持怀疑态度,并且有缺陷防护意识
6、具备一定的编程经验
软件测试工程师面试分享
到达面试地点,面试官很友好的领我去了会议室,坐下自我介绍的同时,也就开始了正式的面试,这场面试我很开心,不是因为没有面试算法,而是这位面试官不仅仅在于面试,更多的是聊简历中写出来的内容,都是自己做过的,要说起来,自然顺畅得多,而遇到不懂的内容,他会很善意的给出引导,我所要做的,无非就是顺着他的引导拓展自己的思维,之后给出他想要我思考的内容的答案,这种方式的面试,对我来说,其实相对还是比较游刃有余的,毕竟不管做什么,我最喜欢的就是有人稍微提点一下,以至于我不容易走偏,
面试过程中,首先问我工作中怎么开展某项测试,这里他问的是兼容性,会考虑到哪几个方面,对于Web或者win32之间兼容性的考虑点的区别,对于兼容性测试与其他测试的区别,在做兼容性测试的时候,遇到最大的困难是什么?对于这个问题的回答他可能不是很满意,我说,兼容性测试中遇到最大的困难是跨平台遇到问题该如何找到问题所在,他说这个其实和其他的测试也一样,当你发现问题的时候,你必须排除是系统问题,是配置问题还是产品本身问题,所以他示意我再想想,我稍作沉思,告诉他,我之前在兼容性测试的过程中主要测试的是产品的补丁包,所以最大的困难是补丁包对向下兼容的问题,他似乎稍微满意了一些,微微笑了笑。
紧接着,看到我在简历中写出了对项目管理有一定的理解,于是话题转变到了项目管理上,先问了我自己如何对自己进行管理的,诸如一堆的tasks在手上,你会怎么安排?然后问,如果你手上有一个P1的task,但是这个task需要等某人完成一定的`操作后你才能进行你的工作,不过,这个task在那个人手里是P3,这时候你该怎么办?最后问如果你是test leader,你的team members的手上已经有很多任务了,但是你又接到了更多的任务,你该怎么做分配?其实无非是考虑如何有效完成所有的任务,说实话,我不知道这些问题的答案是不是有哪本书会教大家怎么做,也不知道这些问题是不是有唯一的答案,我只是凭着自己对任务安排的理解在做资源的协调和分配,
紧接着,也不知道是不是还算管理的问题,反正与测试有关,他先给我描述了一个三层结构的系统,让我从test scope的角度去描述应该怎么测, 由于描述了三层的结构,我第一反应可能和代码逻辑有关,结果他反问我,你觉得代码方面的测试是开发做还是测试做,我不是十分明确,但还是给了他肯定的答案,开发做,于是他点了点头,说,那你现在可以撇开谁做这样的底层思维,继续向上一层思考这个问题,这个时候我才知道他在问什么,其实他想听到的答案是系统测试,集成测试等等宽泛而抽象的顶层概念,回答完后,又一一引导我分别对这些测试测什么做了提问,可以说,每个问题我都会选择沉思一下再做回答,沉思的时候可能脑子一片空白,但其实也是在努力搜寻头脑里的埋藏的知识。
在接下来的继续细化提问前,他一再问了关于数据库的知识,诸如同样要查询一个表的其中几个字段,视图和存储过程如何做出选择,视图、存储过程和方法呢?说真的,其实就是在考这几个的区别,但是我真的已经遗忘了。ok,继续细化测试,对于数据库层如何测试,对于logic层如何测试,对于呈现层又如何进行测试。其中,问数据库层如何测试的时候,我回答得最为完善,但是也可以说是没有思考完全,因为他提问了这么一个问题:现在我们要部署这个系统,用批处理的方式写代码去部署,
我最初参加测试工作的时候,不知道什么是软件测试,集成测试和系统测试的概念经常混淆, cmm 是什么就更加不知道了。那时候最简单的开关机也是通过直接拔插电源完成,安装系统对我来说简直是有史以来人类的最高技能,对于那些拿着螺丝刀安装机器的人就认为是宇内超级高手,身具杀人于无形之绝世秘技。拿破仑说不想当将军的士兵不是好士兵,我最初的梦想就是想成为软件测试的高手,傲视天下。所以不断偷师,总结经验,自认为掌握了成为高手的几个秘技,这几年混迹 江湖 还算无往而不利。不敢独享,望与吾辈测试人员切磋,早日总结成功密技之大成,助新进人员早日入门,也算不愧对东北活雷锋的称号。
什么类型的文件,您需要,还是测试过程质量呢?
2.你有在测试计划吗?
3.你还记得描述任何错误.
4.什么是测试的目的吗?
5.你喜欢什么(不像)在这里工作吗?
6.质量保证是什么?
7.QA之间的区别是什么和测试吗?
8.你怎么范围、组织和执行测试项目吗?
9.什么是作用在开发项目?
10.什么是作用在一家生产质量软件吗?
11.确定质量,因为我现在和你了解它
12.跟我描述一下确认和验证之间的区别.
13.跟我描述一下你所看到的过程.没有一个特定的过程中,就有一个进程的基础.
14.当你跟我描述一下会考虑采用故障模式及效益分析.
15.跟我描述一下这个软件开发生命周期时你应该给它下定义.
16.是什么性质的一个良好的要求吗?
17.你如何划分角色的质量保证经理和项目经理吗?
18.告诉我关于你的任何质量监督和实施所作的努力.描述您所面临的一些挑战,并说明你是如何克服它们.
19.你怎么对付环境质量变化的努力有敌意吗?
20.一般来说,你如何看待整个过程自动化不适合的测试吗?
21.你如何促进理念相遏制和缺陷预防?
22.如果你来,给我一个通用的想法是在你第一次全面的任务将会作为启动一个质量的努力.
23.什么类型的测试你做了什么?
24.你曾经创造了一种测试计划吗?
25.你有没有写测试用例,还是你只是执行那些由别人吗?
26.你的你的测试用例吗?
27.你如何确定测试吗?
28.你如何决定什么时候你有足够的测试吗?”
29.你如何测试.如果你有轻微或没有文件?
30.描述我的基本要素,你将在一个缺陷报告吗?
31.你如何进行回归测试吗?
32.在生命周期阶段的开始做测试,你自己的看法?
33.你怎么对你的测试结果吗?你尝试哪些度量提供吗?
34.你无法意识到测试所有的东西你怎么决定先考试吗?
35.你从哪里获得你所期望的结果?
36.如果自动-你决定什么自动化和按照什么顺序?
37.在过去的日子里,我已经被要求口头开始制定出试验计划,例如一个共同的情况.面试官可能会说:“想,如果你大声的任务是测试ATM,也许你测试计划包括物品吗?”这类型的问题不是命中注定的答复,但这是一个很好的途径去看看你的面试官完成这项任务.
[软件测试工程师面试宝典]
一.简答题.
1.避免死锁的方法有哪些?
2.在 Sybase 数据库中注册用户与数据库用户有什么区别?
3.在 MS SQL_Server 数据库中通过什么约束保证数据库的实体完整性
4.内存有哪几种存储组织结构.
请分别加以说明 软件开发网 www.mscto.com
5.JAVA 中的 Wait 和 notify()方法使用时应注意些什么?
6.用户输入一个整数.系统判断,并输出是负数还是非负数,请设计测试用例.
7.操作系统中的同步和互诉解决了什么问题
8.UNIX 中 init
二.编写类 String 的构造函数,析构函数和赋值函数
已知类 String 的原型为
class string
{
public:
string(const char *str=null);//普通构造函数
string(const string &other);//拷贝构造函数
---string(void);
string &operate=(const string &other);//赋值函数
private:
char * m-data;//用于保存字符串
};
请编写 string 的上述 4 个函数
三.有关内存的思考题
1.void getmemory(char *p)
{ p=(char*)mallol(100);}
void test(void)
软件公司面试题
面试题目
1.白箱测试和黑箱测试是什么?什么是回归测试?
2.单元测试、集成测试、系统测试的侧重点是什么?
3.设计用例的方法、依据有那些?
4.一个测试工程师应具备那些素质和技能?
5.集成测试通常都有那些策略?
6.你用过的测试工具的主要功能、性能及其他?
7.一个缺陷测试报告的组成
8.基于 WEB 信息管理系统测试时应考虑的因素有哪些?
9.软件本地化测试比功能测试都有哪些方面需要注意?
10.软件测试项目从什么时候开始,?为什么?
11.需求测试注意事项有哪些?
12.简述一下缺陷的生命周期
13.测试分析测试用例注意(事项)?
笔试题
1.一台计算机的 IP 是 192.168.10.71 子网掩码 255.255.255.64 与 192.168.10.201 是同一局域网吗?
2.internet 中 e-mail 协仪,IE 的协仪,NAT 是什么,有什么好处,能带来什么问题?DNS 是什么,它是如何工作的?
3.PROXY 是如何工作的?
4.win2k 系统内 AT 命令完成什么功能,Messenger 服务是做什么,怎么使用?
5 进程,线程的定义及区别
6,32 位操作系统内,1 进程地址空间多大,进程空间与物理内存有什么关系?
7 网络攻击常用的手段,防火墙如何保证安全.
8 如何配静态 IP,如何测网络内 2 台计算机通不通,PING 一次返几个数据包?
9WIN9X 与 WINNT 以上操作系统有“服务”吗,服务是什么,如何停止服务?
10 AD 在 WIN2KSERVER 上建需什么文件格式,AD 是什么?XP 多用户下“注销”与“切换”的区别.
11UDP 可以跨网段发送吗?
12 最简单的确认远程计算机(win2K 以上)某个监听端口是正常建立的?
13 软件测试的定义,测试工作是枯燥反复的,你是如何理解的?黑盒,白盒,回归,压力测试的定义.
14winrunner,loadrunner 是什么,区别
15 磁盘分区如何分类,请举例说明安装操作系统的注意事项.
I’m Cheers.Lee, I’m twenty-six year old, I majored in E-business and with a bachelor degree. I’m single. And I love software testing, as the software quality is vital to the company’s customer, it also could improve the company’s image, so quality is the best policy. We must devote all my energy to assure the software quality.
The position which I’ve come to apply is senior software testing engineer. I have three years work experience, one year and a half of function testing experience and one year of performance and automation testing experience. I have been reading up on software testing, especially on performance testing and automation testing. I’m quite familiar with performance testing tool LoadRunner, and familiar with automation testing tool QTP. I’m good at developing performance testing script base on C language in web system, and also have good skills in develop QTP script.
As we all know that software performance has become more and more important, while thousands of the users log in the system or visit the website simultaneously, the problem may occurred, the system crash or the server deny to provide the service to the user, so the performance testing need to be done before the software delivered to our customers.
We also benefit from the automation testing. There is always a lot of function testing or regression testing need us to finish in a short time. But we do not have enough time and sufficient human resource to complete it, how should we do? So the automation testing is the best solution. It cut down the costs, improve the work efficiency, save our time and energy. Its advantage is not merely as so.
软件工程师的面试技巧
本来对悲剧的笔试,已不抱任何希望,没想到前天居然收到面试的通知,22号下午3点,提前10分钟到,
这些天都在准备,网上看各种资料,简历也很有针对性的做了修改,连《软件测试》的书都看了又看,只为这次面试。
下午2点10分出门,等了一会才打到的,急死,然后那车一路堵的,真服了武汉的交通,在14:45的时候终于堵到目的地。
直接开始面试,让做个5分钟的面试自我介绍,我擦,不都是1分钟左右的吧,亏我把自我介绍准备的那么精简,一下又紧张了,结结巴巴,说了句:不好意思,有点紧张。然后还是继续自我介绍。
完了他问我编程一般是用C++还是JAVA,我说在学校课程安排,C++是选修,JAVA是必修,所以是JAVA,但是在学校学习基本都是为了考试,所以没有常用,不太熟练。
然后他看成绩单问我比较拿手的是哪门课。我想想,线代应该是最高的了,然后他说我还是对数学比较感兴趣,然后问我数学题。
“已知2个质数之间只有1个非质数,我说这数能被6整除,你觉得对吗?”
我列了下,2357 然后我说35之间是4,不能被6整除。
然后他补充,那么“已知2个质数之间只有1个非质数,大于6的,我说这数能被6整除,你觉得对吗?”
我看了下规律,说应该是对的,他让我证明,
我勒个擦,脑子锈了,怎么当时没想出来,虽然知道是从2.3入手。
然后他拿出一张纸问我,说我想把这纸撕成大于64份,至少要撕多少次。
2的6次方式64,但是这样的场合这种面试问题肯定是陷阱,但是一下脑子还是没转过来,犹豫地说了7次,然后他说,今天面试就到这里了……
我哭,顿时绝望。
出门,
我擦,就这么结束了么,郁闷
下电梯,到1楼,门开了,突然想起来了,如何证明是6的.倍数。
回去?不回去肯定没希望了,回!
进电梯,上楼,敲门,他很诧异的看着我,
我说我刚下电梯就想到怎么证明了,可以现在说下嘛,
然后他让我证明了。
没有后续的面试,只有再走呗,虽然做了一题,但是还是没什么希望,而且是考试时间已过的答卷,依旧悲剧。
下电梯出门,64份,2的6次方,绝对是陷阱,要少于7次,那么至少要把一张纸一次撕成3份。
1次撕成3份?! 擦,就这么简单??
回头看看,已经走出酒店很远了……
再回去?…可是刚刚已经跑回去一次了,现在又回去一次,是不是不太好?
不回去?肯定没戏了…… 回!
快速跑回去,上楼,敲门,还是那人开门(面试官有2个),这次看到我貌似他都呆了……
我说那个撕纸的问题,我可以补充下嘛…他犹豫了下,说还好现在没人,你进来吧。
我快速说出了自己的详细思路,