掌握自动化测试必要的几种技能?

1.自动化测试员技能——编程语言

当我开始担任手动测试人员时,我不喜欢编码。但是,当我逐渐进入自动化领域时,对我来说很清楚,如果没有对编程语言的一些基本了解,就无法编写逻辑自动化测试脚本。

对编程有一点了解,不仅可以简化那些自动化脚本,还可以帮助您改善与开发人员的沟通。不仅如此,一旦单元测试完成,您还可以参与深入的功能测试。现在,要获得自动化测试人员的#1技能,有两个不同的方面,需要多少编程知识取决于您的角色以及几年后您在行业中的位置。方面是:

设计框架

您需要对C#,Python,Java,Perl,SQL,XML以及HTML和CSS具有透彻的理解和编码技能。虽然,您应该精通哪种语言取决于项目中开发人员使用的编程语言。例如,如果项目在Ruby上,则您至少应具有Ruby基础知识的基础知识。以下是对测试人员有用的顶级编程语言。

创建测试脚本 在此阶段,您是否应该具有编程知识,取决于所使用的自动化框架。如果您的组织使用SpecFlow或Cucumber进行测试自动化,则脚本可以用简单的英语编写,您无需考虑后端逻辑或编码。仅对Selenium Web驱动程序有足够的了解就足够了。但是,如果您使用的是UFT或QTP,则应该对编程有全面的了解。这是用于跨浏览器测试的Selenium WebDriver教程

2.自动化测试员技能–出色的手动测试技能

要成为熟练的自动化测试人员,您还需要在手动测试方面有敏锐的眼光和经验。记住以下几点!

人眼就是一切

在测试过程中,只要看起来有些东西,人眼就可以轻松地检测到它。使用自动化脚本很难检测到视觉问题。从实时用户的角度查看软件可帮助测试人员识别UI和可用性测试以查找错误,而这是自动化脚本中难以编程的功能。

某些测试只能手动完成

自动化是一台机器,一台机器只能执行所要执行的操作。复杂的测试需要大量的准备和计划,并且有一定的界限。然后,脚本将遵循协议并相应地测试应用程序,即席测试可帮助测试人员回答“当我遵循X而不是Y时会发生什么”之类的问题。它可以帮助测试人员使用开箱即用的方法进行思考和测试,而这很难在自动化脚本中进行编程。甚至可视化跨浏览器测试需要手动方法。您可以通过在真实的浏览器和设备上进行测试,甚至可以通过使用基于云的跨浏览器测试工具(例如LambdaTest)(甚至可以更好地进行检查)来​​手动检查问题,而不必依靠自动化脚本来找出视觉差异。在数千种不同的浏览器-设备-操作系统组合中无缝测试您的网站

自动化测试可能包含漏洞

自动化脚本就像另一段代码。而且,无论您的编码员多么出色,错误始终存在。在整个测试过程中手动操作而不是完全依赖于自动化将确保执行脚本后不会出现误报或误报作为测试结果的情况。

某些方案不适用于自动化测试

如果测试阶段要求您检查应用程序的手势或触摸功能如何工作,该怎么办?您无法通过自动化来做到这一点。该过程将太昂贵,结果可能会有些不准确。再次需要手动方法。到那时,测试人员完成了此类用户控制方案的自动化脚本的编写,手动测试人员完成了整个测试以及错误修复。

您对整个问题都有个想法

是的,自动化测试确实节省了大量时间。如果对同一场景进行更广泛的测试并执行重复测试,它是自动化测试的理想选择。但是,为了从理论上理解确切的问题,需要手动测试技能。拥有手动测试经验的自动化测试人员可以通过从最终用户的角度进行思考来轻松理解问题的根源。

3.自动化测试员技能–自动化工具专业知识

在当前的敏捷时代,行业要求速度和质量。全球的利益相关者和客户都希望组织在短时间内交付高质量的无错误应用程序。这就是为什么自动化测试正在兴起的原因,并且作为一个熟练的自动化测试员,每个组织都希望您在以下自动化工具方面拥有知识和经验。

Selenium

Selenium自豪地支持所有主流浏览器,已成为自动化测试领域的家喻户晓的名字。几乎所有主要的浏览器都确保Selenium是它们的本机部分。随着WebDriver的引入,Selenium确保了基于浏览器的Web应用程序自动化测试的完美执行。无论您是新手还是经验丰富的测试自动化工程师。您应该具有硒方面的知识或工作经验。另外,它是开源的!如果您已经在研究Selenium的任何变体,那么您会发现LambdaTest是一个非常有前途的平台,可以在云上执行自动化脚本。LambdaTest 通过在线Selenium网格在2000多种浏览器上为Selenium自动化测试提供并行测试执行。

惠普– UFT

HP以前曾使用QTP这一工具,但它仍然是业界最好的工具,可确保顺利执行应用程序的自动功能和回归测试。如果您是回归测试人员,那么您应该具有知识和经验以及UFT认证。

SoapUI

测试Web服务和API的完美工具。该工具同时支持SOAP和REST服务,并且如果您的项目需要对API进行自动化测试,则您至少应了解该无头工具的用于功能测试的开源版本。

RFT

Rational Functional Tester是IBM内部开发的自动化工具。无论您的应用程序使用什么技术,RFT都支持.Net,Java,SAP,Adobe Flex,Visual Basic和Dojo。如果您要进行功能测试或回归测试,您会发现学习此工具非常有用。

Appium

在当前移动第一时代,许多组织正在开发复杂的移动应用程序。Appium是最好的开源软件,可使任何混合或本机移动应用程序实现自动化测试。此外,它与所有操作系统(例如Android,iOS或Windows)兼容,并且必须了解移动应用程序测试是否属于您的领域。

Apache JMeter

最初,该工具旨在测量应用程序的性能和负载测试。在当前版本中,此工具还用于API性能和服务测试。作为最受欢迎的第三大自动化测试工具,您的组织将期望任何熟练的自动化测试人员都具备对此的知识和经验。即使您没有经验,由于该工具是开源的,您也可以自己开始学习。

4.自动化测试员技能–了解业务需求

如果您的汽车或摩托车有问题,并且将其带到服务中心,那么在检查车辆之前,机械师会询问您当前所面临的问题,在上次维修期间修复的所有旧车问题,以及您以前是否更改过任何零件。只有在那之后,机械师才能提供有关问题的确切原因和解决问题所需的解决方案。

同样,在测试阶段开始之前,熟练的自动化测试人员必须从前端和服务层全面了解应用程序。他们必须知道

  • 开发团队使用的编程语言。
  • 应用程序应由最终用户运行的平台或设备要求。
  • 数据库用于存储后端信息与用户数据一起。
  • 连接到系统的API或Web服务以及如何使用它们。
  • 应用程序上线后,最终用户或利益相关者期望的所有功能。
  • 在测试阶段开始时,是否执行任何手动测试?
  • 手动测试人员在测试应用程序时花费的预期时间。
  • 在上一发行版中是否有任何重要错误未解决,以及如何影响业务。
  • 需要完成测试阶段的预计交付日期。
  • 浏览器差异 除了主要的浏览器由于使用了如此多的开源浏览器而不断增加,根据年龄段或地理位置的不同而变化之外,熟练的自动化测试人员应关注网站的浏览器兼容性测试。测试人员应该具有足够的知识来创建浏览器兼容性矩阵,以及使用Selenium WebDriver或使用基于云的平台(例如LambdaTest)进行自动跨浏览器测试来确定他正在工作的网站是否在所有有针对性的浏览器。

但是,提到的要点是非常基本的,其复杂性取决于应用程序的性质以及开发方法。

5.自动化测试员技能–自动化工具故障排除

流行的测试自动化工具非常大且复杂,在项目开始使用它们之前,它要求测试人员具有有关工具本身的详细技术知识。在我以前的项目中,我经常遇到诸如

  • 该脚本在测试结果中显示了一些错误,但根据业务需求,该应用程序运行正常。
  • 该脚本显示成功,但是该应用程序引发了一些实时错误。 这些在行业中被称为误报和误报的情况通常发生在测试人员没有足够的知识来配置测试脚本时。他们只是继续使用模板,并期望测试能够成功运行。如果您想成为一名成功的自动化测试人员,则应该具有配置工具的详细知识,以及在出现误报和误报之类的情况时如何对它们进行故障排除。 特别是,如果您是测试负责人,则必须确保应用程序的体系结构与用于运行自动化测试的工具兼容。尝试使用与应用程序不兼容的工具将导致测试用例失败和无法预料的错误,可能难以排除故障。

6.自动化测试员技能–具有测试管理工具的经验

自动化测试的主要目标是减少整个测试过程的时间复杂度。如果您是自动化测试人员,则应该具有测试管理工具方面的经验,因为,

  • 它们非常灵活,允许用户记录任何错误,并根据错误对项目的影响程度,根据优先级对它们进行排序。此外,它的可扩展性允许团队成员之间轻松地交换信息。
  • 如果您是自动化测试负责人,则具有测试管理工具的工作经验将帮助您跟踪测试阶段如何从一个阶段过渡到另一个阶段。您将能够维护一个仪表板,您可以在其中根据测试用例的使用阶段来记录它们,从而确保将来项目中的可重用性。
  • 如果您是测试人员,则可以在工具中报告您的活动;如果您是测试主管,则可以实时报告您所使用的资源以及它们在做什么。这有助于分析当前项目中发生的情况,并加快整体活动,因为在跟踪资源时不会浪费时间。
  • 最后但并非最不重要的一点是,您无需担心安全问题。拥有测试管理工具将确保与测试阶段有关的所有重要信息得到保护,并且仅由您的团队和管理人员访问。

7.自动化测试员技能–了解不同的开发方法

请记住,您的组织不仅希望您具有测试知识。您还应该了解不同的开发方法是如何工作的。如果您的项目遵循的是DevOps或Agile,请不要指望团队领导告诉您该怎么做。及时交付您的工作,并做好每天参加Scrum会议的准备,以防止当利益相关者或经理对您当前的工作阶段提出一些关键问题时出现任何尴尬的情况。了解开发方法还可以帮助您在组织层面上推动您的职业生涯。

结论!

这些自动化测试仪技能将帮助您在当今市场上获得非常高的价值。特别是如果您对所有最新的自动化工具以及CI / CD工具(如Jenkins或GitLab)具有适当的了解,那么您不仅会成为组织中宝贵的资源,而且还将成为行业中的宝贵资源。上面讨论的自动化测试人员技能将帮助您从初学者晋升为主管或架构师级别的资源。因此,努力工作,表现出对事业的奉献和热情,很快,您将在行业中其他自动化测试员的技能上脱颖而出。

 感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

 

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/208319.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MinkowskiEngine安装

pip install torch ninjagit clone https://github.com/NVIDIA/MinkowskiEngine.git cd MinkowskiEngine安装之前先把并行安装的thread数降低,否则会导致进程卡死。 打开setup.py文件内位于142行的MAX_COMPILATION_THREADS变量值从12改成4。 export CXXg-7 python…

挖掘新兴市场:跨境电商中的战略机会

随着全球化进程的不断推进,跨境电商作为连接世界的桥梁,为企业提供了探索新兴市场的机遇。在这个充满活力和竞争的环境中,企业需要制定切实可行的战略,善于把握新兴市场的机会,实现可持续发展。 新兴市场的潜力与机遇 …

matlab基于线性二次调节器(LQR)法实现机器人路径规划可变轨迹跟踪

1、内容简介 略 可以交流、咨询、答疑 2、内容说明 基于线性二次调节器(LQR)法实现机器人路径规划可变轨迹跟踪 3、仿真分析 略 load path.mat %% 轨迹处理 % 定义参考轨迹 refPos_x path(:,1); refPos_y path(:,2); refPos [refPos_x, refPos_y];% 计算航向角和曲率 …

文字识别(OCR)专题——基于NCNN轻量级PaddleOCRv4模型C++推理

前言 PaddleOCR 提供了基于深度学习的文本检测、识别和方向检测等功能。其主要推荐的 PP-OCR 算法在国内外的企业开发者中得到广泛应用。在短短的几年时间里,PP-OCR 的累计 Star 数已经超过了32.2k,常常出现在 GitHub Trending 和 Paperswithcode 的日榜…

python简单进阶之web框架:fastapi使用教程

原文:python简单进阶之web框架:fastapi使用教程 - 知乎 这是简单进阶教程系列第四篇,本系列文章主要介绍那些可以很快上手的进阶库。 我其实学过一段时间Django框架,但是半途而废了,我觉得可能还是简单一点的框架比较适…

nc 传输目录

使用nc命令进行目录传输 接收方发送方 使用TCP连接进行文件传输,不提供数据加密或身份验证 接收方 -ip 192.168.1.200 nc -l -p 2222 | tar -xvf -发送方 发送目录 lotus tar -cf - lotus | nc 192.168.1.200 2222

Python+Requests对图片验证码的处理

Requests对图片验证码的处理 在web端的登录接口经常会有图片验证码的输入,而且每次登录时图片验证码都是随机的;当通过request做接口登录的时候要对图片验证码进行识别出图片中的字段,然后再登录接口中使用; 通过request对图片验…

LINUX 嵌入式C编程--信号编程

基本概念 信号是事件发生时对进程的通知机制,也可以把它称为软件中断。信号与硬件中断的相似之处在于能够打断程序当前执行的正常流程,其实是在软件层次上对中断机制的一种模拟。信号提供了一种处理异步事件的方法。 信号目的 **信号的目的是用来通信…

shell编程系列(9)-使用cut选择列

文章目录 前言使用cut选择列选择特定的列 结语 前言 前面的文章介绍了sed命令,sed可以帮我们处理文本列,这边文章介绍cut命令,cut命令可以帮我们选择想要的列,在文本处理时候结合sed命令,就可以精准定位了。 cut命令是…

HuggingFace学习笔记--Model的使用

1--Model介绍 Transformer的 model 一般可以分为:编码器类型(自编码)、解码器类型(自回归)和编码器解码器类型(序列到序列); Model Head(任务头)是在base模型…

java正则表达式字母开头后面跟12位数字

字母开头后面跟12位数字 ^[A-Za-z]\d{12}$ 验证: 验证工具地址: Java正则表达式测试

学习感悟一己之言

学习感悟一己之言 学习上克服困难实际上是克服心理上或认识上的障碍的过程。所谓的理解,就是化陌生为熟悉。看不懂,一方面是因为接触的材料太陌生,即远离你当前的背景知识;另一方面是材料或讲述者的描述刻画不准确或晦涩不当。有了…

修改sublime配置让其显示文件编码格式

1、下载sublime并安装 2、点击菜单栏Preferences,然后在Preferences里面点击Setting 3、然后在跳出来的窗口添加: "show_enconding":true, 4、随便打开一个文件就可以在底部查看文件编码格式:

openbabel 安装 生成指纹方法

今日踩坑小结: openbabel 安装: 可以装,但是得在 Linux 环境下,win 环境装会报错(安装不会报错,但是生成指纹的时候会) 指纹: 在下面这个链接里,官方给出了命令行调用 o…

一篇博客带你认识泛型

目录 泛型类(Generic Class): 泛型方法(Generic Method): Java 中的泛型是一种编程机制,允许你编写可以与多种数据类型一起工作的代码,同时提供编译时类型检查以确保类型的安全性。泛型的主要目的是提高代…

外贸获客的几种正确打开方式,还不快来GET!

做外贸还在愁没客户?作为外贸人,开发客户是我们的重要工作内容,想要高效地开发客户,首先就要知道外贸获客的方法有哪些,当下最主流的外贸获客渠道分为线下和线上两种方式,今天东哥就介绍几种获客渠道&#…

YOLOv5项目实战(5)— 算法模型优化和服务器部署

前言:Hello大家好,我是小哥谈。近期,作者所负责项目中的算法模型检测存在很多误报情况,为了减少这种误报情况,作者一直在不断优化算法模型。鉴于此,本节课就给大家详细介绍一下实际工作场景中如何去优化算法模型和进行部署,另外为了方便大家进行模型训练,作者在文章中提…

流量内存cpu使用率使用工具

类似360工具球的工具 我提供了夸克下载喜欢的朋友可以直接下载使用 我用夸克网盘分享了「TrafficMonitor」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。 链接:https://pan…

wpf devexpress 使用IDataErrorInfo实现input验证

此处下载源码 当form初始化显示,Register按钮应该启动和没有输入错误应该显示。如果用户点击注册按钮在特定的输入无效数据,form将显示输入错误和禁用的注册按钮。实现逻辑在标准的IDataErrorInfo接口。请查阅IDataErrorInfo接口(System.Com…

微机原理——定时器学习1

目录 定时类型 8253内部结构框图 8253命令字 六种工作方式及输出波形 计数初值的计算与装入 8253的初始化 定时类型 可编程定时器8253:(内部采用的是16位 减法计数器) 8253内部结构框图 8253命令字 8253有三个命令字:方式命…
最新文章