工作4年,抽空整理了一下,测试开发需要学习哪些技能?希望对你有帮助

本文主要是介绍工作4年,抽空整理了一下,测试开发需要学习哪些技能?希望对你有帮助,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关注公众号【测试开发Guide】

回复「java」:即可获得java经典学习资料,带你轻松入门java编程。
回复「python」:免费获取「python入门」高分好书,业余时间偷偷变牛逼。
回复「面试」:24个常见的测试面试题,你一定不想错过。
回复「书单」:获取2020年软件测试工程师必看的书单
回复「测试用例」:获取本人常用的 Excel 和 Xmind 测试用例模版
回复「测试工具」:获取 mac 和 windows 常用的测试工具
 

工作4年,一点点感想,做一下记录。

 

先看目录:

一、测试思想

二、测试工具

三、通识技能

四、业务模型

五、工程能力

 

文章有点长,可以先收藏。看完之后,别忘了点赞,点赞不是为了我点赞,而是为了你自己点赞,我希望你也能在这个行业越走越好!

 

假如你是个大神,看到了我写的回答,认同与否,权当饭后谈资即可,我们都不崇尚网络暴力。

 

还有就是,书本上教的东西,我不会刻板的复制粘贴到这里,我只说从业之后,我自己的思考。

 

一、测试思想

测试思想,纷繁复杂,不同的书可能写的都不一样。

 

工作多年一直指导我的测试思想主要有以下两条:

1、整体大于细节!

世上没有绝对完美无缺的系统,只要是人写的代码,线上都不可能没有bug,我们测试工程师能做的只是把bug尽量减少,把风险尽可能降到最低。

 

1)测试要学会抓住重点,不要把宝贵的测试时间花费在纠结细枝末节上,有这功夫不如多回归几遍核心主流程。

2)要学会梳理系统框架和业务流程,Bug不单单存在于你所负责测试的模块,也有可能存在于依赖的模块上!

 

2、越早介入测试,越早发现问题,风险越小。

 

以上两条,我都是有过血泪教训的,为此不少挨过casestudy!

 

总之,不管测试什么样的系统,测试的时候,还应该多去思考:你所负责测试的这个功能、模块或系统,假如出现问题,那么最坏的情况是怎么样的会对用户造成多大的影响。为了防止未来出现这种局面,当前有没有什么采取什么措施?

 

 

 

二、测试工具

这里我只列举我用得比较高频的,这里我不会试图去穷举全部的测试工具,我相信我用的这些工具,大部分测试工程师也都在用。

 

假如说我专门去搜集测试工具,占据很多篇幅,我觉得对于刚入门的新手测试工程师,同样也是不太友好的,毕竟有选择困难症的朋友,看到我的文章会困惑。

 

总之,假如你是个新手测试工程师,我觉得你能熟练掌握以下的测试工具,应付工作就绰绰有余了。

 

抓包工具:fiddler、charles、Stream(iOS)、mitmproxy、anyproxy

接口调试:jmeter、postman

终端工具:xshell、iterm2、SecureCRT

数据库:mysql、redis、mongo、hive

数据库连接工具:navicat

编程语言:Python、Java、JavaScript

IDE:PyCharm、Idea、VSCode、微信开发者工具

电脑操作系统:windows、linux、(macOS)

手机操作系统:iOS、Android

自动化:Appium、ATX、Selenium

效率工具:Excel、Alfred(mac)、Wox(windows)

“互联网办公软件”:wiki、jira或禅道、jenkins、gitlab

“升职加薪利器”:PPT

“装逼神器”:markdown

 

顺带提到一点:测试工具只是辅助测试的一个手段,目的是要提高工作效率,方便我们快速、持续交付。

 

测试工具最终一定是要落地到业务测试上去的,不要为了学测试工具而学测试工具,不要为了开发测试工具而开发测试工具,假如不能给业务带来价值,那做这么多的意义又在哪里呢?

 

另外,假如说团队里面真的必须让你负责开发某个测试工具,真的不要马上“下笔如有神”,写代码很容易,但是设计好的架构非常难的。正确的做法是,先调研大公司有没有相关的解决方案,并看有没有成熟的开源框架可以解决当前的问题。能开奔驰宝马,还要什么自行车。

 

学习优秀的测试工具,不仅要会用,还要懂得架构设计思路和框架底层的实现原理,经验都是这样慢慢积累的。

 

假如你做出来的测试工具,只有你自己一个人用,那么你想怎么设计都可以;

 

假如你做出来的测试工具想要服务于整个业务部门甚至整个公司,那你还得考虑你所设计的测试工具的易用性和容量。

 

测试工具还有一个重要的要素:测试标准化

 

说通俗点,就是要有一些关键指标去评估你测试的系统的好坏。

 

如果没能输出一些有用的测试指标,又怎能证明你设计的测试工具是有用的呢?

 

测试进阶的道路上,总会有人不明白这些道理。知识学不完,反倒自己先自满了。

 

PS:我一般都是从testerHome和Github去挖掘好用的测试工具,并且尝试着在巨人的肩膀上二次开发

 

三、通识技能

很庆幸,我近两年去的每一家公司,都是有开发的代码权限的。这样,我能够学到不少开发的技术,能够从diff代码中,大致判断测试范围和回归范围。

 

作为一个测试工程师,不能只是处在黑盒的角度去思考问题,必要的时候,需要掌握一定的代码能力,站在白盒的角度去评判代码的质量。这样才能更有效的保证质量。

 

我把python作为了我的第一门编程语言,最开始是跟着廖雪峰官网上的教程去学习。当入门之后,又开始学习爬虫和web。

 

当你学会一门编程语言之后,再去学别的编程语言,会发现都是有共通的地方。

 

 

四、业务模型

测试只是一个岗位,你除了学习岗位相关技能之外,肯定还是得要特别熟悉公司业务的。

这个只能慢慢积累。

另外,尽量不要跳槽太频繁,试想一下,每年都跳槽的人,他们又怎么可能熟悉业务呢?

面试的时候,面试官很多时候都是从你的简历上,去问一些你的项目经历。试想一下,你不熟悉你测试的业务,你又怎么能答得好这类问题呢?

 

五、工程能力

测试工程师的工程能力也是很重要的,工程能力在我看来,就是解决问题的能力。

遇到问题,你能知道排查的步骤,能够自己定位到bug的位置,甚至知道怎么去改。久而久之,你在团队里面的影响力会越来越大。

▼▼▼

 

以上,是我几年测试职场的一些经验,如果有不对的地方,欢迎在下方留言。

希望能够对大家有所帮助。

这篇关于工作4年,抽空整理了一下,测试开发需要学习哪些技能?希望对你有帮助的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/351857

相关文章

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

Java中的xxl-job调度器线程池工作机制

《Java中的xxl-job调度器线程池工作机制》xxl-job通过快慢线程池分离短时与长时任务,动态降级超时任务至慢池,结合异步触发和资源隔离机制,提升高频调度的性能与稳定性,支撑高并发场景下的可靠... 目录⚙️ 一、调度器线程池的核心设计 二、线程池的工作流程 三、线程池配置参数与优化 四、总结:线程

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

Python自动化批量重命名与整理文件系统

《Python自动化批量重命名与整理文件系统》这篇文章主要为大家详细介绍了如何使用Python实现一个强大的文件批量重命名与整理工具,帮助开发者自动化这一繁琐过程,有需要的小伙伴可以了解下... 目录简介环境准备项目功能概述代码详细解析1. 导入必要的库2. 配置参数设置3. 创建日志系统4. 安全文件名处

MySQL 迁移至 Doris 最佳实践方案(最新整理)

《MySQL迁移至Doris最佳实践方案(最新整理)》本文将深入剖析三种经过实践验证的MySQL迁移至Doris的最佳方案,涵盖全量迁移、增量同步、混合迁移以及基于CDC(ChangeData... 目录一、China编程JDBC Catalog 联邦查询方案(适合跨库实时查询)1. 方案概述2. 环境要求3.

SpringSecurity整合redission序列化问题小结(最新整理)

《SpringSecurity整合redission序列化问题小结(最新整理)》文章详解SpringSecurity整合Redisson时的序列化问题,指出需排除官方Jackson依赖,通过自定义反序... 目录1. 前言2. Redission配置2.1 RedissonProperties2.2 Red

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

Javaee多线程之进程和线程之间的区别和联系(最新整理)

《Javaee多线程之进程和线程之间的区别和联系(最新整理)》进程是资源分配单位,线程是调度执行单位,共享资源更高效,创建线程五种方式:继承Thread、Runnable接口、匿名类、lambda,r... 目录进程和线程进程线程进程和线程的区别创建线程的五种写法继承Thread,重写run实现Runnab