无论您从事什么行业,任何行业都需要您保持最新技能。 关于这一点的最具说明性的示例与软件测试有关。 质量保证专家在工作中面临着越来越多的挑战:随着技术的动态变化,测试的数量也在增加。 为了优化工作流程并适应不断变化的技术,他们需要应用全新的方法,例如自动化测试,并深入编程。
最近,我收到了一项特殊任务,我的经理来找我,并要求培训一组手动测试人员以将其更新为质量检查自动化工程师。 我的主要目的是带领手动QA测试团队了解Java基础知识,以便他们可以继续与QA自动化工程师辅导。 后者必须指导他们完成质量检查自动化基础知识,以使成功的测试人员能够继续工作。
但是,在跳到实际的培训技巧之前,让我们找出谁是质量检查自动化工程师,以及他们与质量检查分析师的不同之处。
熟悉QA自动化工程师
QA自动化工程师是质量保证专业人员,与手动测试相比,他们利用某些自动化工具来编写脚本和完成测试运行所需的时间更少。 在创建自动方案时,它们使您可以根据手动质量检查专家准备的测试用例来检查程序的运行情况。 只要在软件测试期间有很多重复且耗时的操作,对自动化的需求就很高。
从技术上讲,QA自动化工程师结合了手动测试仪和编码器的技能。 除了在不同阶段监视产品质量外,他们还编写一些脚本(按定义是代码)来检查开发人员已实现的产品代码。
那么,手动测试人员群体如何从自动化过渡中受益呢? 让我们来看看。
- 自动化测试允许在更短的时间内找到更多的bug。
- 测试过程被记录下来,因此它可以被重用并为类似的测试操作运行。
- 自动化确保了快速和精确的测试结果,从而提高了效率。
- 测试执行需要使用软件工具,与由于大量工作而疲惫的测试人员相比,软件工具可以在无限的时间内运行。
- 自动化测试排除了人为因素,几乎不会遗漏任何一个错误。
在您的质量检查团队即将升级为质量检查自动化工程师的过程中,您应该有兴趣了解一些可确保平稳过渡的有效方法。 让我们根据实际情况考虑它们。
如何有效地将QA团队升级为QA自动化工程师?
从哪儿开始? 对于想要求助于QA自动化工程师的QA分析师来说,学习Java的正确方法是什么? 这些和其他问题在本段中得到解答。
深入学习语言基础
自动化测试是由代码和算法驱动的,这意味着每个想成为QA自动化专家的人都应该至少具有Java基础知识。 虽然不一定要深入Java架构,但了解语法和工具对于编写脚本并使用它们来迅速而自信地检查别人的代码至关重要。
为了开始编写脚本或代码,手工测试人员必须从培训的一开始就解决许多编码任务。手工QA测试团队与互联网上的许多不同任务一起,完成了CodeGym网站上的一些任务,该网站为初学者和有经验的用户提供Java课程。除了涉及关键Java主题的大量任务外,该站点还确保了对解决方案的自动评审,这样导师就不必花时间检查每个任务。此外,您还可以在GeeksforGeeks上找到很棒的Java课程和一组编码任务。
阅读别人的代码
手工QA测试团队有30分钟的时间来完成所有任务,然后在彼此之间交换工作,审查解决方案,并就如何调整代码给出建议。一旦完成,他们交换作品回来,并试图根据给出的建议纠正他们。
注意:如果您没有时间每天进行这样的练习,请让您的手动QA测试团队每天在某些论坛上阅读其他人的代码。在帮助部分,有很多关于代码错误的问题。所以,学生们可以尝试解决问题,然后把结果反馈给你。同时,我建议我的学生去CodeRanch论坛阅读初学者部分。
学习代码重构和优化
一位高级的QA自动化工程师可以拥有清晰地查看代码是否不好并立即对其进行优化的能力。 因此,在培训期间,学生们学习了重构和优化的基础知识。 此外,他们还完成了一些任务,以优化某些示例中的代码并解释为什么这样做。 此外,他们有一项艰巨的任务,可以在同一论坛上搜索错误的代码,并且可以改进它。
友善的推荐:对于所有尝试进行QA自动化的人,我建议熟悉Martin Fowler的《 Refactoring》一书,这将有助于改进现有代码库的设计。
编写测试
通过两个月的课程学习,学生熟悉了数据结构、OOP和Java语法基础,了解了Spring和Maven-projects,熟悉了各种类型的自动化测试,包括单元测试、集成测试和功能测试。有了这些知识,QA自动化的初学者开始学习如何使用JUnit和Mockito库。
到那时,学生必须解决的任务变得更加复杂。 他们不断完成工作,并与未来的QA自动化同事进行交流。 此外,在课堂上,他们与导师讨论了所有遇到的困难,并找到了解决这些困难的方法。
总结
总的来说,学习持续了三个月。完成之后,学生们转到了自动化测试课程,在这门课程中,他们熟悉了Selenium Webdriver、PageObject和PageFactory、Jenkins、包含REST和SOAP的服务测试模式等。转换到QA自动化工程师的最后阶段花费的时间并不多,因为学生已经对Java语法和工具有了全面的了解。
最后,所有完成编程和自动化课程的专家都成功地转向了自动化。除了一个成为Java开发人员的人。
如果你是一名自学者
对于所有希望在没有导师帮助下转向自动化的手动测试人员,我准备了一份简短的清单,可帮助您成功。
- 学习Java核心。确保熟悉Java语法、OOP、集合和正则表达式。
- 在像IntelliJ IDEA这样的高级集成开发环境中工作。
- 学习不同类型的自动化测试,包括单元测试。
- 使用单元测试的代码结果。
- 了解测试重构。阅读马丁·福勒的《重构》以更好地理解。
- 入门级学习SQL。
- 熟悉春天、Maven和Gradle。
- 去专门的论坛,阅读别人的代码,并努力提高它。经常这样做。学习如何使用JUnit和Mockito l