深耕IT行业多年,我们发现,对于一个程序员而言,能去到一线互联网公司,会给我们以后的发展带来多大的影响。
很多人想说,这个我也知道,但是进大厂实在是太难了,简历投出去基本石沉大海,更不要说面试邀约了。
今天面试了个有3年经验的程序员,问他薪资标准,他一张口就是要21k,但是不可否认,他技术基础方面确实还不错,面试也表现的非常自信,顿时让在座的几个面试官都打起精神想要深入了解,果不其然,问到的自动化技术问题全部都能答上来,基础部分也是娓娓道来,完全难不倒他,接下来就是hr直接问他多久来上班...
果然人有能力就是不一样,在哪里都发光!!!
看看我们都问他了一些什么问题:
软件测试的目的是什么?
- 为了发现程序中的缺陷,保证软件质量。
- 满足用户需要
软件测试的一般流程是怎么样的?
- 项目立项后,参加需求评审
- 根据需求文档制定测试用例,然后进行用例评审
- 项目提测后,执行用例,问题记录cp4,及时有效的跟进问题的解决情况
- 测试环境测试通过后,产品进行验收测试
常见的测试类型有哪些?分别说明一下?
- 1.黑盒测试,即常说的功能测试
- 2.白盒测试,即单元测试,通常由开发来完成,对程序类和方法的测试
- 3.兼容性测试,主要是浏览器的兼容测试
- 4.集成测试,即各个模块的测试
- 5.系统测试,各模块测试完成后,对整个系统的完整性测试
- 6.回归测试
- 7.验收测试
解释下单元测试,集成测试,系统测试以及验收测试?
- 1.单元测试,通常由开发来完成,对程序类和方法的测试
- 2.集成测试,即各个模块的测试
- 3.系统测试,各模块测试完成后,对整个系统的完整性测试
- 4.验收测试,测试环境测试通过后,由产品或者用户进行验收测试,看看产品的实现,是不是满足了他们当初设计的需求
探索性测试是什么?应该怎么做?
在需求文档不完善或者压根没有需求文档的情况下,根据经验进行摸索尝试性进行的测试,是测试过程中形成的基本的思维性测试
什么是冒烟测试,如何有效的开展冒烟测试?
1.软件最基本的功能测试,通常由开发完成,只有冒烟点都通过的产品,交由测试,才会比较有意义 2.冒烟测试贯穿于测试的各个阶段,比如集成测试,系统测试等
一条高质量的缺陷记录(Bug)应该具有哪些内容?
- 1.记录bug产生的前提条件
- 2.产生bug的详细操作步骤
- 3.截图,直观的展示问题,有效帮助开发快速定位问题
缺陷的生命周期是怎样的?
1新建–提交–分配–修复–验证–验证通过关闭–验证不通过reopen
Alpha测试与Beta测试的区别?
- Alpha测试:把用户请到开发方的场所来测试,用户在模拟实际操作环境下进行的测试,由开发记录下用户反馈的问题
- beta测试:当开发和测试根本完成时所做的测试,很多不同的用户,在不同的环境下操作,然后用户把产生的问题,定期发给开发者,进行修复(开发不在现场)
- 通常现有alpha测试,后有bata测试
你认为做好软件测试应该具备哪些素质?
- 较好的技术能力
- 对业务逻辑的理解
- 良好的沟通能力
- 解决和分析事情的能力
作为测试人员,在与开发人员沟通过程中,如何有效的提高沟通效率和效果?
- 耐心的跟开发沟通,跟他阐述不过的重要性 说服他解决问题
- 充分尊重对方,哪怕再低级的bug都不要小看他
- 宽以待人,设身处地为他人着想 即使开发因为压力或者其他原因不肯合作 也要心平气和的跟他沟通 讨论bug的优先级
- 平时多跟开发沟通 无论是工作还是生活上的问题,但是测试一定要有自己的原则 对测试的产品质量负责
- 自己先定位问题 帮助开发缩小排查范围
你觉得软件测试工程师在一个团队中,都需要做什么?有什么价值?
- 在产品需求会上 可以站在用户的角度 提一些贴合用户需求的建议
- 测试阶段,根据自己对项目的了解和专业的测试技能 尽可能在项目上线前测出更多问题 保证产品质量
- 对测试过程中出现的问题 合理有效的进行风险评估。
- 对质量严格把关 测试不通过的 一定不能发布生产
你对软件测试最大的兴趣是什么?
- 行业前景比较好,而且近些年 越来越多企业更注重测试
- 测试时间越久 面临的困难和挑战也越多,解决问题的同时 也提高了自身的能力
- 自己的性格比较外向开朗 很容易跟产品和开发沟通 做起事情可以事半功倍
你对自己的职业规划是什么?
先做高级测试 有机会的话,想往管理方向发展,目前在携程做测试组长,也为以后管理做储备
在你以往的工作中,发现的影响大或印象深刻的Bug是什么?为什么?
印象深刻的bug:近期的一个项目,x发单n是发qmq消息,调用发单服务自动发单,测试过程中,我给开发提议加个手动发单–作为发单失败或者未发单的补偿,开发力争 生产不会出现发单失败的情况,但后来还是被我说服,在上线前,加个手动发单的功能。 上线第二天,公司qmq框架出现问题,产生消息消费的延迟,导致一段时间内的订单不能自动发单,这时候大家手动发单,解决部分订单,事情过后,开发更加肯定了 我当时的提的bug修复是正确的
在你以往的经历中,解决过的最困难的问题是什么?
环境问题,是所有测试人员都面临的一个难题;解决的那么多问题中,测试环境无法使用,无法快速的介入测试,仍然是比较突出的。曾经把一个长久未使用的环境,根据经验和clog定位,各个服务之间的调用,一步步完成调通
在你以往的工作或学习中,你最大的收获是什么?学到了什么?
- 业务的积累
- 通过各种自动化,如UI自动化,job自动化,api自动化,不仅提升了自己编码能力,也在每周的常规发布中,起到举足轻重的作用
- 长期的测试过程中,提升了自己解决问题的能力
在没有任何文档的情况下,你如何开展测试?
- 尽量的去获取其他的文档吧,比如开发的一 些设计文档—概要设计、功能设计、详细设计
- 尝试从网上找类似的项目文档,如果幸运,可以从公司的资料库找到类似的文档
- 按照开发的接口或者设计文档,按照功能模块划分,大致写一些用例,然后进行摸索测试,在测试过程中逐渐完善自己的用例
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取