⼯作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
顺带提到⼀点:测试⼯具只是辅助测试的⼀个⼿段,⽬的是要提⾼⼯作效率,⽅便我们快速、持续交付。
测试⼯具最终⼀定是要落地到业务测试上去的,不要为了学测试⼯具⽽学测试⼯具,不要为了开发测试⼯具⽽开发测试⼯具,假如不能给业务带来价值,那做这么多的意义⼜在哪⾥呢?
另外,假如说团队⾥⾯真的必须让你负责开发某个测试⼯具,真的不要马上“下笔如有神”,写代码很容
易,但是设计好的架构⾮常难的。正确的做法是,先调研⼤公司有没有相关的解决⽅案,并看有没有成熟的开源框架可以解决当前的问题。能开奔驰宝马,还要什么⾃⾏车。
学习优秀的测试⼯具,不仅要会⽤,还要懂得架构设计思路和框架底层的实现原理,经验都是这样慢慢积累的。
假如你做出来的测试⼯具,只有你⾃⼰⼀个⼈⽤,那么你想怎么设计都可以;
假如你做出来的测试⼯具想要服务于整个业务部门甚⾄整个公司,那你还得考虑你所设计的测试⼯具的易⽤性和容量。
学javascript前要学什么
测试⼯具还有⼀个重要的要素:测试标准化。
说通俗点,就是要有⼀些关键指标去评估你测试的系统的好坏。
如果没能输出⼀些有⽤的测试指标,⼜怎能证明你设计的测试⼯具是有⽤的呢?
测试进阶的道路上,总会有⼈不明⽩这些道理。知识学不完,反倒⾃⼰先⾃满了。
PS:我⼀般都是从testerHome和Github去挖掘好⽤的测试⼯具,并且尝试着在巨⼈的肩膀上⼆次开发
三、通识技能
很庆幸,我近两年去的每⼀家公司,都是有开发的代码权限的。这样,我能够学到不少开发的技术,能够从diff代码中,⼤致判断测试范围和回归范围。
作为⼀个测试⼯程师,不能只是处在⿊盒的⾓度去思考问题,必要的时候,需要掌握⼀定的代码能⼒,站在⽩盒的⾓度去评判代码的质量。这样才能更有效的保证质量。
我把python作为了我的第⼀门编程语⾔,最开始是跟着廖雪峰官⽹上的教程去学习。当⼊门之后,⼜开始学习爬⾍和web。
当你学会⼀门编程语⾔之后,再去学别的编程语⾔,会发现都是有共通的地⽅。
四、业务模型
测试只是⼀个岗位,你除了学习岗位相关技能之外,肯定还是得要特别熟悉公司业务的。
这个只能慢慢积累。
另外,尽量不要跳槽太频繁,试想⼀下,每年都跳槽的⼈,他们⼜怎么可能熟悉业务呢?
⾯试的时候,⾯试官很多时候都是从你的简历上,去问⼀些你的项⽬经历。试想⼀下,你不熟悉你测试的业务,你⼜怎么能答得好这类问题呢?
五、⼯程能⼒
测试⼯程师的⼯程能⼒也是很重要的,⼯程能⼒在我看来,就是解决问题的能⼒。
遇到问题,你能知道排查的步骤,能够⾃⼰定位到bug的位置,甚⾄知道怎么去改。久⽽久之,你在团队⾥⾯的影响⼒会越来越⼤。
▼▼▼
以上,是我⼏年测试职场的⼀些经验,如果有不对的地⽅,欢迎在下⽅留⾔。
希望能够对⼤家有所帮助。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。