混迹于软件测试行业8年有余,这么长时间了,一直想写一篇关于软件测试的经验分享的文章,但苦于工作原因迟迟未下笔。最近终于有了些闲余时间,遂决定把自己的心路历程及所感所想记录下来,与各位同行共勉。

以我多年的工作经验来看,软件功能测试是基础,未来发展方向主要有两方面(技术专家、测试管理)。

一、技术专家发展路线有如下三方面,可供参考:

1.从功能测试到性能测试专家:性能测试专家需要掌握一门编程语言、性能测试工具、系统架构、网络、数据库、服务器硬件等知识。性能测试分为前端性能测试(单用户操作系统响应速度),后台性能测试(多用户并发场景)。后台性能测试包括三个阶段:测试(性能测试场景分析设计、脚本编写或者录制、测试执行)、分析(根据性能测试目标分析测试数据,找出性能瓶颈)、解决方案(根据性能瓶颈,给出系统调优解决方案);

2.从功能测试到自动化测试专家:自动化测试专家可以向自动化测试工具、框架开发方向发展,即测试开发工程师。自动化测试工程师需要掌握一门脚本语言(如,Python),掌握一些测试工具(如,webdriver、testng、appium等),web前端知识(html、jquery、css等);

3.从功能测试到安全测试专家:安全测试对测试人员要求更高,要想在这条路上走的更远,建议是从事过开发、或者是对计算机、信息安全非常有兴趣的人去深入研究这方面的技能、知识。普通测试人员只能做比较简单的安全测试,无法深入;

二、测试管理方面发展,需要具备以下知识,仅供参考:

1.对软件测试流程流程、质量管理过程、项目管理要非常熟悉;

2.对功能测试、用例设计、专项测试技术有要了解(即使走上管理岗位也需要这些知识,不然无法服众);

3.良好的沟通能力、人际关系处理能力、有责任心、能抗压;

4.懂得如何管理团队,如何提升团队的能力,如何激发团队成员的工作热情等

三、软件测试工程师必备基础技能汇总

上面我总结了下软件测试的两大块发展方向,下面再来说一下成为一名合格的软件测试工程师需要具备哪些技能?

1、最佳隐形技能

★★开发语言知识背景
对被测试对象使用的语言有一定的了解,这样有助于测试工作的开展

计算机语言都具有一定的共通性,只要你深刻了解了一门语言,其他语言也不是难事

★★★数据库的熟悉使用
能够自行编写大部分的SQL语句来辅助测试(SELECT,DELETE,UPDATE),对于存储过程可也多了解,在无程序辅助的情况下,它是制作数据的最好帮手
主要在日常测试工作中,提取数据库中的数据验以证测试结果的有效性、制作测试数据、批量修改测试数据等

★★★被测试对象业务的熟悉度
对于被测试对象业务流程的了解越多、越深入越有利于测试工作的开展

2、测试理论

★★软件测试的基本概念,及软件测试存在的理由
不需要死记硬背,但能知道软件测试是做什么

★★★★软件测试的整体流程
能详细说出软件工程中完整的软件测试生命周期,及一些软件测试模型(双V,V模型)

★★★软件工程中软件生命周期
软件工程中软件生命周期的主要过程,以及软件测试在生命周期中的阶段及作用

★★★★★测试用例设计的几大基本方法
做到对于件测试中经常使用的测试用例设计方法能脱口而口,同时结合实际工作中的例子进行描述、解释

★★★★★软件测试的几大类型能
根据实际项目,很快地说出某个被测试对象需要测试哪些类型

★★★★★缺陷管理策略
缺陷的完整生命周期,有可能出现的一些其他环节
一个缺陷需要包含的内容,不可重现缺陷、缺陷不被认可等问题出现时的处理策略

★★★★★白盒测试(仅针对白盒测试)
★★★★★对代码有足够的驾驭能力
★★★★★熟悉各种白盒测试用例设计方法,了解各个方法的优劣,根据业务需求熟悉的使用最恰当的方法进行测试用例设计

3、测试工具的使用

★★★★★缺陷管理工具
Jira、Mantis、Bugfree、QC(TD)
JIra、Mantis、Bugfree都为开源软件
缺陷工具的基本使用本身简单,对于未使用过的缺陷工具,也要能快速的上手使用

★★需求管理工具
Rational RequisitePro
Cloudtopo Topo
需求管理工具,一般用于大中型项目的需求管理

★★自动化工具
★★自动化测试基本流程
能清楚的说出自动化测试的基本流程,及自动化工具的基本原理

★★自动化测试工具
QuickTest Pro(QTP) from HP
QTP为目前市场上很成熟的一款产品,以其强大的功能而占有主要的市场份额,但因价格昂贵,不少公司无法接受
SELENIUM、WATIR 开源自动化测试工具
对于QTP昂贵的价格且不开源,开源的自动化工具可谓备受青睐

★★自动化测试脚本设计
说自动化测试,其实主要的重点在测试脚本的设计
设计脚本需要有一定的语言功底,如QTP默认使用的是VBS脚本,如果你对VBS熟悉,那么这款工具你可以算掌握了1/3

★自动化测试框架了解、设计
测试框架就像大厦的基石,后续的扩展、丰富都要以此为基础,自然作为自动化测试的难点
刚接触自动化测试的同学可多了解

★★性能测试工具
LoadRunner(LR) from HP
QA Load、WebRunner

★★性能测试原理及流程
★★性能测试脚本录制、调优
性能测试的重点工作之一录制、调优脚本
需要有一定的语言功底,如LR默认使用的是C语言,有C语言功底的同学学起来自然是有百利而无一害

★★性能测试场景设计
性能测试的又一个重点场景的设计
场景的设计是否正确、合理,直接关系到最后性能测试结果的有效性

★★性能测试结果分析、性能分析(重点)
性能测试中的重中之重,也是性能测试的目的
通过性能测试结果数据,分析被测试对象中存在的问题,对被测试对象做出相应的调优后重新测试,直到被测试对象的性能参数达到要求。

4、计算机知识

★★★★★了解并能使用常见操作系统
Windows系列、Mac系列、Linux系列

★★TCP/IP协议
知道TCP/IP协议的内容,以及对应层的功能

★★★★常用快捷指令的使用
在日常工作中能很快的使用运行中的快捷动作,如notepad,mspaint,ipconfig,regedit等
熟练计算机中各种键盘操作(键盘操作的效率至少是鼠标的3倍)

四、总结

以上就是我的一些经验之谈,对于在软件测试中依然找不到方向的朋友,个人建议如下:

1.对技术有高度热情、喜欢学习新知识的人,选择一个专项测试领域,不断积累,最后走测试专家路线;

2.善于沟通、有想法、思路清晰,内心不甘平庸的人,可以往测试管理方向发展。

发展方向想清楚了,就需要用行动去积累其岗位所需的知识、技能,机会总是留给有准备的人。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

软件测试工程师必备的27个基础技能【快来看看有没有遗忘的】相关推荐

  1. 专业软件测试工程师必备之软件测试要学什么技能?

    软件测试,作为软件开发最后的关键程序,软件工程师的要求则成为必然.所以作为一名合格的软件测试工程师,则要求掌握程序的方方面面的,虽然不一定各个方面都要精通,但是必须做到了解熟悉.软件测试工程师要学习的 ...

  2. 软件测试工程师必备软技能:结构化思维

    今年是入测试行业的第十年,回想在这十年职业生涯中,来来往往也接触过形形色色的人.在跟不同的人一起工作的过程中,我会经常产生一些困惑,比如: - 面对同样复杂的测试任务,有些人可以在一天之内梳理出解决方 ...

  3. 高级软件测试工程师必备知识与技能

    高级软件测试工程师应该具备哪些技能和知识,今天小姐姐带你了解相关技能与知识. Linux环境搭建及命令 1.虚拟机的搭建与使用 搭建虚拟机的操作步骤 搭建虚拟机系统环境 虚拟机的基本操作与使用 2.L ...

  4. 软件测试工程师必备技能:谈谈软件项目中的评审

    前言:你一定听说过这样的一句话:每天不是在开会,就是在开会的路上.这句话其实是对会议多的一种调侃,同时也有一些反感.可以大家想没想过,为什么我们会对一些会议反感?仔细想一想,这些会议是不是都是高效的? ...

  5. 15个最好的性能测试工具(软件测试工程师必备)

    在软件测试日常工作中,大家接触得比较多的性能测试工具有LoadRunner和Jmeter,这里整理了web应用程序性能和负载压力能力的最广泛使用的性能测试工具的综合列表. 这些负载测试工具将确保您的应 ...

  6. 自动化测试工具有哪些_软件测试工程师要具备哪些能力和技能?

    软件测试工程师,是老板与开发人员之间的桥梁.因此,除了具备测试技术.测试文档撰写能力外,还需要具备一定的销售沟通能力,业务熟悉能力等. 那,如此全能岗位,需要具备的能力到底有哪些呢? 首先,认真负责, ...

  7. 软件测试工程师必备技能——Linux基础知识

    1.Linux理论知识 Linux是一套免费试用和自由传播的unix操作系统:是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件.应用程序和 ...

  8. 成为一名软件测试工程师必备的技能,除了技术还需天赋。。。

    作者:天顺 通用技能上: 1.基本计算机知识(操作系统,数据库,通讯协议原理,熟悉至少一门编程语言) 2.基本软件测试知识(各种测试理论,测试方法论,测试用例编写,缺陷界定标准,软件质量评估) 3.简 ...

  9. 视频专栏《软件测试工程师 必备 之 Jenkins / Linux / Git》基础视频

    这是老徐这些年陆陆续续,录制的一些基础入门视频 . 适合入门,适合看文章无法入行的同学 . 如果已经很熟悉了,视频对你的价值不大(自己看文章 + 实操,更高效):

最新文章

  1. mysql8.0最低需要多少内存_MySQL8.0内存相关参数介绍
  2. android 显示进度的按钮
  3. Nginx使用Expires增加浏览器缓存加速(转)
  4. 我对STL的一些看法(二)认识vector容器
  5. EF CodeFirst 如何通过配置自动创建数据库当模型改变时
  6. 什么是目标检测?有哪些应用?终于有人讲明白了
  7. 图论 —— 二分图 —— 二分图判定
  8. js中html标签变文字颜色,javascript – 更改contenteditable div中文本的颜色
  9. php调用shell的方法
  10. python实现dos攻击_python 实现DoS攻击
  11. 关于React Native init 项目时候速度太慢的解决方法
  12. 飞机选座——附:东航320选坐攻略
  13. 【linux】分卷压缩
  14. JS数据结构与算法学习笔记大全 (温故而知新,可以为师矣。)
  15. 微表情数据集汇总(全)
  16. UE4 无需切线空间应用凹凸贴图
  17. Lua 颜色值转换 -- Color
  18. JavaScript—有关如何实现全选/全不选、检查是否选中了复选框。
  19. 金蝶K3开发-工业单据显示物料图片
  20. Kahan's Summation Formula原理—它是如何处理大数吃小数的

热门文章

  1. 35.搭建NFS服务器
  2. iconfont字体图标下载
  3. 矩阵开根号_CVPR2018论文阅读-Faster MPN-COV:迭代计算矩阵平方根以快速训练全局协方差池...
  4. 大牛深入讲解!java语言程序设计第二版答案朱庆生
  5. 记一次apple实体店耳机更换
  6. 微博内容爬取——陈一发儿微博实例
  7. 三十而立,记录我的土木转行之路思考
  8. 正则表达式获取图片名称
  9. 「JVM 系列」- JVM的类加载机制
  10. 关于移动支付,美国零售商能从中国这里学到什么?