JavaRush /Java 博客 /Random-ZH /如何开始自动化测试,第 1 部分

如何开始自动化测试,第 1 部分

已在 Random-ZH 群组中发布
我们邀请您阅读https://testdemy.teachable.com/创始人 Tim Ebie 的一篇文章的俄语版本,https://testdemy.teachable.com/ 是一个在线软件测试 QA 平台,旨在帮助那些开始自动化测试之旅的人
如何开始自动化测试,第 1 - 1 部分
我们看到市场上 Web 应用程序的兴趣激增和数量增长。随之而来的是越来越多需要编程、技术技能和各种自动化技能的工作。因此,为了保持需求,手动测试人员看到需要从纯手动测试切换到质量保证 (QA),并正在考虑自动化测试。从手动测试切换到自动化测试是一个明智的选择,因为许多 QA 职位需要一系列与编写代码相关的技术技能。对于那些不喜欢改变的人来说,这样的改变可能会让人感到不舒服。另一方面,其他开发人员则将这个“变革时期”视为将他们的职业和技能提升到新水平并提高其相关性的机会。每当需求增加时,可能性就会扩大。拥有合适技能的开发人员可以搭上火车,并拥有出色、高薪的职业生涯。如果您希望从手动测试转向自动化,甚至考虑从另一个软件开发领域转向,那么采取一些步骤来帮助您取得成功是有意义的。

第一步:市场评估

史蒂芬·A·柯维博士的著作《高效人士的七个习惯》中的“第二个习惯”:“以终为始”。我相信在开始自动化测试时这个原则是正确的。首先对招聘自动化工程师的需求进行市场评估。一旦您了解雇主的技术需求,您就可以获得适当的技能。一个好的起点是查看任何网站上的职位描述(例如Indeed.comDiceMonsterLinkedIn等)。
如何开始自动化测试,第 1 - 2 部分
以下是可用于生成市场估值的搜索词示例:
  • 测试自动化工程师;
  • 自动化开发人员;
  • 自动化测试/测试仪(自动化测试)(Automation Test/Automation Tester);
  • QA自动化工程师
  • 软件开发测试工程师 (SDET)。
要了解雇主的想法以及他们对候选人的真正期望,请在搜索时记住以下问题:
  • 他们提到了哪些具体技能和技术?
  • 您是否看到针对这些技能的单独的一组或“块”技能或技术?
  • 如果有的话,需要多少年的经验?
  • 是否有某些行业倾向于比其他行业雇用更多的自动化工程师?
  • 你期望的薪水是多少?
  • 我们感兴趣的工具或技术主要是开放获取还是商业产品?
现在让我们仔细看看一些职位描述,以了解市场正在寻找什么。请记住,相关工作位于美国。如果您不住在美国,请查看您所在国家/地区的求职工具。 软件自动化开发工程师一:
  • 对面向对象编程语言有清晰的了解;
  • 熟悉Jenkins、Test Complete、VersionOne、Git、Visual Studio、Oracle、MSSQL、Hyper-V、AQTime;
  • 与开发人员、业务分析师和其他测试人员密切合作,确定将用于验证所开发软件需求的测试自动化组件。
如何开始自动化测试,第 1 - 3 部分
QA测试员(自动化测试):
  • 将自动化测试保存在适当的版本控制系统中 - TFS、GitHub等;
  • 遵循预定义的自动化标准和自动化DevOps标准,以及持续集成和部署流程;
  • 拥有 ALM 工具(TFS、Jira、HP QC)和测试自动化工具(最好是 Selenium WebDriver)的经验。
质量保证自动化工程师-QA 质量保证自动化工程师):
  • 使用Selenium WebDriver的经验;
  • Python、Java或类似语言的编程能力;
  • 移动测试经验/ Appium
测试软件开发人员:
  • 更新和扩展 C#、TypeScript、JavaScript 等测试环境和测试工具;
  • 强大的 C# 或 Java 和/或 JavaScript 编程能力,以及对面向对象编程概念的清晰理解;
  • 使用 Visual Studio、Subversion、GitHub、Unity、Teamcity、Jira Cloud、Confluence 的经验。
如何开始自动化测试,第 1 - 4 部分
以下是这些职位描述中的一些要点。 混合/混合角色:密切关注职位名称以及这些公司如何看待自动化软件测试。这可以从他们列出的角色名称中看出(软件自动化开发人员、测试中的软件开发人员等)。注意到一种模式吗?这些公司或多或少将 QA 工程师称为开发人员软件:对于手动测试人员来说,这意味着是时候学习如何编写代码将手动测试用例转变为自动化测试脚本。对于希望进入自动化测试的开发人员来说,这意味着您应该了解更多有关软件测试方法、测试生命周期软件的知识,并学习如何构建自动化测试用例以支持这些生命周期。不要错过这个关键的转变,否则你就会落后。随着敏捷方法论和基于敏捷的项目的兴起,越来越多的组织将 QA 和开发人员合而为一。因此,是时候为你的新的职责。在软件测试领域接受过基本培训并同时充分了解软件开发人员技能的个人是非常有价值的。 开源技术/编程语言:请注意描述中以粗体突出显示的技术和编程语言。这些技术和语言都是有针对性的,你需要学习它们才能在市场上受欢迎。选择一项高需求技术,通过练习并参与现实世界的实践应用程序和项目来开始构建您的技能。这会加快你的学习速度。如果您不确定从哪种编程语言开始,让我们稍微缩小一下范围。

第 2 步:掌握面向对象编程语言 (OOP)

让我们面对现实:大多数手动测试人员都害怕编程。深入了解系统和应用程序实际工作原理的想法让许多手动测试人员感到害怕。这种恐惧主要是他们成为手动测试员的原因。
如何开始自动化测试,第 1 - 5 部分
编程是自动化测试的基础。如果你想进入自动化测试,你需要能够编码,你的编程能力越好,你在自动化测试或自动化开发方面就会越成功。因此,如果您想在这个不断变化的开发和技术世界中保持竞争力,您必须决心克服这种恐惧,并成为一名受欢迎的自动化测试开发人员。好处是,只要有经验丰富的同事提供最少的指导,坚持不懈,不断练习(就像我们在 JavaRush 所做的那样),您绝对可以提高您的编程技能。下一个逻辑问题是:我应该学习什么编程语言?根据我们的市场评估,我们知道雇主希望雇用“对面向对象编程语言有深入了解”的人。而且根据我们的分析,我们可以看到他们所指的几种面向对象的编程语言。例如,Java、C#、JavaScript 和 Python。您可以从其中任何一个开始。如果您开始学习 OOP 语言,可以很好地掌握以下一些概念,以便更好地精通自动化测试:
  • 面向对象编程(类、对象、实例、继承、属性等);
  • 模块、标准库(无论您选择哪种语言);
  • 数据结构(字典、列表、元组等);
  • 数据类型(字符串、字符、整数、浮点、逻辑或布尔类型、NoneType 等);
  • 变量;
  • 错误/异常处理;
  • 算术运算符/优先顺序;
  • 比较、逻辑布尔运算符;
  • 过程/函数/方法;
  • 控制流:If 语句、for 循环、while 循环等。
  • 读/写文件;
编程是自动化测试的基础。学会编程,你就会学会自动化。

第三步:掌握自动化工具

我一直在说:你的编程能力越好,你的自动化能力就越好。一旦开始学习编程语言,下一步就是学习如何使用自动化工具。因为出于成本原因,大多数公司都倾向于开源自动化工具(或免费软件)而不是商业许可产品。
如何开始自动化测试,第 1 - 6 部分
Selenium WebDriver 是一个可以在公共领域找到的优秀工具。Selenium 具有多种语言绑定(Python、Java、C#、Ruby、PHP、JavaScript 等),因此学习其中一种编程语言将为在自动化领域建立坚实的职业生涯提供良好的基础。要构建可靠、实用且高效的自动化测试用例,您需要掌握一些关键概念:
  • 设计模式:页面对象模型;
  • 使用不同的定位器(CSS 选择器、XPATH、ID、名称等)搜索网页元素;
  • 切换 Windows/iFrame;
  • 重构;
  • 单元测试;
  • 云测试/并行测试;
  • 数据检查;
  • 在不同的网络浏览器(Firefox、Internet Explorer、Chrome、Safari、Opera 等)上进行测试;
  • 隐含和明确的期望;
  • 行动链
如果您选择了面向对象的编程语言并依靠自动化工具来评估市场,那么下一个逻辑步骤是...您会怎么想?...

第四步:练习、练习、再练习

无论你做什么,都不要放弃。学习新东西总是一个挑战。但通过足够的练习和奉献精神,每一个挑战都可以克服。学习新技能和技术需要多长时间完全取决于您以及您为掌握这些技能投入了多少练习和奉献精神。
如何开始自动化测试,第 1 - 7 部分
任何职业运动员都会说,通过训练的努力和努力,他或她已经达到了自己的巅峰。他们说迈克尔·乔丹打得很努力,但训练更刻苦。任何想要自动化的人都应该采用这种方法——练习、练习、练习你的新技能,直到它们成为你的第二天性。这是提高您的技能并成为受欢迎的测试员的唯一方法。培训的好方法之一是同时积极学习编程语言和自动化工具,并“玩”它们。换句话说,编写小程序或自动化测试脚本,破坏它们,更改它们,然后看看它现在如何工作。从你所做的事情中吸取教训,然后再试一次。通过玩耍、实践和学习来练习。这样做,你的学习曲线就会上升。

开始时间

新事业最重要的就是开始。每当我们拖延或无法开始时,都是因为我们没有路线图或游戏计划来帮助制定我们的路线。
如何开始自动化测试,第 1 - 8 部分
虽然尝试从根本上改变你的职业方向可能看起来令人畏惧,但受到重视和有市场是至关重要的。您需要培养新技能,以保持在不断变化的软件开发世界的领先地位,并成为雇主真正需要的人才。从小事做起:评估市场需求,学习面向对象编程和自动化工具,并不断实践。您会在不知不觉中为新的工作机会做好准备。来源:https ://simpleprogrammer.com/2017/07/28/start-automation-testing-part-1/
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION