当前位置: 首页 > 后端技术 > PHP

测试工程师是怎么拿到高薪的

时间:2023-03-29 23:47:24 PHP

说到软件测试工程师,很多人会想到那些反复使用软件,在频繁的操作中试图找出错误的低级人员或者软件使用者。其实,这是一个错误的观念。软件测试已经超越了用户发现bug的基本测试阶段。看到越来越多的新人加入测试行业是令人欣慰的,这也说明测试作为一个新兴行业正在不断发展。与软件行业的其他职业——比如软件开发相比,测试行业也显得相对不成熟和混乱,人员水平也参差不齐,薪资差异也比较大。我想说说测试工程师的薪水过万是如何结合个人经验的。测试工程师职级划分以微软为例。微软的软件测试工程师分为三种:测试执行者(BasicSoftwareTester)、测试工具软件开发工程师(SoftwareDevelopmentEngineerinTest)和高级软件测试工程师(Ad_hocTester),测试执行者负责了解软件的功能需求产品,然后根据测试规范和测试用例进行测试,检查软件是否有错误,判断软件是否稳定,属于最低执行角色。测试工具软件开发工程师负责编写测试工具代码,并使用测试工具对软件进行测试;或者开发测试工具服务于软件测试工程师。产品开发完成后,性能测试、提交测试等过程都可以使用开发好的测试工具。这些人的技术要求是最强的,因为他们必须具备编写程序的技能。“因为不同产品的特性不同,对测试工具的要求也不同。比如Office不能用Windows测试工具,SQLServer不能用Office。微软有很多测试工程师负责写测试”而Ad_hocTestet是一个比较有经验的测试工程师,能够找到自己的方向并把工作做好,这需要很强的创造力。而且很多时候需要领导和管理一个单独的测试团队。对应微软在中国测试工程师的职级有:助理测试工程师、测试工程师、高级测试工程师。在中国,月薪过万的优秀测试工程师很多,而高级测试工程师的月薪大多超过2万多,下面说说如何一步步从测试菜鸟晋升为月薪过万的测试工程师。新手,他必须发展自己各方面的能力。首先是了解各种测试流程,并在了解的基础上,转化为自己的知识,以便以后自己解决类似的问题。在测试技巧方面,需要了解有哪些方法可以进行测试,比如有哪些方法可以进行压力测试,哪些工具可以辅助测试。在专业技能方面,操作系统、网络、通信等不同的技术方向,必须在专业上有深入的了解。这三个方面需要同步成长。这里推荐一些我在日常测试工作中常用的工具。这些工具在以后的工作中也是经常遇到的,一定要能够熟练使用和操作。Teamin——国内首款支持Bug版本管理的轻量级协作工具Teamin具有目标管理功能,可以通过目标管理功能实现Bug版本管理功能。Teamin还支持在列表和看板模式之间切换。在列表模式下记录和更新bug任务后,可以切换到看板模式查看任务进度。还可以将错误任务分配给跨项目和团队的开发人员,这有助于测试人员管理错误修复。可以为bug添加任务描述和标签,标签字段和颜色支持自定义。AutoRunner——国内第一款自动化测试工具AutoRunner是国内第一款自动化测试工具,可用于完成功能测试、回归测试、日常构建测试和自动回归测试。是一款具有脚本语言,提供完善的脚本跟踪调试功能,支持IE测试和Windows原生测试的自动化测试工具。TestCenter——一个强大的测试管理工具,可以帮助您:实现对测试用例的流程化管理,对测试需求过程、测试用例设计过程、业务组件设计与实现过程等整个测试过程进行管理。测试用例标准化,意味着每个测试人员都能理解和使用标准化的测试用例,减少测试用例对个人的依赖;提供测试用例复用,用例和脚本可以复用,保护测试人员的资产;提供可扩展的测试执行框架,提供自动化测试支持;提供测试数据管理,帮助用户同意管理测试数据,降低测试数据与测试脚本的耦合度。TAR(TerminalAutoRunner)TAR(TerminalAutoRunner)适用于VT100、VT220等标准应用系统,支持命令行模式和窗口模式(使用Cursors编写的应用程序),支持自动录制脚本,所见即所得的资源和脚本编辑,稳定自动-同步功能。是目前国内最好的银行业务测试工具。TestDirectorTestDirector是全球最大的软件测试工具提供商MercuryInteractive出品的企业级测试管理工具,也是业界首款基于Web的测试管理系统。它可以在您的公司或外部用于管理全球范围内的测试。TestDirector通过将测试管理的所有部分(包括需求管理、测试计划、测试执行和错误跟踪)集成到一个整体应用系统中,大大加快了测试过程。Selenium-浏览器自动化测试框架Selenium是一种用于Web应用程序测试的工具。Selenium测试直接在浏览器中运行,就像真实用户一样。支持的浏览器包括IE(7、8、9、10、11)、MozillaFirefox、Safari、GoogleChrome、Opera等。该工具的主要功能包括:测试与浏览器的兼容性——测试您的应用程序是否可以运行以及在不同的浏览器和操作系统上。测试系统功能-创建回归测试以验证软件功能和用户需求。支持自动记录动作,自动生成.Net、Java、Perl等不同语言的测试脚本。能够做到这一点,相信各位在前辈的指导下从事基础测试工作是没有问题的。迈出了第一步,接下来的事情就容易了。软件测试工程师需要具备的素质由于软件测试还处于开发阶段,还没有上升到理论层面。对包括微软在内的人员的考核没有统一的标准,所以对软件测试工程师的考核只能根据工作实践自然淘汰。软件测试对逻辑思维、学习能力、反应能力都有很高的要求,同时具备严谨的思维和逆向思维也很重要。五六个人的测试组,我发现了一半以上的bug。这与我的数学专业出身密切相关。数学有逻辑思维的训练,要善于找出各种因素。比如证明一个定理,各方面都要考虑。如果条件不满足,则无法证明;但如果被证明是假的,最常见的办法就是找反例。只要有一点不真实,就够了。软件测试也在寻找这个。做测试也要考虑到所有出错的可能性,也会做一些很奇怪的事情,不按常规去做。除了漏洞检测,测试还应该考虑性能问题,即保证软件运行良好,没有内存泄漏,不运行越来越慢;在不同的使用环境下,考虑软件的兼容性同样重要。软件测试与产品的规模也有很大的关系,因为软件的bug往往出现在大型软件的连接处。成为一名软件测试工程师需要对软件持怀疑态度。这是因为开发者喜欢想当然,总是寻找一些有利于自己程序执行的数据。一些开发人员甚至认为不利于程序执行的数据是对代码的污点和亵渎。但是,软件测试需要有策略地准备各种数据,从每一个细节设计不同的应用场景,不要想当然地认为任何数据都是可行的。在专业素质和沟通方面,并不是测试工程师爱挑剔别人。相反,这份工作需要很强的沟通能力。经常和开发人员沟通,言行得体,不要责怪别人,否则会事半功倍。随和的性格和与开发人员的顺畅沟通,对于人和事来说是两个完全不同的问题。如果你能做到这几点,你收获的不仅仅是薪资的提升,还有事业的成长和个人能力的提升。这个时候,你关心的不仅仅是月薪一万多块钱。测试工程师的未来如果你已经开始从事软件测试工作,不要认为软件测试没有发展的潜力和前途。很多人在开始做测试执行工作的时候都会说很麻烦很无聊。他们只是一味抱怨而不是积极学习。他没有看到软件测试背后隐藏的知识。因为有学习可以做这些工作,不学习也可以做这些工作,只是质量不一样。有些人自己学习和参考了很多测试技术和管理知识,公司自然会在接下来的项目中对他们进行培训。软件测试是一个快速发展和具有挑战性的领域。虽然单机桌面软件的测试已经成熟了很多,但是对于互联网时代的到来,包括微软在内的公司还没有一套完整的基于网络的测试体系,还在探索在网络中被攻击的可能性。性太大了,这就是黑客能在互联网上兴风作浪的原因。网络测试是一个新的环境,也是一个很大的挑战。软件测试在未来有很大的发展空间,软件测试工程师的职业道路也充满希望。