交叉验证 验证集和测试集
自从我从开发角色转到测试工作以来,我一直在尝试建立可证明我的测试职业未来的技能。 为此,我将参加更多的讲座和会议 ,并观看有关测试的网络研讨会。
面向未来的意思是什么? 我想确保自己具有正确的技能,要么专注于一个特定领域,要么收集一些关键领域的广泛知识,这些知识领域可能在现在或一两年内流行或新兴。 即使在过去的十年中,技术也发生了很大变化,所以我认为这是您应该了解最新趋势的领域。
今年早些时候,我观看了一个名为2018 Test Automation Trends的网络研讨会。 我相信这些天所有测试人员都听说过或正在使用自动化工具。 他们可能已经听说过有人担心自动化使人工测试仪过时了(绝对不是这样 )。
但是自动化并不是万能的。 这不是唯一可以帮助您确保测试职业未来发展的领域。
自动化只是越来越受到关注的另一个测试领域。 显而易见的是测试的重要性,以及不良产品如何影响最终用户和股东。
尽管这次网络研讨会是关于自动化趋势的,但是最后,专家们被问到他们认为在2018年需要注意的事情。我相信,如果您想在这一领域保持领先地位,那么您也需要向前迈进。
因此,这是这些专家建议在2018年重点关注的主题,也是我认为是开始对自己进行测试的未来证明的好领域。
区块链
区块链是一种同时存在于许多地方的数据结构。 您只能添加到区块链。 不允许删除或更新。 区块链中保存的数据是去中心化的,这意味着网络中每台机器上都存在现有区块链的副本。
可以在该网络中的每台计算机上看到对区块链的添加,并且交易以密码方式链接到先前的交易。 因此,很难进行欺诈交易。 为此,某人将不得不将其历史重写为时间的开始,这是非常耗费资源的。
使用区块链应用程序,一旦将合同部署到区块链,就永远无法更改。 因此,您必须非常有信心执行的测试具有很高的质量,并且涵盖了应该涵盖的所有内容。 没有回滚。
有关更多信息,我写了一篇博客文章向测试人员介绍区块链应用程序 。 阅读并了解您对区块链的看法。
了解区块链技术以及如何对其进行测试将有助于确保您的测试职业未来。 它将帮助您进入当前都使用该技术的不同领域,例如银行业和汽车行业。 它将为您提供有关工作地点的更多选择。
合同和API测试
合同和应用程序编程接口(API)测试专注于测试服务和微服务的API端点。
有不同类型的服务。 一个示例是Web服务,它为应用程序和系统(如数据库,移动应用程序和其他Web服务器)提供了一种使用端点通过Internet与服务进行通信的方式。 端点是您的HTTP客户端与之交互以便从该URL访问数据的URL。
测试端点时,请确保使用正确的参数或不正确的参数发送请求时,系统以预期的方式运行。 例如,如果您向端点发送三个参数,而端点需要四个参数,则您期望返回的响应带有400状态代码 。
服务体系结构被许多行业广泛采用,因为它允许以更加模块化的方式编写代码。 这使项目易于扩展,也将意味着系统之间的连接不紧密。
作为测试人员,您需要确保可以彻底测试端点和合同。 错误的请求可能意味着您的应用程序在最佳情况下不会以正确的状态代码或消息响应给用户。 但是在最坏的情况下,它可能导致应用程序安全性方面的漏洞。
由于测试工作需要更多有关使测试代码自动化的不同方法的知识,因此学习如何实施API测试和执行合同测试将有助于使您的测试职业适应未来。 您将成为自动化特定领域的专家,并且随着使用服务体系结构构建更多的应用程序(尤其是基于Web的应用程序),将非常需要您熟练地测试集成层的技能。
移动测试
对于年轻人和老年人来说,智能手机和平板设备已成为世界各地家庭的主要产品。 如今,拥有经过良好测试的应用程序与经过良好测试的网站一样重要。
2005年, Google更改了搜索结果排名算法,这样,如果网站没有响应,该网站在其结果列表中的排名就会降低。 从那时起,对移动测试的奉献和精益求精就大大增加了。
我们首先开始手动测试移动网站和应用程序,但是由于Android的碎片化以及所有移动OS的年度发布,自动化移动测试的需求增加了。 由于这种需求,已经发布了许多移动测试框架来帮助测试人员。
Appium是基于Webdriver技术构建的移动测试框架。 它是由Zoosk的测试经理Dan Cuellar于2013年创建的,他发现iOS产品上通过测试的时间过长。 Appium允许他像使用Webdriver自动化网站一样轻松地为iOS编写自动化测试。
我最近参加了在伦敦举行的第一届Appium会议,以了解如何利用Appium。
现在知道如何有效测试移动应用程序和网站是一项全职工作,因此使用诸如Appium之类的工具来帮助移动测试人员进行全面测试。 移动设备现在无处不在,应用程序的发展只会增长,因此我认为增加一项强大的技能可以增强您的测试技能。
人工智能(AI)
AI是脚本,机器或任何非人为的东西执行可能会或可能不会很复杂的任务的地方。
在AI中,存在许多不同的领域。 机器学习(ML)现在变得越来越普遍。 机器学习是指AI根据先前生成的数据为您提供答案或数据。 它利用收集到的所有信息,并根据此历史数据对未来的结果或决策做出预测。
机器学习和人工智能的一个著名例子是Google DeepMind公司的AlphaGo Zero软件,该软件自学了玩Go语言。 在三天之内,它就击败了之前的版本(该版本击败了18届世界冠军李世-)。
在测试中,我们可以使用ML通过查看历史测试结果数据来预测测试用例的结果。 当系统的某些部分已更新时,它可以用来预测哪些测试用例应优先于其他测试用例。 它可以告诉您上次运行测试用例的时间,因此您可以确定哪些测试用例最重要。
我们一直在研究如何提高效率,节省时间并更快地完成工作。 人工智能可以提供帮助,因此,了解其优缺点以及如何将其用于帮助您的测试事业是一个好主意。
我们正处于AI的早期阶段,如何在日常测试活动中利用它,从而帮助我们实现高质量的产品。 确保您在软件测试中紧跟AI的发展和应用或处于领先地位,这将有助于巩固您在该领域的专业知识,并帮助您确保事业的前途。
Docker和容器
容器使我们能够实际上在同一位置存储许多不同的系统。 这意味着,如果一个环境需要网站前端,服务器和数据库才能运行,则所有这些都可以存储在同一位置。
对于测试人员,容器提供了一种快速的解决方案,用于部署稳定,可快速设置的测试环境,以及暂存或生产环境的镜像副本。
了解您的环境所基于的体系结构的优缺点将意味着您知道如何影响您的应用程序,以及某些类型的测试是否将更适合于确保更高水平的质量。
有关更多信息,我写了一篇有关容器以及如何在当前公司使用它们的文章。
了解Docker和容器技术以及如何对其进行测试,将有助于确保您的测试事业永不过时。 由于它允许快速部署和扩展基础架构,因此已被不同行业的许多DevOps团队广泛采用。 这也意味着您在寻找下一个工作机会时会给自己更多选择。
我的一些建议
在听取了专家的建议之后,我提出了一些其他领域的简短清单,我认为这些领域肯定会有助于增强您的测试技能库。
调试
调试是您逐步查找代码以查找缺陷的地方。 这不是每个开发人员或工程师都喜欢做的事情。 耐心阅读代码可能是一项被忽略的技能。
如果您知道问题出在哪里以及在哪里,调试可能会花费几分钟,但有时可能要花几天的时间才能弄清楚,特别是如果代码库由数百个文件组成的话。
调试还使您可以练习阅读代码,这将帮助您对逐步学习的代码库有更深入的了解。
此技能对开发人员有用,并且对测试人员来说很有用,可以使他们适应未来的需求,尤其是当您以任何能力开发测试代码时。 但是由于不是经过积极培训的人,所以您应该将自己的时间投入到调试代码中,以进一步缩小缺陷在代码库中可能出现的位置。
您可以通过在发生错误时读取应用程序的日志文件并在代码库中进行跟踪以查看是否可以对其进行跟踪来做到这一点。
有关如何提高调试技能的更多信息,请阅读防弹调试策略的5个步骤。
增强现实,混合现实和虚拟现实
为用户提供上述每种体验的设备已经存在多年了。 但是在2017年,我相信它们被更多的消费者接受并采用。
随着这项新技术被越来越多的公众所采用,在这些领域对有经验的测试人员的需求将会增加。
由于它还是很新的东西,因此在框架或测试标准方面还没有什么可应用的,仍然是时候让人们迈出第一步并创建每个人都可以使用的东西了。
云计算
云计算是使用即付即用格式通过互联网上的云服务平台按需交付IT资源(如计算,数据库存储和应用程序)的工具。
像Amazon Web Services(AWS),Google Cloud Platform和Microsoft Azure这样的平台是目前可用的一些选项,而AWS在竞争中遥遥领先 。
那么,作为测试人员,您为什么要关注您的应用程序所基于的技术?
好吧,这是与我之前提到的容器相同的原因。 如果您知道您的应用程序所基于的技术,那么您应该能够理解它的优缺点,以及这将如何影响您的应用程序。
因此,您将能够更好地测试您的应用程序,并帮助弥补可能利用的安全性漏洞,确保其性能,并确保最终用户在使用您的产品时拥有丰富的经验。
您如何证明未来?
当您在技术部门工作时,能够退一步并评估行业中正在发生的事情,正在出现的事情,可能正在消失的事情以及将要保留的东西的大图将告诉您很多东西。
它会清楚地告诉您应该在哪里投入新技能,以及可能需要增强的技能。
如果您想做更多事以适应未来的发展,为什么不自己尝试在其中一个领域进行演讲,阅读博客,收听播客或观看YouTube专家视频。 您还可以免费订阅AWS并尝试使用Elastic Container Service以获取有关容器的基本知识。
我希望这篇文章为您提供了2018年测试领域需要关注的基础。 有很多选择。 因此,不要等待-开始。
翻译自: https://www.javacodegeeks.com/2018/06/future-proof-testing-career.html
交叉验证 验证集和测试集