二本4年测龄年仅25岁,五面阿里(定薪25K).....

news2025/1/11 10:07:40

体验了一下阿里的面试,不愧是大厂,考察范围既有深度也有宽度。努力回想了下面试的内容和自己当时的回答,这里给大家分享下自己的经验,也给自己做个归档,希望能给正在准备跳槽,找工作的朋友一点帮助!

基础知识掌握度的一面

首面是一个女面试官进行的,主要是测试对编程基础的掌握度,老实说让我认识到了自己对于基础知识的掌握其实并不牢固,摘取一些问题如下:

请说出 java or python 的内存回收机制

请说出 python 的几种拷贝方式和区别

请说明如何实现一个线程安全的单例

我回答的都不好,究其原因是因为大部分都是在 python 调用各种类库,而忽视了对其原理和基础的探究,也许确实你不懂这些也可以编程,但是不牢靠的基础一定会成为你代码里的隐患;我认为我这部分确实应该重新重视起来,这几天一直在看 python 的基础编程书籍,对之前项目里用到的方法有了重新的思考,希望观者也可以想想,自己的基础是否牢固呢?

除了这些编程的基础点之外,还有一部分是对你项目的考察,主要是你做了什么,为什么你这么做,你对你使用的工具的了解程度,以及你有没有想如何把他做的更好,例如:

介绍一下 jmeter 这个工具

你是怎么做性能测试的?请举出一个具体的例子

为什么你选择了 appium 作为测试工具

你在工作里有没有对现有工作的改进实践?

你的工作规划是什么?有没有目标

这部分回答的就相对好一些了,因为个人还是很喜欢探究一些新的测试方法或者工具并把它应用起来的。

最后我问的问题是阿里现在的自动化如何做的,以及作为阿里的职员,需要在这个过程里去做什么。

项目实践的二面

二面换成了一个男的面试官,这次比较短,大约就 20 分钟;这个主要是针对你做过的项目进行详细的询问

请举出一个你现在负责的业务并详细的介绍?

你是如何做 ui 自动化的?

你是怎么设计 ui 自动化框架的,介绍一下你的框架?

你做了什么措施让你的用例失败后可以迅速定位问题?

你在自动化用例里,做了什么保证其稳定性?

你的用例有没有做分层设计,是如何做的?

这些部分大约是想看你的实践深度,做是一回事,做的多完美是另一回事。

部门总监三面

三面的面试官级别是P9,技术很强,基本上每个点都问到不会为止。三面面完也没有马上记录,大致的知识点是这些,本人回答的比较马虎,部门总监确实很厉害,全程花了30多分钟

自我介绍,任何开始聊项目

项目中认为最难的点是什么

项目中速度提升是如何实现的

项目中套接字编程客户端、服务端如何写的,框架怎样

dpdk如何实现udp传输

tcp如何保证安全可靠传输

ip报文、tcp报文具体内容有哪些

ip与tcp校验和方式有什么不同

网站访问过程

jvm分区(重点)

线程池(重点),线程池创建方法,参数表示的含义,提交任务的顺序

进程死锁条件,死锁处理方法

有什么问题

交叉四面

全程46分钟

三面过了大概快两周了,以为自己凉了结果前几天早上9:30左右刚在工位还没坐热乎就打给我,一手措手不及,对方自我介绍是天猫的来进行一轮交叉面,我当时急忙找了个空位置开始面试。

首先自我介绍

介绍项目

平时项目有用到优化的地方吗 如何优化的

我回答了项目从写方面的优化(服务端对数据库乐观锁自旋等待、redis缓存对并发的抵挡,消息中间件进行异步)面试官又问我如果读取如何优化

然后高并发情况下如何处理

数据库主从复制、分库分表

分库分表后如何保证主键唯一性

实现面向切面有哪些方法 具体怎么实现的

手撕代码题

//评测题目: 
//含有 x + 1 个整数的数组 nums,其数字都在 1 到 x 之间(包括 1 和 x),
//假设只有一个重复的数字,请找出这个重复的数。
//示例 1:
//输入: [1,3,4,2,2]   输出: 2
//示例 2:
//输入: [3,1,3,4,2]   输出: 3
//说明:
//不能改变原来的数组(假设数组只读)。
//只能使用额外的 O(1) 的空间。
//时间复杂度小于 O(n2) 。
.....

最后问了平时如何保证代码质量的

五面 HR

全程20多分钟,基本上在聊人生,面试官小哥哥也超nice,问了什么时候有结果,他说两周之内有offer的话会再通知~

自我介绍

项目的收获

项目遇到的难点如何解决

你实习的两家公司有什么优点与不足

为什么春招没有投阿里

未来的职业规划

未来打算定居杭州吗

期望薪资

如何快速搞定软件测试面试,总体上做好以下三点即可:

  1. 简历准备
  2. 核心技术及面试题
  3. 面试技巧

简历准备

首先你要准备的是简历。简历很重要,这是别人了解你的第一个地方,所以简历要好好写。

  • 自我简介:

个人的主要信息都要以醒目的方式标出。什么是个人的主要信息?例如姓名,性别,年龄,学历,联系方式,工作年限,掉长的技术点,项目经验等。不能让筛选简历的人到处找你的特点,而应当是让这些特点主动地抓住他们的目光。例如,如果一个公司要招聘…位测试工程师,要求懂技术A,而却很难从简历上发现你有与A相关的工作经验或者学习经历,你入选的概率会大吗?可能面试的机会都会很少。我们可以通过一些简单的方式来着重强调我们的主要信息,例如把字体加粗,或者让它们单独占一行,或者用其他方式。我曾经接触过一些简历,需要我从头至尾反复看好几遍才能大概看明白,需要我去总结“中心思想”。如果工作忙没有时间的话,这样的简历往往就被忽略了。

  • 个人技能:

如果你对一门技术或者一个职业有自己的深入的理解,可以写出来。这种理解因为是自己归纳的,所以往往比通常意义上的“自荐信”还要有效果。例如,如果你想申请份测试工程师的工作,而你对这个职业有自己的理解,你可以在简历中安排一个小段落来叙述你的看法。这一部分并不是简历中必须的,有则锦上添花,没有也没有关系。只有对要陈述的对象有深入的了解的时候,再去写才比较好。如果不熟悉,反倒是搬起石头砸白己的脚。所以,做之前,慎重考虑一下。

  • 工作经历:

现在公司衡量一个人是否合格,他的工作经验占据很重要的权重,这在软件行业尤其明显。因为工作经验很重要,所以请在简历中开辟一个专门的区域去详细叙述它。项目的名称、起止时间、所用技术、你的角色和职责等,都要说清楚。—旦公司在你的工作经验中发现了他们所期望的或者相近的,你得到面试机会的概率会比较大。没有工作经验或者经验缺乏的朋友也不可忽略这一部分,自己的实习项目、学习项目都是可以写的。如果一点相关内容都没有,简历会显得很单薄,没有竞争力。

核心技术及面试题

面试常考的核心知识点包括以下点:

测试开发工程师面试,技术面试过程中,有以下这些点, 是一定会考到的【按照优先级排序】。

1.自动化测试知识 + 测试基础知识。

2.项目经历。

3.开发语言知识 Python or Java。

4.网络知识。

5.数据库知识。

6.操作系统知识。

7.算法与数据结构知识

8.解决问题能力 + 未来思考能力

软件测试面试问题解析整理

测试理论:

软件测试的目标

发现尽可能多的错误,测试是一个为了寻找错误而运行程序的过程。

一个好的测试案例是指很可能找到迄今为止尚未发现的错误的用例。

一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。

软件都有多少种分类?

根据功能的不同,电脑软件可以粗略地分成四个层次:

  • 最贴近电脑硬件的是一些小巧的软件。它们实现一些最基本的功能,通常“固化”在只读存储器芯片中,因此称为固件。
  • 系统软件包括操作系统和编译器软件等。系统软件和硬件一起提供一个“平台”。它们管理和优化电脑硬件资源的使用。
  • 支持软件。包括图形用户界面、软件开发工具、软件评测工具、数据库管理系统、中间件等。
  • 应用软件种类最多,包括办公软件、电子商务软件、通信软件、行业软件,游戏软件等等。

Linux 基础

在 Linux 系统中,一个文件的访问权限是 755

755 表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。

如何查看一个文件的末尾 50 行?

查看/etc/profile 的前 10 行内容,应该是: # head -n 10 /etc/profile

查看/etc/profile 的最后 50 行内容,应该是: # tail -n 50 /etc/profile

MySQL 基础

什么是数据库?

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库

什么是关系型数据库,主键,外键,索引分别是什么?

关系型数据库是由多张能互相联接的二维行列表格组成的数据库

主关键字(primary key)是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录

外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键

的表被称为主表的从表。外键又称作外关键字

在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,

它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单

Web 测试

nginx,tomcat,apache 都是什么?

Nginx (engine x) 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 服务器。

Apache HTTP Server 是一个模块化的服务器,源于 NCSAhttpd 服务器

Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,是开发和调试JSP 程序的首选。

接口测试

什么是接口

接口是指外部系统与系统之间以及内部各子系统之间的交互点。

包括外部接口、内部接口,内部接口又包括:上层服务与下层服务接口、同级接口。

如果模块请求 http 改为了 https ,测试方案应该如何制定,修改?

分别用 http 还有 https 登录试试。如果用 https 可以正常登录,地址栏显示一把锁头,那么这个网站是有部署 SSL 的。如果 http 和 https 都能够正常登录,进一步说明该网站没有设置强制 https 登录,或者说没有设置 http 链接自动跳转 https 链接;相反如果用 http 登录,结果跳转到 https 页面,说明网站部署了 SSL, 而且设置了 http 自动跳转 https

App 测试

什么是 Android 四大组件?

Android 的四大组件包括:Activity、Service、BroadcasReceiver、ContentProvider

在这里插入图片描述

总结:

由于内容过多,就不在这里就不把所有的知识点内容列举出来,阿里大牛总共整理了有400多页的PDF文档,有需要的可以点击下方小卡片进群免费获取~

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

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

相关文章

每一个软件测试工程师都有要牢记的误区

最近跟一些刚刚进入软件测试行业的朋友去交流,发现了一个有趣的现象,就是对于这个行业的很多问题的认识都是一致的片面,当然也可以理解为误区。自己利用一点时间,把他们对于这个行业的认识误区都罗列出来,然后结合自己…

【Python从入门到进阶】16、文件的打开和关闭

接上篇《15、函数的定义和使用》 上一篇我们学习了Python中函数的定义和使用,包括函数的参数、返回值、局部变量和全景变量等操作。从本篇开始我们来开始学习Python对文件的一些操作,本篇我们主要讲解如何使用Python打开和关闭文件。 一、打开/创建文件…

全国青少年编程等级考试scratch四级真题2023年3月(含题库答题软件账号)

青少年编程等级考试scratch真题答题考试系统请点击 电子学会-全国青少年编程等级考试真题Scratch一级(2019年3月)在线答题_程序猿下山的博客-CSDN博客_小航答题助手 1.编写一段程序,从26个英文字母中,随机选出10个加入列表a。空白…

【id:45】【20分】A. Equation(类与对象+构造)

题目描述 建立一个类Equation,表达方程ax2bxc0。类中至少包含以下方法: 1、无参构造(abc默认值为1.0、1.0、0)与有参构造函数,用于初始化a、b、c的值; 2、set方法,用于修改a、b、c的值 3、ge…

JSP原理

1.什么是JSP Java Server Page:Java服务器端页面,也和Servlet一样,用于动态Web技术 最大的特点:写JSP就像再写HTML 页面生成了java JSP本质上就是servlet 3.输出页面前增加的代码 1.response.setContentType("text/html"); //设…

C++ ubuntu环境下安装编译部署环境,用onnxruntime部署ppyoloe_r模型

在新安装的ubuntu环境下修改源、安装gcc和cmake,编译安装opencv,安装onnxruntime环境。并编写cmakelist文件,编译与运行ppyoloe_r模型。 windows环境下onnx部署ppyoloe_r模型的代码可以参考 https://blog.csdn.net/a486259/article/details/1…

Python-入门基础小练习

通过前面的两个篇章Python-入门基础篇和Python-入门基础语句篇大家应该已经认识了python基础的语句和函数了,并且可以使用pycharm编译器创建.py文件进行运行了,今天适当的来一些小练习,给枯燥的学习增添一些趣味性。 判断一个数是否为偶数 …

Node 模块

文章目录 Node 模块概述使用方式一:module.exports方式二:exports 目录模块package.json配置 引入模块的基本流程 Node 模块 概述 将一个复杂的程序文件依据一定规则(规范)拆分成多个文件的过程称之为模块化。 其中拆分出的 每…

Identity标识框架配上JWT的使用

在Identity标识框架的代码上继续编写 .Net中的标识框架Identity_风的艺术的博客-CSDN博客 添加NuGet包 Nuget:Microsoft.AspNetCore.Authentication.JwtBearer 创建存储JWT数据类 public class JWTOptions { public string SigningKey { get; set; } pub…

嵌入式51单片机03-数码管系列

文章目录 数码管一、数码管基础知识二、数码管系列代码1. 数码管操作(单个数码管静态显示)(1)仿真电路图(2)源代码(3)实验结果 2. 数码管操作(多个数码管静态显示&#x…

CSDN官方文章MD编辑器文章示例

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

Day950.遗留系统的四化建设 -遗留系统现代化实战

遗留系统的四化建设 Hi,我是阿昌,今天学习记录的是关于遗留系统的四化建设的内容。 对于老旧、过时,但又十分重要、不可替代的遗留系统,是遗留系统。听之任之只会埋下隐患,真正出现问题就为时已晚了。在动手改造遗留…

【蓝桥杯省赛真题39】Scratch棒球本垒打 少儿编程scratch图形化编程 蓝桥杯省赛真题讲解

目录 scratch棒球本垒打 一、题目要求 编程实现 二、案例分析 1、角色分析

托福高频真词List01 // 附阅读真题

4月18日单词 🍮segregateseparateV.隔离🍮leftover remainingadj.剩余的 🍮rivalcompetitor 🍮rivalcompete n.对手🍮 v.对抗🍮 apparentlyseeminglyadv.显然 🍮unrivaledunequaledadj.无与伦…

Create a Process for Managing Support Cases

文章目录 前言&学习目标学习目标背景 一,Create Support Processes1.创建用户2.创建Processes3.创建Record Types4.创建升级规则(Escalation Rule) 前言&学习目标 记录trailhead学习重点,创建管理支持个案的流程,简化工作流并用新的…

mysql企业级安装部署(保姆级别教程)

前言 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系…

Spring——利用五大类注解和Bean注解实现更简单的存储

目录 一、配置扫描路径 二、使用注解存储Bean对象 2.1 Controller(控制器存储) 2.1.1 bean标签是否可以和component-san一起使用呢? 2.2 Service(服务存储) 2.3 Repository 2.4 Component 2.5 Configuration 2.6 五大类注解可以不在…

27岁,测试在职近5年,月薪不到2W,担心被应届生取代

工作了近5年,一个月工资不到20K,担心被应届毕业生取代!互联网的快速发展伴随着员工适者生存的加速,测试员的薪资也在不断增长,以3年、5年、8年为一条分水岭。如果人们的能力和体力不够,他们就会被淘汰。看起…

Android添加C++/CPP项目代码(2)

Android添加C/CPP项目代码(2) (1)选中某个module,右键,Add C to Module 在随后弹出的选项框中选第一个,OK。 (2)此时会在app下产生一个cpp目录和两个文件: x…

TiDB实战篇-BR进行数据备份与恢复

简介 使用BR进行数据备份与恢复。 原理 Backup备份的时候在PD上面找到表的元数据,然后找到对应的TiKV数据以后,直接备份到外部系统中(注意如果没有像HDFS这样的分布式文件存储,那么它每个TiKV备份到本地的文件就只有一部分数据&…