如何使用Java将您的QA团队升级为QA自动化工程师:真实案例

无论您从事什么行业,任何行业都需要您保持最新技能。 关于这一点的最具说明性的示例与软件测试有关。 质量保证专家在工作中面临着越来越多的挑战:随着技术的动态变化,测试的数量也在增加。 为了优化工作流程并适应不断变化的技术,他们需要应用全新的方法,例如自动化测试,并深入编程。

最近,我收到了一项特殊任务-我的经理来找我,并要求培训一组手动测试人员以将其更新为质量检查自动化工程师。 我的主要目的是带领手动QA测试团队了解Java基础知识,以便他们可以继续与QA自动化工程师辅导。 后者必须指导他们完成质量检查自动化基础知识,以使成功的测试人员能够继续工作。

但是,在跳到实际的培训技巧之前,让我们找出谁是质量检查自动化工程师,以及他们与质量检查分析师的不同之处。

Acquainting with QA Automation Engineers

QA自动化工程师是质量保证专业人员,与手动测试相比,他们利用某些自动化工具来编写脚本和完成测试运行所需的时间更少。 在创建自动方案时,它们使您可以根据手动质量检查专家准备的测试用例来检查程序的运行情况。 只要在软件测试期间有很多重复且耗时的操作,对自动化的需求就很高。

从技术上讲,QA自动化工程师结合了手动测试仪和编码器的技能。 除了在不同阶段监视产品质量外,他们还编写一些脚本(按定义是代码)来检查开发人员已实现的产品代码。

那么,手动测试人员群体如何从自动化过渡中受益呢? 让我们来看看。

  • 自动化测试可以在更短的时间内找到更多的错误。测试过程被记录下来,因此可以重复使用并运行类似的测试操作。自动化确保快速,精确的测试结果,从而提高效率。测试执行需要使用软件工具,与由于大量工作而感到疲倦的人类测试人员相比,该软件工具可以无限地运行时间。自动化测试排除了人为因素,几乎不会遗漏任何错误。

在您的质量检查团队即将升级为质量检查自动化工程师的过程中,您应该有兴趣了解一些可确保平稳过渡的有效方法。 让我们根据实际情况考虑它们。

How to Effectively Upgrade QA Team to QA Automation Engineers?

从哪儿开始? 对于想要求助于QA自动化工程师的QA分析师来说,学习Java的正确方法是什么? 这些和其他问题在本段中得到解答。

Delve Deep Into Language Basics

自动化测试是由代码和算法驱动的,这意味着每个想成为QA自动化专家的人都应该至少具有Java基础知识。 虽然不一定要深入Java架构,但了解语法和工具对于编写脚本并使用它们来迅速而自信地检查别人的代码至关重要。

To start writing a script or code, manual testers had to get many coding tasks solved from the very beginning of their training. Together with many different tasks on the Internet, the manual QA testing team completed some on CodeGym, the website with Java courses for novice and experienced users. Aside from numerous tasks covering key Java topics, the site ensured an automatic review of the solution so that the tutor didn’t have to spend time checking every single task. Also, you could find great Java course and a collection of coding tasks on GeeksforGeeks.

Read Someone Else’s Code

手动的质量检查测试小组最多需要30分钟才能完成所有任务,然后彼此交换工作,查看解决方案并就如何调整代码提出了建议。 完成后,他们将工作换回去,并根据给定的建议进行纠正。

ñote: If you don’t have time to conduct such exercises daily, let your manual QA testing team read someone else’s code on certain forums every day. At help section, there are numerous questions about what is wrong with the code. So, the students can try to solve the issues and get back to you with the results. Also, I suggested my students going to the CodeRanch forum and read the section for beginners.

Learn Code Refactoring and Optimization

一位高级的QA自动化工程师可以拥有清晰地查看代码是否不好并立即对其进行优化的能力。 因此,在培训期间,学生们学习了重构和优化的基础知识。 此外,他们还完成了一些任务,以优化某些示例中的代码并解释为什么这样做。 此外,他们有一项艰巨的任务,可以在同一论坛上搜索错误的代码,并且可以改进它。

如何使用Java将您的QA团队升级为QA自动化工程师:真实案例

友善的推荐:对于所有尝试进行QA自动化的人,我建议熟悉Martin Fowler的《 Refactoring》一书,这将有助于改进现有代码库的设计。

Write Tests

After two months of the course, the students knew well data structures, OOP, and basics of Java syntax, got to know about Spring and Maven-projects, and acquainted with all types of automated tests including unit, integration, and functional testing. With all the knowledge they gained, the beginners of QA automation started to learn how to work with JUnit and Mockito libraries.

到那时,学生必须解决的任务变得更加复杂。 他们不断完成工作,并与未来的QA自动化同事进行交流。 此外,在课堂上,他们与导师讨论了所有遇到的困难,并找到了解决这些困难的方法。

Outcomes

总体而言,学习持续了三个月。 完成后,学生们切换到自动化测试过程,在那里他们熟悉了Selenium Webdriver,PageObject和PageFactory,Jenkins,包括REST和SOAP的服务测试模式等。向QA自动化工程师过渡的最后阶段不是 这是因为学生已经对Java语法和工具有全面的了解。

最后,所有完成编程和自动化课程的专家都成功地转向了自动化。 除了成为Java开发人员的人。

If You’re a Self-Learner

对于所有希望在没有导师帮助下转向自动化的手动测试人员,我准备了一份简短的清单,可帮助您成功。

  1. 学习Java Core。 确保熟悉Java语法,OOP,Collections和Regex。在像IntelliJ IDEA这样的高级集成开发环境中工作。了解不同类型的自动化测试,包括单元测试。使用单元测试概述代码结果。了解有关测试重构的信息。 阅读Martin Fowler的“重构”以获得更好的理解。在入门级学习SQL。熟悉Spring,Maven和Gradle。进入特殊论坛,阅读别人的代码,然后尝试对其进行增强。 继续定期这样做。了解如何使用JUnit和Mockito库。 将您的知识付诸实践。详细了解有关Selenium和Appium等测试框架或诸如Sauce,soapUI,Endtest等测试平台的信息。在以后的工作中,您大多会使用其中一种。

Was published on Product Coalition.

from: https://dev.to//selawsky/how-to-upgrade-your-qa-team-to-qa-automation-engineers-with-java-the-real-case-30do