去阿里、百度、网易大厂的软件测试工程师都是什么人?卷起来...

news2024/11/17 9:49:04

目录:导读

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


前言

测试,能力要求是核心问题

Python自动化测试:https://www.bilibili.com/video/BV16G411x76E/

其实也经历了很多阶段。
行业软件兴盛阶段和外包兴盛阶段(2000-2010年)行业进入了大量的测试人员,当时最主流的测试实践是:重心放在系统验收阶段。测试人员的主要工作基本都投入在了基于业务的黑盒测试上,对代码能力、系统理解的能力要求不多。

2010年后,互联网行业的真正兴起让国内软件开发模式开始缓慢调头,快速迭代的模式逐步兴起,开发周期越来越短,迭代越来越快,但系统越来越越庞大、复杂。

原来的测试工作模式和工作范围越来越无法满足要求了。但大量从业人员技能范围转变是一件很难的事情,行业是有巨大惯性的。从宏观上看大量QA技能转变跟不上需求转变是造成市场供求不匹配的主要原因。

什么样的人抢手?
那么到底什么样的人才才会让大厂伸出橄榄枝呢?

1、测试的底子-项目经验
有比较复杂系统的测试实战经验,你就超过了50%以上的应聘者。

什么叫做比较复杂系统呢?
投入50人年开发出来的系统就可以称作一个复杂系统了。因此,复杂系统并不是很罕见。但是,如果你只接触一个简单的模块,甚至只是测试一个稳定模块的维护性开发,而不是通盘理解,不能说是测试过复杂系统。有从头到尾接触一个完整项目的经历很宝贵。

2、测试的底子-基础知识
面试官通常会喜欢问几个问题:
如果测试时间不够,你会怎么办?
如果让你去测试一个你完全不熟悉的系统,你会怎么办?
你平时会使用那些测试设计方法?

看似很稀松平常的问题,非常考验人。因为大部分从业者都没有经受过系统训练和学习,工作多年,依然技能不足,意识跑偏。

3、熟练使用一门主语言
满足这条,你就超过了70%的应聘者)
这里列举Java与Python语言,这两个在测试中也主要做自动化的。

python:学起来比较简单,各种库简单使用方便。而且对于自动化比较友好。初学者一周就可以学会简单的python基础语言用法。

java:学起来比较难,对于语句要求严格,各个库也有,不过不太兼容。对于初学者来说难上手。学习时间会久很多。

什么叫熟练呢?
接口自动化测试:Python+requests+pytest+yaml+alluer+Jenkins;
web自动化测试:Python+selenium4+pytest+POM+allure+Jenkins;
app自动化测试:Python+appium+POM+pytest+allure+Jenkins;
这些都得熟练应用。

在一个领域知识有不错的了解

人不可能什么都懂,但工作几年之后,会在工作的域内一定要有积累才行。

例如,你测试一个核心电商系统的交易模块三年了。
业务上你一定要熟练讲出来:商品列表、购物车、下单、退单、废单、支付、发货、库存、退款、优惠使用等等一坨业务流程,和可能出现的常见的坑(各类问题产生的资损、各类问题产生的服务不可用、逻辑矛盾),不然根本无法体现你经验沉淀和深入思考;

技术角度上,你要能够画得出来系统的交互图,熟悉最核心的接口和最核心的参数,能够读懂开发的代码,熟练使用trace和监控工具,诊断定位线上问题到代码行。

用技术保障质量的能力

测试开发岗一定会问到一个问题:你能够举一个你用技术手段提高测试效率,增强测试能力的例子么?

这是面试时最大的一个坎。 很多人会讲一些自动化测试回归的例子,但是真正成功的例子非常少,因为为什么做,怎么做都没有想好就照网上一个教程攒了一个,结果变成了玩具。

做好自动化,不仅仅是会使用工具、框架,其实要对被测物特性,软件生命周期有很深的理解并且有很强的开发知识才行。

实际上,在环境、CI、数据、测试用例生成、数据比对的很小的一些点上,都能有不错的提效产出,从这些点能够做得好,会得到不错的加分。有一个不错的成功案例,你胜出的几率就超过了80%,没有短板,就十拿九稳了。

技能以外的东西- 实战案例

以前的工作印证了你的能力。
能够讲清楚一件特别拿得出手的工作,证明你能力的案例是面试时候最有用的投名状。

在一个域的深耕

人不可能什么都懂,但在一个领域是需要深耕的。
比如,在做了四、五年移动端测试以后。android和iOS都要具备一定的开发能力了,能读懂开发的业务代码是最基础的,能够代替开发实现部分业务功能,完成部分组件开发是个非常好的自检点。

能够对移动端自动化工具栈、监控工具栈(如友盟、bugly、newrelic等)、内存泄露检测、卡顿检测、耗电量、弱网、流量、埋点、灰度、版本控制、兼容性、用户体验、安全等等的质量保障方案有通盘搞定能力。

什么叫搞定呢?
举个例子:比如,使用多种手段把崩溃率降低到千分之一以下。对于一个小团队,这是个很不容易实现的坎。做到这点,你需要了解如何收集崩溃率,如何使用一系列工具来定位核心问题,如何推动开发改动,并且预防(静态代码扫描工具引入,阻止乱用第不成熟的第三方插件。

代码reivew防止常见pattern如空指针引发的崩溃,推动开发养成良好的log习惯,推动移动端防御性编程编程开发习惯,推动后端开发按照规范吐接口,帮助开发引入内存泄露、卡顿工具,趋势报表,警钟长鸣,各种灰度方式设置,线上监控。。。一个数据的改观,背后要有大量的质量相关工作)。

使用综合手段来保障软件质量提升效能的能力。
你能讲出自己做过5个以上这样的成功例子,我敢保障,你会被一线大厂疯抢。职级基本都是专家起。

持续学习能力和复杂问题解决能力

例子1:
你近期的工作是帮助团队提升后台服务稳定性。
你看到了netflix内部使用一个叫做ChaosMonkey的东西来随机对生产服务期进行攻击,而逼迫工程师提高稳定性,所以,你也实现了类似(更温和)的内部机制,推动团队稳定性的提高。

你怎么知道这个叫做ChaosMonkey的东西呢?
因为你会习惯性浏览一线厂商的技术博客,参与行业大会,关注各类新技术。持续性的养成习惯。

例子2:
做大规模接口自动化好难,外部数据依赖太难搞,参数构造太费劲,assert太难写。如果能够简单的录制回放就好了。

但是,外部依赖是个天坑,写操作mock也是个天坑,assert也是个天坑。

实际的案例是,经过几年多个团队持续不屑的填坑,阿里内部已经有应用级的录制回放工具了,数百个应用成功的是用了它,把不可能回归的任务变成了可能(上万数量级的case当天生成,当天投入使用,并可以分析覆盖率),自动化测试实施需要付出的工作时间革命性降低(不足原来付出时间的10%)。

其它能力测试是个万金油,高阶一些的职位需要什么都要会一些 ,因为越高阶的职位需要解决的问题越综合,需要打交道的人的种类越多。

不然很容易变成你职业短板,做个list吧(一定不全):
很好的项目管理能力,至少与开发经理能力同级,甚至要强于他。
一定的软件架构能力。
一定的产品sense:可以跟一个资深的产品经理能够顺畅的交流,明白知道他为什么会这么想,所要实现产品的意义,路径;从产品质量方面的考虑要超过产品经理,给他输出。极好的沟通能力。

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

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

人生就像一场马拉松,需要坚持不懈的努力和毅力。跌倒了,继续爬起来;感到疲惫,心中仍要坚定;迷失了方向,回头看看路标。没有什么是永恒不变的,但勤奋和坚持会让自己更接近成功。

我们的人生就像一本书,每一天都是其中的一页。只有努力学习、不断进步,才能让这本书更加精彩。无论经历多少风雨,坚持自己的理想,勇往直前,才能走向成功之路。

生命太短暂,不能浪费在平庸上。无论你的起点有多低,只要你愿意努力,就能让自己变得更好,实现梦想。不放弃,不妥协,一步一个脚印,迎接最好的自己。

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

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

相关文章

CRA应用使用craco实现webpack配置+module.less+src别名配置

前言:总所周知,create-react-app 是目前最受欢迎的创建 React 应用的手脚架之一,下面简称CRA;CRA 最推荐更改 webpack 配置的当属使用 craco,下面我们一起来看看配置吧。 一、创建 cra 应用 npx create-react-app my…

全国标杆!3DCAT实时云渲染助力深圳移动5G+智慧校园建设

2023年2月27日,中国移动在陕西西安召开全国教育行业全年工作部署暨电子学生证专项调度会,来自全国各地的移动分公司、专家、合作伙伴等参加了会议。瑞云科技旗下3DCAT实时渲染云作为中国移动的重要合作伙伴之一,也受邀出席进行项目展示。 在会…

算法修炼之练气篇——练气五层

博主:命运之光 专栏:算法修炼之练气篇 前言:每天练习五道题,炼气篇大概会练习200道题左右,题目有C语言网上的题,也有洛谷上面的题,题目简单适合新手入门。(代码都是命运之光自己写的…

WooCommerce电商开发:高性能订单存储(即将成为)新常态

要创建免费网站?从易服客建站平台免费开始 500M免费空间,可升级为20GB电子商务网站 创建免费网站 WooCommerce电商开发:高性能订单存储(即将成为)新常态 发布于 2023年3月30日 自2022年1月以来,我们一…

【企业信息化】第5集 免费开源ERP: Odoo 16 inventory仓库管理系统 现代化线上仓库管理软件

文章目录 前言一、概览二、硬件1.设置2.移动扫描仪3.USB / 蓝牙4.标签打印机5.体重秤 三、总结 前言 现代化线上仓库管理软件。 一、概览 提高业绩,缩短处理时间 通过复式分录智能库存系统更好地整理您的仓库。 获得最高效的存货方法并改善您的全部内部运营。Odoo…

2023年深圳/东莞/惠州CPDA数据分析师认证报名到哪里?

CPDA数据分析师认证是大数据方面的认证,助力数据分析人员打下扎实的数据分析基础知识功底,为入门数据分析保驾护航。 帮助数据分析人员掌握系统化的数据分析思维和方法论,提升工作效率和决策能力,遇到问题能够举一反三&#xff0c…

介绍 std::vector 的 operator[]

介绍 std::vector::operator[] 操作符只能 访问指定的元素 std::vector<T,Allocator>::operator[] ------------------------------------- reference operator[]( size_type pos ); //(until C20) constexpr reference operator[]( size_type po…

【广州华锐互动】3D可视化技术提升城市规划效率,打造智慧城市

城市规划是一个复杂而又多变的过程&#xff0c;需要考虑众多因素&#xff0c;如地形、气候、经济、人口等。传统的城市规划信息展示方式主要是通过平面图、立面图等二维图像来呈现城市规划的方案和效果&#xff0c;难以全面展示城市规划信息的空间特征和复杂性。 利用3D可视化…

你真的会性能测试吗?性能测试需求分析,从业务到数据(详细)...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 产品需求 业务场…

MFC二维码生成,libqrencode——小白级

直接使用&#xff1a;下载我编译好的库-链接-&#xff0c;直接跳转到使用库那一步 两个工程打包链接 ——下载 先上最终效果&#xff1a; ​​ 二维码生成&#xff0c;参考&#xff1a; 跳转链接 一、 libqrencode库编译 libqrencode是一个日本人写的的库&#xff0c;库在这…

自学黑客(网络安全)看这篇就够了

写了这么多编程环境和软件安装的文章&#xff0c;还有很多小伙伴在后台私信说看不懂。我都有点头疼了&#xff0c;但是小伙伴们求学的心情我还是能理解&#xff0c;竟然这么多人给我反馈了&#xff0c;那我就再写一篇网络安全自学的教程吧&#xff01;大家耐心看完&#xff0c;…

Fidder 抓iPhone Andorra包 教程 解决证书过期问题

1. 下载Fidder 链接&#xff1a;https://pan.baidu.com/s/12xgEU8YyE-CfWMbPIWqWMw?pwdfhxh 2.设置Fidder 3. 手机设置代理并安装证书 首先 windows r 键 输入cmd 输入 ipconfig 查看本机的IPv4地址 然后设置手机网络的HTTP代理。之后在iPhone上用Safari访问 ipv4地址:888…

【mysql】2003-Can‘t connect to MySQL server on “XX.XX.XX.XX“ (10060 unknow error)

使用navicat或者其他数据库管理工具连接远程mysql服务器时出现2003-Can’t connect to MySQL server (10060 unknow error)错误 经过排查时发现是防火墙的问题&#xff0c;OK&#xff01;那么下面写一下处理的过程 1、查看防火墙的状态 systemctl status firewalld 2、 开放…

MySQL基础(二十九)数据库的设计规范

1 范式 1.1 范式简介 在关系型数据库中&#xff0c;关于数据表设计的基本原则、规则就称为范式。可以理解为&#xff0c;一张数据表的设计结 构需要满足的某种设计标准的 级别 。要想设计一个结构合理的关系型数据库&#xff0c;必须满足一定的范式。 1.2 范式都包括哪些 目…

连接器行业最新状况:竞争充分,行业集中度不断提升

随着应用领域不断扩展&#xff0c;连接器产业逐渐发展成为产品种类齐全、品种规格丰富、专业方向细分、行业特征明显、标准体系规范、系列化及专业化的行业。 连接器行业是充分竞争的行业&#xff0c;行业集中度不断提升 连接器行业具有市场全球化和分工专业化的特征&#xf…

VMware Aria Suite Lifecycle 8.12 - 应用生命周期管理

VMware Aria Suite Lifecycle 8.12 - 应用生命周期管理 请访问原文链接&#xff1a;https://sysin.org/blog/vmware-aria-suite-lifecycle/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;sysin.org 应用生命周期管理 VMware Aria Suit…

Vue中组件之间通信的-六大方式-总结

方式一&#xff1a;props/$emit 父组件向子组件传值 通过一个例子&#xff0c;说明父组件如何向子组件传递值&#xff1a;在子组件Users.vue中如何获取父组件App.vue中的数据 users:["Henry","Bucky","Emily"] 注&#xff1a;父组件通过props向…

【企业信息化】第8集 免费开源ERP: Odoo 16 Purchase采购管理 改善您的供应链和库存绩效

文章目录 前言一、概览二、主要功能1.自动化采购流程2.供应商价目表和产品库存3.通过采购招标获得最佳要约4.获取采购情况的统计数据5.管理多家公司6.全面地 集成 于其他 Odoo 的应用 总结 前言 轻松管理供应商和采购订单&#xff0c;改善您的供应链和库存绩效。 一、概览 二、…

【极验黑科技】文生图大模型在极验人机对抗领域的应用

自极验于2013年开创性地提出新一代的智能验证码概念开始&#xff0c;就始终在人机对抗领域不停地升级迭代。极验全球首创的“行为式验证”在十多年来&#xff0c;为全球近40万的开发者使用。如小米、新浪微博、东方航空、国家工商局等企业携手极验验证码进行升级&#xff0c;使…

4.AI人工智能大模型汇总:类GPT系列模型、模型中转站Auto-GPT、多模态大模型、视觉模型、自然语言模型

AI人工智能大模型汇总:类GPT系列模型、模型中转站Auto-GPT、多模态大模型、视觉模型、自然语言模型 模型名称发布方类型开源类型原始模型框架paddle版本模型能力模型语言模型参数简介模型链接体验链接paddle版本链接项目链接备注发布日期创建人模型星火认知大模型科大讯飞语言…