从事Python自动化测试,30岁熬到月薪20K+,分享我的多年面试经…

news2024/9/27 12:06:19

年少不懂面试经,读懂已是测试人。

大家好,我是小码哥,一名历经沧桑,看透互联网行业百态的测试从业者,经过数年的勤学苦练,精钻深研究,终于从初出茅庐的职场新手成长为现在的测试老鸟,早已看透了面试官的种种套路,更是看尽了求职者的措手不及,既有尔虞我诈又有惺惺相惜……

蓦然回首,许多年前,我也是另一个求职者。故将我的面试经验分享给你们,希望每一个看过这篇文章的朋友都可以过五关斩六将,镇定自若,信心满满地应对面试!

本文行文结构如下所示哈,来看一下: 

面试软件测试、你需要知道哪些?

初级功能测试面试中,常见面试问题分析?

初级VS中高级测试工程师,对于技能要求有什么不同?

与其瞎忙活,不如跟着大牛学学方法

自动化测试资源免费分享

面试软件测试、你需要知道哪些?

常言道:知彼知己,百战不殆。那么对于面试软件测试中,我们需要知道哪些方面,才是我们制胜的法宝。

1、简历的重要性

首先,对于简历上提到的任何技术点,作为应试人员,都应该非常了解,因为这是面试官针对性发问的首选。即使不能够非常清楚地阐述其原理,但是在应用层面,至少应该可以清晰地说出在工作中的用途,并且可以简洁地描述出在自己项目中的应用情况。比如,在自己参与的项目中,采用了什么样的测试架构,如果是自动化,那么基于怎样的平台,有哪些工具,完成了怎样的功能。

换句话说,也就是所有写在简历里的项目,作为应聘者的你,都应该就此可以侃侃而谈,而不是看着什么热点就随便写一些上去。那样的简历虽然看着很好看,但是实际上到处都是漏洞,经不起推敲发问。

同样的,在自我介绍阶段,面试官也会对于面试者的表达,有重点地进行筛选发问,这一段自我介绍的准备和注意点,与准备简历是相通乃至相同的。

2、职位技术要求

其次,在面试之前,对于所应聘的职位应该有所了解。针对岗位的职责和要求,来进行有侧重的准备,包括简历和面试。软件测试的内容也并不仅仅是测试软件那么简单,而对于所有相关的方面,都应该有所了解。

如果是手工测试,那么测试用例设计和测试思路就是非常普遍的考察点。如果是自动化测试,那么对于自动化测试工具的掌握甚至部分代码能力的考验,就是必须的了。

在当前的软件行业里,敏捷甚至DevOps都已经成为了业内标准,那么对于这个架构下的相关背景知识,是完全需要有很清晰的了解和熟练掌握的。从测试的角度来谈有关敏捷的话题,会让你加分不少。

3、选择适合的岗位

第三,面试并不是一个选拔性的考试,不是择优录取,而是选择合适当前岗位的人选。所以,如果是一个初级测试工程师,应聘测试专家很难成功可以理解。那么反过来,一个具有丰富经验的资深测试工程师,应聘初中级测试工程师的岗位时,成功的可能性也并不大。所以面试也并不是一个越厉害就越可以通吃的场合。不管如何,合适最重要。

4、面试官的决定权

最后,面试官的身份也有一定的决定权。很多公司的第一轮面试会和HR筛选简历进行结合。所以面试往往就是技术人员的面试,而面试官的身份或者背景也会对面试的结果产生重大影响。

一个开发出身的测试面试官,往往会从本身的工作经验及内容出发,可能会更多会在编程语言的细节和自动化脚本的编写方面进行发问和了解,对于测试理论可能涉及到的不多。而资深的面试官,往往询问的会比较全面。这个就要看在面试过程中,面试官关注的角度进行分析,来有针对性的回答。

初级功能测试面试中,常见面试问题分析?

初级的功能测试工程师,往往是软件测试行业的初窥门径者。这就意味着他们对于软件测试理论和测试思想不可能有非常深入和广泛的了解,那么作为初级人员,在面试中往往会遇到怎样的场景呢?

其实,这种场景也往往意味着面试官的水准也非常重要。此时的面试官可能更多会注意到在测试工作中,面试者是否满足最基本的工作要求,而不是达到怎样的工作技能等级。

面试常见问题(一):

“请你简单介绍一下你自己和参与的项目”,“你从参与的项目中都有哪些收获”……类似这样的问题,是面试官试图通过面试者的自我描述,来确定面试者在项目中的角色和责任,以及具备怎样的工作能力,是否具有上升的空间。

√如何回答?

这个时候,对于面试者自身的情况介绍,一定要避免夸夸其谈,涉及高深或层级较高的技术点。因为一个初级测试工程师,是不可能深度参与或者管理一个项目的,那么在个人介绍中,就要着重说明自己在项目中的工作内容,以及对于工作的理解。

表现出自己应有的位置,当然,如果你真的是非常了解测试的技术要点,只是工作经验欠缺,那么你需要的只是项目经验和锻炼,那么你就可以把自己所了解和掌握的内容与当前的工作内容结合起来,有一说一,这样面试官就不会产生你是在言之无物的印象。

面试常见问题(二):

“我们假设有这样一个问题……,以你的角度来看,你会怎么做?”,“这里有一个项目……,如果让你来设计测试用例,你会怎样安排,思路是怎样的”,这一类的问题,主要是考察测试工程师的测试分析能力以及测试用例的编写能力。

√如何回答?

这在软件测试工程师中,是非常基础的能力,也是很见基本功的方面。不要小看这种基础问题,想要进阶,这些基础能力必须非常扎实。

在此时,你需要的就是将这个问题当作一个项目,按照流程有条理地进行阐述,充分暴露自己的思维过程。

面试常见问题(三):

“你对XX了解多少,谈谈自己的认识”,这样的问题是用来考察面试者的视野是否仅仅局限在工作本身。

√如何回答?

俗话说“不想当厨子的司机不是好木匠(划掉),”是“不想当将军的士兵不是好士兵”。那么,对于一些当前较热门甚至前沿的技术或框架,作为初级测试工程师,如果对此有涉猎乃至研究,有自己的看法,那么对于自己将来的成长是很有助益的。企业也是很乐意培养这样有潜质的员工。

对于这类的问题,作为初级从业人员,就需要平时的积累和沉淀,对于行业的发展要有自己的总结和见解。

初级VS中高级测试工程师,对于技能要求有什么不同?

初级和中高级测试工程师,在测试工程师本身来看,可能更多是侧重于测试能力和经验的差距。

而实际上在企业中,对于初级测试工程师来说,往往更多的是安排测试用例执行,或者较为基础和简单的功能测试。而具备了用例设计和测试计划能力的,就可以进阶为中级测试工程师。具备了自动化测试能力,对于测试理论有了深入了解,对测试工作有自己的见解,就可以归为高级测试工程师了。

我们从以上的一种划分标准来看,除了对于测试技能和测试领域的覆盖,对于测试工作是否能够从理论上的角度来进行分析和掌握,是区别初级中高级测试工程师的一个分水岭。

初中高级测试工程师的技能要求关系,可以由下图来表示:

或者我们可以理解为,工匠和大师的差别,简单来说就是从Executer到Designer的区别。简单的执行是工作的基础,而涉及到通过测试理论和测试思想来进行顶层设计,则是整个测试工作的上层建筑。

这就可以梳理出一条相对清晰的路径:

①从初级人员开始,测试用例的执行,将作为整个工作的基线贯穿始终。可能对初级的测试工程师来说,不管是手工测试还是自动化测试,执行测试用例的能力是必须的。

②而到中级测试工程师开始,随着对于工作的理解和自身经验的积累,具备了一定的设计和规划能力,则是中级测试有别于初级测试的标志,而此时的工作内容也会加入一定的设计和规划。

③而要想进阶高级测试工程师,除了技能上的全面掌握,对于偏顶层的测试架构也要有所掌握,而这个掌握的基础就是对测试理论和测试思维的深入了解与熟练掌握。

道理谁都懂,但很多人不知道如何去提升技术?如何去拼?

与其瞎忙活,不如跟着大牛学学方法

作为一名成功的面试官,问的每一个问题都是有目的的,不会瞎忙活,仅仅通过几个问题他们就可以看穿每一个求职者的条件,软件测试行业是招合适的而并非牛X的,但相同岗位薪资达标的情况下必然会选择牛X的。见招拆招才能一招致胜,offer拿到手抽筋,一点都不夸张。

我见过很多拼命的同事,这个也学,那个也看,学习资料收集了一大堆,到头来不过是在“用战术上的勤奋,掩盖战略上的懒惰”,结果依然无法在测试项目中一显身手。在竞争力如此之大的时代,等待的只有被新人超越,被企业淘汰。

公司大佬常说:“这个时代拼的人很多,会拼的人却很少!我们不能盲目焦虑,一定要掌握方法,提升技能,实战与技术相结合!”

工欲善其用,必先利其器。

“赠人玫瑰手留余香”!我也想做你们测试发展道路上的人生导师,把我的经验分享给大家,帮你们更好的突破自己,提高自己!如果文章对你有帮助,记得点赞,收藏,加关注。会不定期分享一些干货哦......

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源免费分享~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/366975.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

nodejs/eggjs如何使用第三方pure esm lib

问题Instead change the require of index.js in xxx/app/ws/index.ts to a dynamic import() which is available in all CommonJS modules.上述错误发生在我使用import引入一个第三方包的时候提示的,至于原因,主要是node当前仅支持cjs,而目…

TCP的三握四挥

本文是向大家介绍tcp的三次握手四次挥手的全过程,能够让我们更熟悉面向连接的传输层控制协议的原理,保证了数据传输的稳定性和可靠性。如果我们把网络体系按照OSI模型划分,那么不论是从上往下还是从下往上数,处于最中间的都是传输…

复赛名单公布!2022隐私计算HACKATHON大赛火热进行中!

开放隐私计算开放隐私计算开放隐私计算OpenMPC是国内第一个且影响力最大的隐私计算开放社区。社区秉承开放共享的精神,专注于隐私计算行业的研究与布道。社区致力于隐私计算技术的传播,愿成为中国 “隐私计算最后一公里的服务区”。183篇原创内容公众号O…

Python+Qt生日提醒

PythonQt生日提醒如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01;前言这篇博客针对<<PythonQt生日提醒>>编写代码&#xff0c;代码整洁&#xff0c;规则&#xff0c;易读。 学习与应用推荐首选。文章目…

在k8s集群部署ELK

使用kubeadm或者其他方式部署一套k8s集群。 在k8s集群创建一个namespace&#xff1a;halashow 2 ELK部署架构 3.1 准备资源配置清单 Deployment中存在一个es的业务容器&#xff0c;和一个init容器&#xff0c;init容器主要是配置vm.max_map_count262144。 service暴露了9200…

MSP430F2132IRHBR功能框图TPS259824LNRGER电路保护和电源管理解决方案芯片

概述&#xff1a;MSP430F21x2 16位超低功耗微控制器 (MCU) 是MSP430系列微控制器的一部分。这些MCU采用一种架构&#xff0c;加上5种低功耗模式&#xff0c;能在便携式测量应用中延长电池的使用寿命。这些器件具有一个强大的16位 RISC CPU、16位寄存器和用于获得最大编码效率的…

Springboot整合mybatis并接收前端数据

mybatis之前记录过了。本以为可以快乐的开发项目&#xff0c;但是没想到在springboot中使用mybatis还不一样&#xff0c;那么我就在这里记录一下。 请注意&#xff0c;sprngboot中使用的mybatis是专门为springboot设计的&#xff0c;单独引用依赖的话需要在springboot找到如下…

Java性能分析

0、问题代码&#xff1a; 代码问题其实很明显&#xff0c;但是这里主要是为了练习如何使用工具进行分析 所以最好先不要看代码&#xff0c;假装不知道程序逻辑&#xff0c;而是先通过工具去分析&#xff0c;再结合分析数据去看代码&#xff0c;从而推出问题点在哪 import jav…

代码随想录NO50 |动态规划_leetcode 392.判断子序列 115.不同的子序列

动态规划_leetcode 392.判断子序列 115.不同的子序列今天继续子序列&#xff01; 392.判断子序列 确定dp数组&#xff08;dp table&#xff09;以及下标的含义 dp[i][j] 表示以下标i-1为结尾的字符串s&#xff0c;和以下标j-1为结尾的字符串t&#xff0c;相同子序列的长度为dp…

靠谱的动漫绘画培训班国内有哪些

动漫绘画培训班有哪些&#xff0c;今天给大家带来的是国内专业的动漫培训机构排名&#xff0c;这5个动漫培训机构&#xff0c;相信你一定都知道&#xff0c;快来看看吧&#xff01; 一&#xff1a;动漫绘画培训机构排名 1、轻微课 轻微课是国内人气很高的板绘学习平台&#…

2.23作业ccc

检测中断到来时&#xff0c;让LED灯状态取反&#xff0c;并且在串口工具上打印一句话例如&#xff1a;当按键1按下之后&#xff0c;让LED1状态取反&#xff0c;并打印“LED1 down”当按键2按下之后&#xff0c;让LED2状态取反&#xff0c;并打印“LED2 down”当按键3按下之后&a…

vue2安装ant-design UI报错 ERR! peer vue@“>=3.2.0“ from ant-design-vue@3.2.15

npm install ant-design-vue --save 安装报错&#xff0c;使用的是vue2&#xff0c;如图&#xff0c; npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: default0.1.0 npm ERR! Found: vue2.7.14 npm ERR! v…

13.Jenkins集成sonarqube

Jenkins集成sonarqube1.jenkins集成sonarqube2.jenkins以maven的方式集成sonarqube scanner报错1报错21.jenkins集成sonarqube 1.在jenkins插件管理中安装sonarqube scanner 2.jenkins要知道sonarqube服务端是谁&#xff0c;需要配置&#xff08;系统管理–系统配置–sonarq…

Knife4j文档请求异常错误

一、问题描述 springboot项目配置Knife4j后&#xff0c;访问地址http://xxxx/doc.html出现错误&#xff1a;Knife4j文档请求异常错误。 二、解决问题 使用google浏览器F12查看控制台后&#xff0c;发现有错误提示&#xff1a; 大致意思是某部分字段不能被有效解析为json。在…

因果推断方法(一)合成控制

知道的跳过下面的简单介绍&#xff1a; 就是比如广告主投放了10w元&#xff0c;那么他的收益怎么算&#xff1f;哪些订单就是广告带来的&#xff0c;哪些是不放广告也会购买&#xff1f; 合成控制法是目前我实际应用发现最好用的。置信度高&#xff0c;且容易理解。 简单讲下思…

iOS_苹果内购详细步骤

iOS苹果内购详细步骤iOS开发支付的两种方式1 Apple Pay 调取外部支付&#xff0c;例如支付宝、微信、银联等2 苹果内购IAP&#xff08;In-App Purchase&#xff09;1 IAP规则详解1.1 适用范围1.2 IAP类型1.2.1 Consumable products &#xff08;消耗型商品&#xff09;1.2.2 N…

python和C++代码实现图片九宫格切图程序(附VS2015配置Opencv教程)

1、python代码实现图片分割成九宫格 需要包含的库&#xff0c;没有下载安装的&#xff0c;需要自己安装哦。 实现原理很简单&#xff0c;就是用PIL库不断画小区域&#xff0c;切下来存储成新的小图片。 假设每一个格子的宽和高分别是w、h&#xff0c;那么第row行&#xff08…

【Maching Learning】深度学习常用评价指标(分类+回归)

深度学习分类、回归问题评价指标一、分类评价指标1.1混淆矩阵1.2准确率&#xff08;Accuracy&#xff09;1.3精确率&#xff08;Precision&#xff09;1.4召回率&#xff08;Recall&#xff09;1.5 F1{F}_{1}F1​分数&#xff08;F-Score&#xff0c;调和平均&#xff09;和 Fβ…

vue实现预览、下载和打印后端返回的pdf文件流

需求&#xff1a;后端返回pdf文件流&#xff0c;前端能够预览、下载打印。 后端返回的文件流部分截图 需要实现的效果图 前面第1步只是为了展示后台返回数据流&#xff0c;完成功能的时候&#xff0c;不需要调用接口的&#xff0c;只需要利用调用接口的url。 实现步骤&am…

Aspose.Imaging for .NET V23

Aspose.Imaging for .NET V23 Aspose.Imaging for.NET是帮助开发人员在自己的应用程序中创建、编辑、绘制或转换图像的类库。它包括在不安装Photoshop或任何其他图像编辑器的情况下以Adobe Photoshop原生格式保存的功能。Aspose.Imaging for.NET是一个灵活稳定的API&#xff0c…