news 2026/3/11 16:51:33

测试工程师必会技能合集,这一篇全讲清楚了!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
测试工程师必会技能合集,这一篇全讲清楚了!

经常会有小伙伴询问:“测试工程师有哪些必须要掌握的技能?”这是一个非常大的课题,因为每个人从事的行业不同、岗位不同,需要掌握的技能自然也不一样。

今天小编就从不同岗位、不同行业两个大方面,来讲讲软件测试工程师需要掌握的技能列表,最后也会列出哪个技能对于现在的你比较重要。快来对着技能树查漏补缺,有的放矢学习技能吧~

这里要提一下:这篇文章里说的测试工程师,是主攻软件领域的测试工程师。

首先我们来看一下不同阶段的测试工程师需要掌握的技能体系:

根据以上技能体系,小编给大家做了如下细分:

01 通用技能

1 业务相关

站在客户角度思考业务;掌握业务需求的知识内容、业务管理流程、行业现状和发展方向。

2 管理相关

1、时间管理(四象限法则)。

2、目标管理(SMART法则)。

3、知识管理

工具:Xmind、有道云笔记、印象笔记、Blog、GitHub、CSDN等。

4、团队管理

team leader:

认真完成任务分工;

及时汇报工作情况;

建设员工技术成长体系;

关注员工身心健康发展。

team worker:

认清任务职责边界;

工作中敢于担当;

对自己负责,对团队负责,

对公司负责;

与同事之间彼此包容、和谐相处。

3 思考、沟通和持续学习能力

思考:

今天完成了什么内容、明天需要做什么、自己哪些方面做得好,哪些做得不够好,下次需要改进;

近期工作计划、学习计划、职业规划、人生规划。

沟通:

敢于沟通:主动了解和听取对方的想法,敢于表达自己的观点,表达观点时说话语气很重要,要平和;

勤于沟通:多和别人交流与工作相关的意见和想法;

善于沟通:提升沟通技巧和效率,善于提问;沟通过程对事不对人,以解决问题为根本。

持续学习能力:

测试技术更新快速,测试工程师需要保持持续学习的态度,跟随行业发展,时刻关注测试行业最新技术和趋势,不断提升自己的专业能力,以保持竞争力。

02 功能测试需要的技能

1 客户端功能测试的技能

1、熟练掌握web测试与app测试关注点的不同,比如,界面、兼容性、app安装/卸载/升级、app弱网、app操作方式(横/竖屏、手势)、app交叉事件等测试。

2、熟练掌握几种常见的缺陷管理工具(Jira等)和代码管理工具(SVN等),熟悉缺陷的定义标准和系统化测试计划编写等。

3、至少会一门编程语言:Java、Python、C#等,可以不精通,但要写过简单的代码。

4、掌握用例设计工具(latin)和Web测试工具(xenu等)的使用。

需要掌握的工具:

缺陷管理工具:Jira、禅道、Bugfree、自研工具等;

文档协作管理工具:wiki、Docs(在线协作)、Xmind;

用例编写工具:Latin;

用例执行工具:Xenu(web)、adb(app);

代码编写工具:Pycharm等;

弱网测试工具:Charles;

安全测试工具:AWVS(网站及服务器漏洞扫描软件)、sqlmap(检测与利用SQL注入漏洞的免费开源工具)、Nmap(网络扫描和嗅探工具)。

2 服务端功能测试

熟练使用Postman或JMeter做接口测试;

深度了解HTTP/HTTPS协议的原理和作用;

掌握Linux命令查看服务器信息;

会使用JMeter做简单的性能测试;

使用Python+Requests+Unittest/Pytest+htmlrunner框架写过简单的接口自动化脚本;

熟练操作数据库:增、删、改和多表查询,可以写存储过程,独立完成测试数据的制造。

需要掌握的工具:

抓包工具:Fiddler、Charles、Wireshark;

接口测试工具:Postman、HttpRequester、JMeter等;

性能工具:JMeter等;

数据工具:Navicat、redisdesktopmanager;

车载特有工具:canoe、cantest、Qnet、busmaster、gt。

3 共通技能

软件测试知识:对软件测试的基本概念、方法和流程有深入的了解,熟悉各种测试技术和工具。

测试方法论:

熟悉测试方法论和流程,例如黑盒测试、白盒测试;

熟练掌握黑盒测试方法(等价类、边界值等)和白盒测试方法(基本路径等),熟练使用这些方法论制定测试计划和测试策略,设计有效的测试用例。

03 自动化测试需要的技能

1 客户端自动化的技能

对于Web应用程序的自动化测试,掌握HTML、CSS和JavaScript很有帮助的;

熟练掌握UI自动化测试框架的环境搭建,比如:Python+Selenium+Unittest+htmlrunner;

熟练掌握APP移动自动化测试的完整流程和测试方法。

需要掌握的工具:

Android自动化测试:UIAutomator、Appium(基于Webdriver框架)、UIautomator2(仅支持Android)、AirTest;

iOS自动化测试:WebDriverAgent、Appium(基于WebDriverAgent框架)、AirTest;

Web自动化测试:Selenium;

微信小程序自动化测试:ChromeDriver;

客户端自动化测试:Pyautoit。

2 服务端自动化的技能

熟练搭建工具自动化的搭建:Postman/JMeter+Newman/ant+Jenkins;

能够独立完成Python+Requests+Unittest/Pytest+htmlrunner的测试框架的开发;

能够独立完成自动化接口脚本的编写和维护。

需要掌握的工具:

Python+Requests+Unittest/Pytest+htmlrunner;

Java+rest-assured;

Robot Framework;

HttpRunner;

Postman+Newman+Jenkins;

JMeter+Ant+Jenkins;

Vue+Flask&Django。

3 共通技能

编程技能:至少掌握一门编程语言(Python、Java、C++等),没有编程基础的建议选择Python,因为简单易学,对新手比较友好,而且在测试领域的应用极为广泛,以编写自动化测试脚本和工具;

测试工具和框架:熟悉常用的自动化测试工具和框架,例如Selenium、WebDriver、Appium、Unittest/Pytest/JUnit、htmlrunner(测试报告工具)等,提高自动化测试的效率和准确性;

基础知识:了解软件开发生命周期和软件测试基础知识,包括需求分析、设计、编码、调试和发布等阶段;理解软件开发流程和相关概念更好地与开发团队协作;

调试和故障排除:具备良好的问题分析和故障排除能力,能够快速定位测试脚本和自动化测试框架的问题,并提供解决方案。

04 性能测试需要的技能

1 客户端(app)性能测试的技能

性能测试工具:熟练掌握性能测试工具,如solopi等,对客户端进行性能测试;

客户端技术知识:了解客户端开发的基本原理和技术,熟悉常见的移动应用开发框架(如iOS、Android),了解Web前端技术(如HTML、CSS、JS等);

性能测试指标:明确客户端性能测试指标(冷热启动时间、耗电量、流量、CPU、内存、GPU、帧率、页面切换时间和稳定性测试)及预期结果。

需要掌握的工具:

PerfDog、solopi;

adb;

ffmpeg(音视频);

dumpsys batterystatus;

Battery-Historian;

Monkey、MonkeyRunner等。

2 后端服务器性能测试的技能

熟悉性能测试过程,能够独立分析性能需求;

深度掌握JMeter或Loadrunner的拓展用法,能独立完成性能测试;

操作系统和网络知识:了解操作系统的原理和常见问题,熟悉网络通信协议和架构,有助于深入理解系统的性能特点和影响因素;

脚本开发:熟悉至少一种编程语言(如Python、Js等),能够编写自动化脚本支持性能测试工作,并进行数据处理和结果分析;

数据库知识:了解数据库的基本原理和性能优化策略,熟悉常见数据库管理系统(如MySQL等)和性能调优方法;

系统架构与设计:能够理解系统各个模块之间的交互关系,为性能测试提供有效的支持和指导;

压力测试和容量规划:具备压力测试和容量规划的知识和经验,能够根据系统需求和预期负载,评估系统的容量,并制定相应的扩展和优化方案。

需要掌握的工具:

性能测试工具:JMeter、Gatling、LoadRunner;

资源监控工具:性能监视器、nmon等;

数据库监控工具:monitor等。

3 共通技能

操作系统知识:熟悉操作系统的基本原理和常用命令,了解操作系统对性能的影响。

问题解决能力:善于分析和解决技术问题,具备良好的故障排除能力,能够处理性能测试过程中遇到的各种技术难题。

性能测试方法与策略:了解性能测试的基本原理和方法,熟悉负载模型和性能指标,能够选择合适的性能测试策略,并设计相应的测试方案。

性能问题分析与调优:能够对性能测试结果进行分析和解读,定位系统资源瓶颈和性能问题,并提出有效的优化措施。

05 其它需要掌握的工具

H5性能测试:Chrome Devtool、W3C Performance API;

环境部署工具:Docker(应用容器引擎)、K8S(基于容器的集群管理平台);

辅助开发工具:Vue.js、Nodejs。

06 不同行业需要测试工程师的星级

07 写在最后

这是小编总结的”过度”全面的测试技能合集,你有没有不同意见,把你的不同意见分享出来,大家一起讨论,谢谢!

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/10 9:36:15

云手机 实体手机的云端延伸

云手机可视为实体手机的云端延伸。它基于云计算技术和虚拟化技术,在云端服务器上虚拟出带有原生安卓等操作系统的手机实例,通过网络与实体设备连接,用户可通过实体手机、平板或电脑等设备远程操控云手机,实现诸如运行应用、游戏等…

作者头像 李华
网站建设 2026/3/10 0:37:40

交换机和网卡的 PFC 机制工作原理与实例解析

PFC(Priority-based Flow Control,基于优先级的流控) 是数据中心以太网(如 RoCE v2、DCB)的核心技术,属于链路层(Layer 2)流量控制机制。其核心目标是解决拥塞导致的丢包问题—— 通…

作者头像 李华
网站建设 2026/3/11 16:49:00

UI自动化测试常见面试题

1、什么是UI自动化测试? UI自动化测试是一种通过模拟用户交互并自动执行UI操作的软件测试方法。它用于验证用户界面的功能和稳定性,以确保在不同的操作系统、浏览器和设备上的一致性。 2、UI自动化测试的优势和劣势是什么? 优势&#xff1…

作者头像 李华
网站建设 2026/3/10 9:35:33

Linux OOM 问题之 DMSERVER 受害者

Shell 脚本模拟(无需安装工具) OOM 问题#!/bin/bash #持续申请内存,每次申请 100MB,直到内存耗尽。while true; do # 创建 100MB 临时文件,读取到内存(cat 命令会占用内存)。cat /dev/zero |head -c 100M |tail & done运行脚本&#xff1…

作者头像 李华
网站建设 2026/3/10 6:18:19

Flutter引擎裁剪与鸿蒙方舟编译协同优化

欢迎大家加入开源鸿蒙跨平台开发者社区,一起共建开源鸿蒙跨平台生态。 Flutter引擎裁剪与鸿蒙方舟编译协同优化 Flutter引擎的冗余模块会增加包体积并影响启动速度。通过分析flutter_engine源代码,可识别非必要模块进行裁剪。常见可移除模块包括&#…

作者头像 李华