职言 | 编码是测试自动化职业生涯的关键:你准备好了吗?

这篇具有很好参考价值的文章主要介绍了职言 | 编码是测试自动化职业生涯的关键:你准备好了吗?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Verily Life Sciences是一家健康管理公司,前身为Google Life Sciences。2015年,谷歌改组为Alphabet,业务调整之后,谷歌原有的健康业务分离出来。同一年,Google Life Sciences也更名为Verily,目前该公司已经获得包括Alphabet、淡马锡、银湖资本等多轮投资。

本文作者为该公司一名软件测试工程师,希望他的职业经历和经验能够给大家带来启发,以下为作者观点。

我在研究自动化开发方面投入了大量的时间和精力,但我成为自动化开发者的时间并不长。我花了很多年时间打基础,现在我正在为一个Appium/Java移动测试自动化框架做概念验证。

对我这个试图进入自动化领域的手动测试员来说,最大的警醒是,自动化不是依靠学习单一的测试工具,就像以前Rational Rose、Segue SilkTest和Mercury Quick Test Pro所主导的那样。现在,这要困难得多。为了在测试自动化方面做得够好,你必须学习如何编码。

我并不是说所有的QA工程师都必须知道如何编码。但是,如果你是一个试图进入测试自动化领域的手动测试员,你的时间可能更应该用在学习编程语言,这比学习自动化工具的来龙去脉更合适。

我自学了如何编码,并获得了作为自动化开发人员的工作,你也可以。所有这一切只需要五个比较难的步骤。

为什么要学习自动化开发?

传统上,质量保证工程师的角色一直是一个非编码的角色。作为一名软件质量保证工程师,你在软件开发团队中的主要角色是终端用户的代言人,通过客户的眼睛来看待产品。你需要像终端用户一样使用和检视产品。这个过程就是一次探索性测试,正如Cem Kaner在Testing Computer Software一书中的描述:

“对某一输入的预期边界是什么?如果你超越这些界限,给出意想不到的或非正常的响应,只是为了看看被测试的系统将如何表现,会发生什么?”

通过自动化回归测试套件,你将有更多的时间来探索你正在测试的系统以及它的行为方式。

在波士顿的一个有关测试话题的咖啡座谈会上,我问道:“希望转向自动化的手动测试人员如何学习如何编码?” 这很快演变成了另一个问题:QA工程师是否应该学习编码?

The Mob Programming Guidebook的作者Llewellyn Falco回答说:“每个人都应该知道如何编码!”。这就像阅读和写作。你可能没有写过一本书,但你应该知道如何阅读和写作"。

我同意。当我在学校学习软件工程时,一旦我开始学习更多关于商业分析师角色、数据库开发和软件开发的知识,我的测试能力就得到了提升。因此,我建议以下五个步骤。

第一步:选择一种语言,任何语言都行

你选择什么作为你的第一个编程语言并不重要。如果你想进入自动化测试领域,Java、JavaScript、Python、甚至Ruby都是不错的选择。下面是一个简单的介绍:

Selenium WebDriver/Java是企业软件测试中最受欢迎的组合,也是需要了解的一种很好的全能语言。但要注意的是,尽管最新的版本在很多年前就出现了,很多公司仍在从Java 7过渡到Java 8。

JavaScript与许多不同的JavaScript前端框架配对很好,比如VueJS。Protractor是由谷歌创建的,用于测试AngularJS应用程序。Nightwatch.JS和SeleniumJS与Node.JS和服务器端JavaScript配对良好。也可以尝试学习E6,即最新版本的JavaScript。

有了Python,你可以快速地把能用的东西组合在一起。使用Python的Selenium不那么冗长。

Ruby是另一种容易学习的语言。当Ruby on Rails处于鼎盛时期时,开发者只要想创建一个简单的网络应用就会使用它。但是在自动化领域,似乎没有那么多的需求了。

第二步:编码,编码,编码

不久前,我还是一个没有工作的软件测试员,没有多少编码经验。我在研究生院时有一些编码经验,但那是十年前的事了。所以,为了重新适应编码,我研究了免费电子书Learning Python the Hard Way中的所有例子。如果你需要大量的手把手指导,这本书就很适合你。

使用Python也有帮助,因为该语言的启动时间相对较短。然后我购买了Java for Testers,以使我更容易掌握Java编程语言。“邪恶”测试员Alan Richardson的任何作品都是金子。

但是,仅仅阅读关于编码的文章是不够的。你必须编码! 我记得当我第一次开始尝试学习Richardson的Selenium WebDriver in Java在线课程时。我到处听讲座,看视频,甚至在火车、飞机和地铁上。但由于我没有和老师一起实际编码,所以没有沉淀下来。

当你在学习在线课程时,如果视频显示教师在IntelliJ中输入代码,你也应该这样做。在我的例子中,我把屏幕的左半部分设置为在浏览器中播放视频,而在右半部分我打字并试图运行代码示例。

如果你仍然需要更多的指导,可以考虑报名参加大规模开放式在线课程(MOOC)。许多组织提供免费或廉价的在线课程。以下是几个例子:

edX,Mooc.org的一部分,将自己描述为 “向世界各地的学习者提供来自世界上最好的大学和机构的高质量课程”。

可汗学院,“提供练习题、教学视频和个性化的学习仪表板,使学习者能够在课堂内外按照自己的节奏学习”。

Udemy,“一个在线学习和教学的全球市场,学生们通过学习专家讲师讲授的超过45,000门课程的广泛资料库,掌握新技能,实现自己的目标”。

你在寻找有关Java编码的信息?EdX、哈佛和麻省理工学院的MOOC提供了三个新的Java入门课程。

第1部分:开始用Java编码

第2部分:写好代码

第3部分:基本数据结构和算法

如果你是一名移动测试员,了解安卓应用开发的内部运作将有助于你弄清如何设置Appium。我还推荐谷歌Android开发者网站,它可以:

引导你安装Android Studio,一个用于PC或Mac的集成开发环境(IDE)。教程引导你了解事情如何运作。

提供免费课程,如Android初学者系列。

告诉你如何创建你的第一个应用程序。

虽然训练营不会让你成为一名程序员,但许多开源工具、语言和框架的文档都可以在网上找到,免费的在线教程也是如此。

第三步:创建GitHub账户并探索

如果你还没有,请注册一个GitHub账户。GitHub是一个神奇的地方,在这里你可以寻找最新的开源自动化工具集,并从工具的创造者那里获得指导和最新的信息。他们还提供样本测试,所以其他人可以学习他们的工具集。你会发现这样的工具:

SeleniumHQ,它有关于这个头号GUI自动化工具在C#、JavaScript、Java、Ruby和Python中的所有最新绑定的文档。

Appium,用于移动应用的Selenium WebDriver

Protractor,一个基于Node.JS的自动化工具,你可以用来帮助测试AngularJS应用程序。

REST Assured,基于Java的框架,帮助你测试RESTful APIs。

GitHub的美妙之处在于,只要你允许GitHub仓库中的代码公开展示,它就是完全免费的!

你是否有任何代码样本或项目想纳入在线编码组合?把它们上传到GitHub,并在简历中加入你的账户链接。GitHub有一个广泛的帮助部分,介绍如何创建一个账户并上传你的代码。你还会了解到代码是如何被处理的,从分支到合并再到创建拉动请求。

第四步:写一个快速和简单的自动化测试

现在是时候通过在你最喜欢的网站上编写你的第一个自动化测试并将结果放在GitHub上公开了。一旦我掌握了窍门,我就开始四处寻找可以自动化的东西,比如Dave Haeffner的The Internet,这是一个为初级自动化开发者创建的实践测试网站。

你有自己创建的自动化解决方案吗?分享它,并获得反馈!

第五步:认为你够了解?继续练习。

最重要的是一旦你被聘为测试自动化工程师,不要停止练习编码。学习是一个永无止境的旅程。

每当我学到一些有价值的东西,我就会想出一些示例代码,然后尝试写一些代码演练,放在我的博客上。我一开始很简单,以The Internet作为我的测试站点。然后,经过几个月的工作经验,我试图找出如何使亚马逊的网站自动化的方法。从那以后,我开始修补API测试,先是用Apache的HTTP组件,然后是Postman,最后是用Java REST Assured库。目前,我正在摸索Appium Desktop,一个我想用来探索移动应用程序的工具。

剩下的就看你自己了

我可以用第一手经验告诉你,如果你经历了这个过程,你更有可能被雇用为自动化开发人员。为什么?因为你可以向雇主证明最重要的技能:你是一个愿意自学成才的人。


资源分享

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

职言 | 编码是测试自动化职业生涯的关键:你准备好了吗?
现在我邀请你进入我们的软件测试学习交流群:746506216】,备注“入群”, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路。

喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一 键三连哦!
职言 | 编码是测试自动化职业生涯的关键:你准备好了吗?文章来源地址https://www.toymoban.com/news/detail-414852.html

到了这里,关于职言 | 编码是测试自动化职业生涯的关键:你准备好了吗?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Selenium+python怎么搭建自动化测试框架、执行自动化测试用例、生成自动化测试报告、发送测试报告邮件

    本人在网上查找了很多做自动化的教程和实例,偶然的一个机会接触到了selenium,觉得非常好用。后来就在网上查阅各种selenium的教程,但是网上的东西真的是太多了,以至于很多东西参考完后无法系统的学习和应用。 以下整理的只是书中自动化项目的知识内容,介绍怎么搭

    2024年02月05日
    浏览(49)
  • 【自动化测试】几种常见的自动化测试框架

    在软件测试领域,自动化测试框架有很多,这里主要介绍几种常用的自动化测试框架。 pytest 是 Python 的一种单元测试框架,与 Python 自带的 unittest 测试框架类似,但是比 unittest 框架使用起来更简洁,效率更高。主要有以下几个特点: 简单灵活,容易上手。 支持参数化。 能

    2024年02月07日
    浏览(33)
  • selenium 自动化测试—如何搭建自动化测试环境?

    🍅 视频学习: 文末有免费的配套视频可观看 🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 最近也有很多人私下问我,selenium学习难吗,基础入门的学习内容很多是3以前的版本资料,对于有基础的人来说,3到4的差别虽然有,但是不足以影响自己,

    2024年02月19日
    浏览(46)
  • 自动化测试(三):接口自动化pytest测试框架

    API:Application Programming Interface 接口自动化按照自动化的工具可分为 基于 接口测试工具 的接口自动化 eg1:Postman+Newman+git/Svn+Jenkins(基于Javascript语言)接口自动化 Postman :创建和发送 API 请求,并对响应进行断言和验证。 Newman : Postman 的命令行工具,它允许测试人员在没有界

    2024年02月10日
    浏览(42)
  • Selenium自动化测试实战之自动化测试基础

    自动化测试概念 是把以人为驱动的测试转化为机器执行的一种过程,它是一种以程序测试程序的过程。 自动化只是测试方式,跟测试阶段无关。 可以把任何测试工作写一个程序自动化实现都可以称为自动化测试。 selenium自动化测试: 2023最新的Selenium自动化测试实战,没有比

    2024年02月13日
    浏览(52)
  • 【自动化测试】Java+Selenium自动化测试环境搭建

    本主要介绍以Java为基础,搭建Selenium自动化测试环境,并且实现代码编写的过程。 1.Selenium介绍 Selenium 1.0 包含 core、IDE、RC、grid 四部分,selenium 2.0 则是在两位大牛偶遇相互沟通决定把面向对象结构化(OOPP)和便于编写代码的各自思想予以整合后形成的新工具,也就是我们所

    2024年02月11日
    浏览(35)
  • 自动化测试及典型开源的自动化测试工具

    目录 前言: 自动化测试 自动化测试的意义 手工测试的局限性 自动化测试带来的好处 自动化测试的前提条件 自动化测试的方法 自动化测试的不足 自动化测试的应用方向 典型开源的自动化测试工具 自动化测试是一种使用软件工具和脚本来执行测试任务的方法,以取代手动

    2024年02月13日
    浏览(46)
  • 【二、自动化测试】为什么要做自动化测试?哪种项目适合做自动化?

    自动化测试是一种软件测试方法,通过编写和使用自动化脚本和工具,以自动执行测试用例并生成结果。 自动化旨在替代手动测试过程,提高测试效率和准确性。 自动化测试可以覆盖多种测试类型,包括功能测试、性能测试、安全测试等,以确保软件系统在各个方面的质量

    2024年02月02日
    浏览(42)
  • web自动化测试进阶篇03 ———自动化并发测试应用

        😏 作者简介:博主是一位测试管理者,同时也是一名对外企业兼职讲师。 📡 主页地址:【Austin_zhai】 🙆 目的与景愿:旨在于能帮助更多的测试行业人员提升软硬技能,分享行业相关最新信息。 💎 声明:博主日常工作较为繁忙,文章会不定期更新,各类行业或职场问

    2024年02月06日
    浏览(37)
  • 使用Python进行自动化测试【第163篇—自动化测试】

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 自动化测试是软件开发过程中不可或缺的一部分,它可以提高测试效率、减少重复工作,并确保软件质量。Python是一种流行的编程语言,有许

    2024年04月17日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包