当前位置: 首页 > news >正文

【软件测试面试题】项目经验?资深测试 (分析+回答) 我不信你还拿不到offer......

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

在面试过程中,怎样才能更好的体现出自己的真实实力?(你的项目经验)

面试经常会拿下面 3 个问题开场:
1、请做个简短的自我介绍;
2、简单介绍一个自己参与度比较高的项目,以及自己在项目中的职责;
3、简单描述下你在项目中发现的最有成就感的 Bug;

软件测试面试题:https://www.bilibili.com/video/BV1Lq4y137aR/

请做个简短的自我介绍?
面试不是聊天,一问一答之间都是有目的的。

所以我建议的回答方式可以是这样:
面试官你好,我叫张三,xxxx 年毕业,最近的一份工作是在特斯拉公司,最近做的一个项目是特斯拉线圈的测试,我在项目中担任测试负责人的角色,本次换工作是因为公司业务调整,准备投入资源做超级高铁,砍掉了特斯拉线圈的业务,本次想找一个团队氛围好,技术上更有挑战的工作。

这个回答我比较满意的原因有这么几点:
主动告知一些必问的信息,比如公司和项目信息,比如换工作的原因,以及个人预期,这样做一方面减少了面试官来回问的时间,同时会让面试官感觉到这个人做事比较周到,或者说叫眼里有活。

虽然是回答,但是在主导话题,或者说制造话题,比如他提到了公司和项目,但是没有详细介绍自己作为测试负责人的角色职责,如果我作为面试官肯定会继续问下去。

能给面试官制造话题的面试者都是好的面试者(但是别把自己带沟里去了),如果在第一个问题上给面试官留下好的印象,对后面的沟通会非常有帮助。

如果是你,你会怎么回答?

介绍一个自己参与度比较高的项目,以及自己在项目中的职责?

如果第一个问题,面试者没有主动告知这些内容,第二个问题仍然跑不掉。

针对这个问题,有的同学回答的重点会有点跑偏。

比如会花费不少的时间去介绍自己项目的详细情况:

我最近有参与一个 App 的测试,这个 App 有首页模块、好友模块、核心传输模块和个人中心模块,并且又分为 IOS 端和 Android 端,Android 端又分国内版和海外版,我主要负责 Android 端国内版的测试。

看,说了这么一堆,只回答了项目信息的部分内容,我还是不知道你具体都做了啥,那我就需要再继续重复问一下这个问题。

注意面试过程中的重点是面试者本人,项目信息算是背景信息,主要信息应该是面试者做的事情,那么只需要把能衬托面试者能力的地方凸显出来就行了。

比如:
我最近参与一个 App 的测试,周期是两周,一共有 10 个开发和 4 个测试参与,我主要负责带领其他 3 个测试人员一起保证项目所有版本的质量。我的主要工作内容是包括需求评审、用例编写、测试分工以及自动化脚本编写。

这样的话,信息是不是一下就丰富多了?
多提供人员信息有助于面试官了解自己在团队中的位置,特别是关键角色的时候,一定重点突出一下,提供具体的工作内容是为了后面的沟通可以进一步展开。

比如这个话题中的需求评审、用例编写、自动化脚本编写都是我想展开的,还是那句话,能够给面试官制作话题的面试者都是好的面试者,不过要记住,不要给自己挖坑,比如上面提到了自动化脚本编写,结果自己只是改改配置参数而已,并没有啥技术含量,这样的话问下去会很失望的。

所以前面那句话可以完善下:主动把话题引导到自己的优势的面试者都是好的面试者。

如果是你,你会怎么回答?

简单描述下你在项目中发现的最有成就感的Bug?

这个问题几乎各个面经中都会提到,所以有很多面试者提前准备。

那先说下回答的注意事项:
要的是自己发现的,不是别人发现的;
同样的,不要把别人发现的,冠名到自己头上,很容易出破绽的;
最好不是常规用例执行中出现的 Bug;

先看一个例子:
面试人A:有一个项目新增了本地搜索功能,我把特殊字符作为输入时,程序发生了崩溃,然后和开发一起用 windbg 调试定位,最后发现是程序没有对异常进行处理。

面试官B:特殊字符输入不是常规用例就覆盖了么?这样的话任何人都能发现吧?

面试人A:恩,是用例执行时发现的。

面试官B:windbg 调试需要 pdb 吧,这个只有开发那有,所以实际就是开发给定位的呗?

面试人A:恩,开发定位的,我是提供了重现环境和 dump 文件。

前面说的关键点全部命中,常规用例能覆盖到的测试点,我们认为是大部分人都能考虑到的,既然这样,发现这样的 Bug,不应该是件很有成就感的事情吧?

再来看一个例子:
面试人C:因为一个需求,业务需要拦截注入的操作,开发提测后,确实满足了本次的需求场景,经过和开发沟通,了解到实现逻辑是处理了 API SetWinEventHook 的调用,但是经过研究发现 API SetWindowsHookExW 也可以达到同样的效果,但是开发没有处理,鉴于换个 API 就被绕过的成本太低,开发又新增了对这个 SetWindowsHookExW 的处理。

面试官B:怎么想到这个测试点的?

面试人C:Windows 系统 API 很多,而且繁复,所以碰到的时候都格外小心,之前也一直有查 MSDN 的习惯,所以在研究具体的实现方式时就发现了这个测试点,其他类似的情况还有很多。

面试官B:测试工具是开发帮忙写的么?

面试人C:不是,我自己写的。

这个例子中:
自己发现的问题;
不是常规用例覆盖的范围,搞清楚开发的详细逻辑,并做针对性的全面性测试,不是所有人都能做到;
还有一个重点是,问题定位过程完全是自己完成。

如果你是面试官,面对这两个面试者你会选谁?A还是C

好了,我要说的就这些了,等等,我好像听到有同学有问题。

上面这些道理我都知道,但是我确实没有拿的出手的东西可讲啊,怎么办?

还能怎么办,赶紧回去补呗。记住,做每个项目的过程,都是我们成长和收获的过程。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

真正成功的人生,不在于成就的大小,而在于你是否努力地去实现自我,喊出自己的,走出属于自己的道路。

别抱怨,当目标成了遗憾,命运才给你改变自己的机会。往事既已过去,就应该学着笑对眼前。人生一世,如浮云流水,过往是覆水难收的我们有的只是现在。

人生的路有多宽,因人而异,有人的人生路宽阔而平坦,那绝大多是因为此人在成长的过程中,足够的努力和付出了。

相关文章:

【软件测试面试题】项目经验?资深测试 (分析+回答) 我不信你还拿不到offer......

目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 在面试过程中&#…...

tensorflow lite简介-移动设备端机器学习

TensorFlow Lite 是一组工具,可帮助开发者在移动设备、嵌入式设备和 loT 设备上运行模型,以便实现设备端机器学习。 支持多平台 支持多种平台,涵盖 Android 和 iOS 设备、嵌入式 Linux 和微控制器。 原理/流程 工作原理或者使用流程就是上面…...

Node.js常用知识

1、什么是 Node.js 【】Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。浏览器是 js 的前端运行环境,node.js 是 js 的后端运行环境。他们都有 V8 引擎,有各自的内置 API 2、fs 文件系统模块 【】fs 模块是 Node.js 官方提供的、用来操作文件…...

踩坑:maven打包失败的解决方式总结

Maven打包失败原因总结如下: 失败原因1:无法使用spring-boot-maven-plugin插件 使用spring-boot-maven-plugin插件可以创建一个可执行的JAR应用程序,前提是应用程序的parent为spring-boot-starter-parent。 需要添加parent的包spring-boot…...

【C++】位图

文章目录位图概念位图操作位图代码位图应用位图概念 boss直接登场: 给40亿个不重复的无符号整数,没排过序。给一个无符号整数,如何快速判断一个数是否在这40亿个数中❓ 40亿个整数,大概就是16GB。40亿个字节大概就是4GB。 1Byt…...

蓝桥杯-考勤刷卡

蓝桥杯-考勤刷卡1、问题描述2、解题思路3、代码实现1、问题描述 小蓝负责一个公司的考勤系统, 他每天都需要根据员工刷卡的情况来确定 每个员工是否到岗。 当员工刷卡时, 会在后台留下一条记录, 包括刷卡的时间和员工编号, 只 要在一天中员工刷过一次卡, 就认为他到岗了。 现在…...

如何利用站内推广和站外推广提高转化率?

在如今的网络时代,拥有一个好的网站是非常重要的。但是,光有一个好的网站是不够的,为了达到我们的目标,需要不断地提高网站的转化率。而在实现这个目标的过程中,站内推广和站外推广是两个非常关键的因素。 站内推广是…...

Java多线程(三)——线程池及定时器

线程池就是一个可以复用线程的技术。前面三种多线程方法就是在用户发起一个线程请求就创建一个新线程来处理,下次新任务来了又要创建新线程,而创建新线程的开销是很大的,这样会严重影响系统的性能。线程池就相当于预先创建好几个线程&#xf…...

Linux命令行安装Oracle19c教程和踩坑经验

安装 下载 从 Oracle官方下载地址 需要的版本,本次安装是在Linux上使用yum安装,因此下载的是RPM。另外,需要说明的是,Oracle加了锁的下载需要登录用户才能安装,而用户是可以免费注册的,这里不做过多说明。 …...

Linux常用命令等

目录 1.Linux常用命令 (1)系统命令 (2)文件操作命令 2.vim编辑器 3.linux系统中,软件安装 (1) rpm 安装,RedHat Package Manager (2)yum 安装 (3)源代码编译安装 1.Linux常用命令 Linux命令是非常多的,对于像嵌入式开发工程师,运维工程师需要掌握的命令是非常多的.对于…...

CEC2014:鱼鹰优化算法(Osprey optimization algorithm,OOA)求解CEC2014(提供MATLAB代码

一、鱼鹰优化算法简介 鱼鹰优化算法(Osprey optimization algorithm,OOA)由Mohammad Dehghani 和 Pavel Trojovsk于2023年提出,其模拟鱼鹰的捕食行为。 鱼鹰是鹰形目、鹗科、鹗属的仅有的一种中型猛禽。雌雄相似。体长51-64厘米…...

MyBatis底层原理【源码运行时序图】

MyBatis初始化流程🛷 以下代码为例🎉 🎇可对应源码阅读 MyBatis初始化流程✨ #mermaid-svg-yoG1e8Dnp3UIAOUW {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-yoG1e8Dnp3UIAOU…...

k8s 系列之 CoreDNS 解读

k8s 系列之 CoreDNS CoreDNS工作原理 kuberntes 中的 pod 基于 service 域名解析后,再负载均衡分发到 service 后端的各个 pod 服务中,如果没有 DNS 解析,则无法查到各个服务对应的 service 服务 在 Kubernetes 中,服务发现有几…...

从测试鸡蛋硬度到跳表的设计

我回忆起六七年前的一道题鸡蛋掉落问题,有幸在leetCode上找到题目了 原题是2枚鸡蛋 leetCode有拓展,k枚鸡蛋 具体的思路是这样的。 以2枚鸡蛋验证100层为例 不能直接二分查找,因为你在50层测试时,如果直接鸡蛋碎了,那…...

3D立体视觉成像原理介绍【一 】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言什么是基线?基线是如何影响3D图像质量激光三角测量飞行时间结构光相机时间编码结构光前言 本文将介绍3D立体视觉的成像原理,包括【激光三…...

CEC2021:鱼鹰优化算法(Osprey optimization algorithm,OOA)求解CEC2021(提供MATLAB代码

一、鱼鹰优化算法简介 鱼鹰优化算法(Osprey optimization algorithm,OOA)由Mohammad Dehghani 和 Pavel Trojovsk于2023年提出,其模拟鱼鹰的捕食行为。 鱼鹰是鹰形目、鹗科、鹗属的仅有的一种中型猛禽。雌雄相似。体长51-64厘米…...

0301_对应的南京比特物联网

0301_对应的南京比特物联网目录概述需求:设计思路实现思路分析1.流程拓展实现性能参数测试:参考资料和推荐阅读Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better …...

钡铼技术BL302 ARM工控机QT图形化界面开发的实践

QT是一种跨平台的应用程序框架,用于开发图形用户界面(GUI)、网络应用程序和嵌入式应用程序。QT提供了丰富的GUI组件和工具,使开发人员能够轻松地创建专业级别的应用程序。QT使用C编写,支持多种操作系统,包括Windows、Linux、macOS…...

Python try except异常处理详解(入门必读)

Python 中,用try except语句块捕获并处理异常,其基本语法结构如下所示: try:可能产生异常的代码块 except [ (Error1, Error2, ... ) [as e] ]:处理异常的代码块1 except [ (Error3, Error4, ... ) [as e] ]:处理异常的代码块2 except [Exc…...

信息系统基本知识(三)软件工程

1.4 软件工程 定义:将系统的、规范的、可度量的工程化方法应用于软件开发、运行和维护的全过程即上述方法的研究 软件工程由方法、工具和过程三个部分组成 1.4.1 需求分析 软件需求是指用户对新系统在功能、行为、性能、设计约束等方面的期望。 需求层次 业务…...

Linux下软件部署安装管理----rpmbuild打包rpm包部署安装

来源:微信公众号「编程学习基地」 文章目录1.安装rpmbuild2.rpm包制作打包rpm包3.rpm包安装4.rpm包卸载1.安装rpmbuild yum install rpmbuild yum install rpmdevtools创建rpm包管理路径,生成rpm相关目录 RPM打包的时候需要编译源码,还需要…...

ThreadLocal学会了这些,你也能和面试官扯皮了!

前言 我们都知道,在多线程环境下访问同一个共享变量,可能会出现线程安全的问题,为了保证线程安全,我们往往会在访问这个共享 变量的时候加锁,以达到同步的效果,如下图所示。 对共享变量加锁虽然能够保证线程的安全,但是却增加了开发人员对锁的使用技能,如果锁使用不当…...

【存储】存储特性

存储特性精简配置技术(SmartThin)SmartThin主要功能容量虚拟化存储空间写时分配:Capacity-on-Write读写重定向:Direct-on-Time应用场景及配置流程存储分层技术(SmartTier)存储分层工作原理关键技术容量初始…...

Qt使用OpenGL进行多线程离屏渲染

基于Qt Widgets的Qt程序,控件的刷新默认状况下都是在UI线程中依次进行的,换言之,各个控件的QWidget::paintEvent方法会在UI线程中串行地被调用。若是某个控件的paintEvent很是耗时(等待数据时间CPU处理时间GPU渲染时间&#xff09…...

Vue基础入门讲义(三)-指令

文章目录1.什么是指令?2.插值表达式2.1.花括号2.2.插值闪烁2.3.v-text和v-html3.v-model4.v-on4.1.基本用法4.2.事件修饰5.v-for5.1.遍历数组5.2.数组角标5.3.遍历对象6.key7.v-if和v-show7.1.基本使用7.2.与v-for结合7.3.v-else7.4.v-show8.v-bind8.1. 属性上使用v…...

pod资源限制,探针(健康检查)

pod资源限制,探针(健康检查)一、资源限制当定义 Pod 时可以选择性地为每个容器设定所需要的资源数量。 最常见的可设定资源是 CPU 和内存大小,以及其他类型的资源当为 Pod 中的容器指定了 request 资源时,调度器就使用…...

Python | 蓝桥杯进阶第一卷——字符串

欢迎交流学习~~ 专栏: 蓝桥杯Python组刷题日寄 蓝桥杯进阶系列: 🏆 Python | 蓝桥杯进阶第一卷——字符串 🔎 Python | 蓝桥杯进阶第二卷——递归(待续) 💝 Python | 蓝桥杯进阶第三卷——动态…...

2023-03-03 mysql列存储-cpu占用100%-追踪思路

摘要: 最近在处理mysql列存储时, 发现在执行explain时, cpu占用达到了100%. 本文分析定位该问题的思路过程 现象: mysqld进程占用100%使用kill processlist终止会话, 无响应查看show processings; 发现一直在运行mysql> show processlist; +----+-----------------+-----…...

JVM—类加载子系统

JVM细节版架构图 ​ 本文针对Class Loader SubSystem这一块展开讲解类加载子系统的工作流程 类加载子系统作用 1.类加载子系统负责从文件系统或者网络中加载class文件,class文件在文件开头有特定的文件标识即16进制CA FE BA BE; 2.加载后的Class类信息…...

在codeIgniter3中session.php中的数组追加值

如果key是字符串时,输出什么值?会直接把atime()的时间戳添加到key是字符串时,输出什么值?会直接把atime()的时间戳添加到key是字符串时,输出什么值?会直接把atime()的时间戳添加到arr[‘vars’]数组里面&am…...

盘锦做网站价格/营销案例分析

概念Java中数组属于引用类型。数组使用场合较多,对于数组的操作具有一定重复性,例如:数组拷贝,转换字符串,转换成数组,排序等等。既然重复的操作与需求多,那么对于数组操作的支持就成了JDK中的一…...

wordpress三级联动/免费网站推广网站不用下载

控制论的创始人维纳认为:信息就是信息,不是物质也不是能量。也就是说,信息与物质、能量是有区别的。同时,信息与物质、能量之间也存在着密切的关系。物质、能量、信息是构成现实世界的三大要素。只要事物之间的相互联系和相互作用…...

哪个网站做黑色星期五订酒店活动/域名解析网站

作者:LanceToBigDatahttps://www.cnblogs.com/zhangyinhua/p/11558510.html一、Lambda简述1.1、Lambda概述Lambda 表达式可以理解为简洁地表示可传递的匿名函数的一种方式:它没有名称,但它有参数列表、函数主体、返回类型,可能还有…...

网上拿手工做的网站/淘宝seo优化排名

作业要求: 做一个MP3文件播放器。具体要实现的是程序能够打开MP3文件,并可以播放这个文件。控制台程序或是gui程序都可以。gui是Graphical User Interface的简写,简单理解就是窗口的意思。思路:1、程序要知道文件的路径&#xff0…...

中牟做网站/营销网络是什么

SCCM2007 中所需的配置管理允许评估计算机关于多个配置的符合性,例如:是否安装并适当配置了正确的 Microsoft Windows 操作系统版本,是否安装并正确配置了必需的应用程序,是否适当配置了可选应用程序以及是否安装了被禁止的应用程…...

电子商务网站建设网/专业seo网站优化推广排名教程

题意:输入5x5的字符串,输入操作,要求输出完成操作后的字符串。 注意:①输入的操作执行可能会越界,如果越界则按题目要求输出不能完成的语句。 ②除了最后一次的输出外,其他输出均要在后面空一行。 ③操作的最后一个换行…...