在谈到软件测试工程师时,许多人还是会想到那些重复使用软件并试图在频繁的操作中发现 BUG的人,也就是人们常说的按照测试规范和测试案例来测试软件,检查软件是否有错误,判断软件是否稳定。但这是一个很老派和错误的观点。
  由于以上观念,导致软测试工程师在最初的十年中基本上处于较低的地位,认为测试工程师从事的是技术含量不高、随时可以取代的重复工作。
  据调查,国内的软件测试,在互联网刚刚兴起的十多年间被冷眼对待,特别是那些没有配备软件测试人员的中小型软件企业,测试工作往往由开发岗位兼任,通常只进行简单的白盒测试,这种做法在一定程度上等于让用户也充当了测试的角色,造成的后果往往是用户发现一堆问题后进行反馈,然后修改,反复修改造成的后果就是软件难以稳定,用户的耐心也被消磨殆尽,最终导致项目失败。
  近几年来,各大互联网企业兴起,对软件的需求不断增加,对软件的稳定性和性能的要求也越来越高,对软件测试工程师的技能要求也是一个挑战,每一个测试工程师都要根据工作的需要,对自己的水平做相应的调整。
  以下我们就来盘点测试工程师各个阶段所需的技能。
  初试工程师(1-2年测试经验)
  初试工程师为入行1-2年的工程师,进入初级测试工程师的门槛不会太高,一般对专业没有什么限制,有专科学历,熟悉软件测试技术、方法、流程、测试文档等。最好还有 ISTQB的证书,这种证书这些年比较流行,也不难考,业内差不多都认为他是初级测试工程师的上岗证,当然如果入职的公司没有特别要求,不考也无所谓。
  此时测试的是软件的功能方面,如果想要进一步提升,还需要熟悉自动化测试流程、管理、测试框架等,比如功能测试工具 WinRunner、 QuickTestPro,熟悉一些主流的软件工程方法和理念,例如 RUP、 CMM、 CMMI、 XP、 PSP、 TSP等;了解软件工程、软件生命周期模型基础、了解软件配置管理等。
  此外,作为一个测试工程师,沟通能力非常重要,要学会及时地和开发人员沟通,开发人员和测试人员并非站在两极,而是两个角色,一个是软件实现的,一个是软件实现的。
  中等测试工程师(3-4年测试经验)
  要想达到中等水平,也必须3年以下的工作经验,做的工作内容也会有所改变。
  中层测试工程师负责编写软件测试方案、测试文档,共同编制软件测试阶段的工作计划,能够合理地使用测试工具在项目运行中完成测试任务;不再局限于简单的功能测试,还会自动测试、性能测试等。
  自动测试比较简单,学习难度相对较大。性能测试是下一个十年的趋势,所以这一阶段的重点是性能测试,要在这一阶段积累经验,沉淀一定的知识积累、知识深度。因此,在这一阶段,必须深入理解通用的性能测试工具,并在这一阶段培养自己的核心竞争力。
  市场上使用最多的性能测试工具是 JMeter和 LoadRunnner,两者各有长处,但不能否认它们所占的市场份额。
  JMeter: Apache公司开发的基于 Java的压力测试工具。用来做软件压力测试,它最初是为 Web应用程序测试而设计的,后来扩展到其他的测试领域。
  该工具可用于静态和动态资源的测试,如静态文件、 Java小服务程序、 CGI脚本、 Java对象、数据库、 FTP服务器等。JMeter可以用来模拟服务器、网络或对象的巨大负载,在不同压力类别下测试它们的强度并分析总体性能。
  此外, JMeter可以对应用程序进行功能/回归测试,并通过创建脚部断言来验证您的程序返回预期的结果。其优点是易于安装,而且是开源软件,是免费的,所以很多小公司在进行性能测试时都会用到这个工具,但它的缺点也比较明显,它在进行系统性能测试时无法模拟真实情况测试,并且不能做较大的性能项目测试。
  这款软件学习一般可以自己购买书籍自学,难度不会太高,是入门最早进入性能测试领域的工具首选。
  LoadRunner:最早是 Mercury公司的产品。2006年, Mercury被惠普收购成为惠普的产品。2017年,惠普的整个软件部门被全球第七大纯软件公司 Micro Focus收购,成为 Micro Focus产品。
  这种识别和寻找问题的方法是模拟上千万用户实时并发负载和实时性能监控, LoadRunner可以测试整个企业架构。利用 LoadRunner,企业可以最小化测试时间优化性能并加快应用系统的发布。
  使用 LoadRunner的 VirtualUser Generator引擎,该软件的优点是在进行测试时能进行实时监控,以帮助更快地确定和发现问题所在,从而方便地模拟应用系统的负载量。它可以产生代理和虚拟用户来模拟业务流程和真实用户的操作行为。
  然而在他强大的功能下,购买成本高昂,而且这个工具的使用也有一定的门槛。因此,通常购买这种软件的是那些愿意花这笔钱从 LoadRunner厂商那里购买软件的中小型软件开发企业;那些不愿花这笔钱的小型软件开发企业也会去寻找一些破解版工具,因此市场上对会使用 LoadRunner的工程师需求比较大。
  但令人难为情的是,市场上能熟练使用 LoadRunner的测试工程师并不多,因此 LoadRunner厂商 Micro Focus在近两年内也推出了 LoadRunner相关的认证培训,可以在其网站上查询。不懂的地方可以私聊一起交流软件测试。
  资深测试工程师(5年以上)
  这一阶段属于这一行业的最高级阶段,当然也不排除有高薪的存在,下面是一个大概的数据。这段时间一般不会只是简单的进行测试技术的较量,只想自己专心做技术也是不可能的,管理到这个阶段是不可缺少的。
  由于这一阶段你已经达到了一定的水平,你必然会得到提升,你要开始扮演一个管理人员和技术人员的角色。此时除了为自己的团队提供技术方面的指导和支持,还要具备与客户打交道的能力,例如对其进行演示推广等。
  同时您还负责了一些项目的测试,这段时间一方面要不断提供自己的测试技术,还要提高自己的管理能力和沟通能力。毫无疑问,到了这个阶段,我们可以重新梳理自己的事业,按照现状来规划下一步。
  事实上,整体而言,就是五个字——核心竞争力。十年来,测试工程师缺口比较大,而且技术员一般都是需要时间成长的,很多企业已经有缺口,不能自己动手培养,而且成本太高,所以他们肯定喜欢快速上手。
  而测试工程师需要有非常广泛的知识体系,这是基础,在此基础上,我们要想想我们和普通测试工程师不一样的地方,一旦我们发现自己和别人一样,我们就会被别人选择;如果我们有特殊的技能,我们也可以选择别人。当我们规划自己的职业生涯时,我们要时刻提醒自己,我们什么地方比别人高,怎样保持自己的独特性。

软件测试工程师需要掌握哪些技能呢?相关推荐

  1. 人工智能工程师需具备的技能_2020年软件测试工程师需要具备的技能--需要学什么--面试题有哪些(灵魂拷问)...

    一.2020年软件测试行业的现状 2020年开年,一不小心,[新冠]黑天鹅从头上飘过,持续影响全国乃至全球的经济,软件行业公司也迎来了不少的冲击,那么一直打算入行软件测试行业,或者已经在软件测试行业耕 ...

  2. 2020年软件测试工程师需要具备什么技能--需要学哪些

    目录:导读 一.2020年软件测试行业的现状 二.2020年软件测试行业的趋势 三.只会功能测试的测试工程师已经是新时代的测试文盲 四. 测试行业的薪资在提高 五.那么2020年作为一名初级软件测试工 ...

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

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

  4. 一个优秀的软件测试工程师需具备的技能

    今天早上看到一篇文章写的很好,软件测试工程师的地位在圈里的地位低下,甚至有些技术比较厉害的开发工程师觉得软件测试工程师没有存在的必要,而作为软件测试工程师的一员如何保持自己的技能和竞争力哪?下面简要介 ...

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

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

  6. 软件测试工程师规划需要学什么技能?资深测试分析总结......

    目录:导读 前言 一.Python编程入门到精通 二.接口自动化项目实战 三.Web自动化项目实战 四.App自动化项目实战 五.一线大厂简历 六.测试开发DevOps体系 七.常用自动化测试工具 八 ...

  7. 软件测试工程师的“初—中—高”晋升之路

    前言 因太多小伙伴询问风风零基础如何转行软件测试.软件测试该学什么.中级和高级测试需要掌握哪些技能之类的问题. 为了让大家系统的了解软件测试,掌握合理.正确的学习方法和目标,风风决定制作一个学习 &a ...

  8. 软件测试职业需要具备什么,新人要想学软件测试工程师需要具备哪些职业素质...

    本文分享的是:新人要想学软件测试工程师需要具备哪些职业素质,天我们在这里给大家做个解答.希望可以帮助到相关的同同事. 一.专业技能 计算机领域的专业技能是测试工程师应该必备的一项素质,是做好测试工作的 ...

  9. 软件测试大专_【编测编学】领跑计划二期,快速铸造软件测试工程师

    点击上方蓝字关注我们! 领跑背景 越来越多的人想要进军IT行业,但是又碍于行业岗位较多,技术要求比较高,所以很多人都想要从事软件测试行业,但是苦于无门,找到我们小编老师,咨询如何快速学习软件测试?为了 ...

  10. 【原创】软件测试工程师基础技能+

    软件测试工程师,工作之余应该看些什么.学些什么? 通常情况下一位软件测试工程师需要具备哪些必须的技能? 最佳隐形技能 ★★开发语言知识背景 对被测试对象使用的语言有一定的了解,这样有助于测试工作的开展 ...

最新文章

  1. C++ 使用copy_if获得数组vector掩膜
  2. stella forum v1.2的开发报告1-spl数据操作层的使用
  3. python开发好学吗-Python是不是很难学?
  4. 【Linux抓包工具之tcpdump】
  5. svn 本地仓库使用
  6. RabbitMQ Fanout
  7. 回溯算法和贪心算法_回溯算法介绍
  8. 微服务跨数据库联合查询_MySQL数据库联合查询
  9. 深入浅出Lua虚拟机
  10. C++调用函数模仿数字钟表
  11. 论 静态方法@staticmethod 类方法@classmethod @property属性
  12. Python编程练习:使用 turtle 库完成六边形的绘制
  13. 如何安装mysql 8.0.12_基于Windows安装MySQL 8.0.12图文教程
  14. Bailian2749 分解因数【递归+枚举】
  15. 导入资料的预览与修改
  16. python 路径拼接_python路径拼接os.path.join()函数的用法
  17. Android官方模拟器安装
  18. python中的ln函数_python中的对数log函数表示及用法
  19. 周集中团队Nature子刊中网络图布局的R语言可视化复现
  20. keep-alive和activated

热门文章

  1. dedecms后台界面更改
  2. 系统管理员设置了系统策略禁止进行此安装怎么解决
  3. 中国最后的隐世美景(转)
  4. 西瓜书-机器学习5.3 误差逆传播算法
  5. ViewGroup的LayoutParams理解
  6. php中的eof是什么意思,在C++中eof是什么意思?
  7. 工作多年,分享16条实用职场经验给你
  8. IT售前工作职责和流程
  9. Android模拟器特征码比对工具
  10. 设计模式基础-UML类图 (转自https://www.jianshu.com/p/0cd7df8a7789)