如何利用RPA做UI自动化测试对传统自动化的降维打击

news2024/11/18 0:17:37

写在前面

RPA软件一开始的目的并不是自动化测试,而是要把电脑上面几十个、上百个常用的软件,通过机器人流程自动化来打通,通过一个软件来控制几十个、上百个软件。而这个过程,其实覆盖了软件自动化测试。

所谓降维打击,其实是RPA软件,跨界做了软件自动化测试。

引言

做UI自动化的繁琐和难点,对于每一个测试开发工程师都有切身的体会:

第一:验证码

比如,登录界面,为了防止批量注册、登录、灌水等恶意行为,设置了验证码,这些验证码通常包含随机生成的数字、字母或符号,并可能加入干扰元素如曲线、噪点或干扰线,以增加识别难度, 还有一些很创新的验证码:

  1. 滑块拼图验证码

  2. 滑动条验证码

  3. 旋转图片验证码

  4. 点选验证码

  5. 推理拼图验证码

验证码往往是卡在自动化测试的第一关。原本用来防止坏人的工具,对于自动化测试来说,却成为了棘手的问题。虽然可以设置跳过验证码,但这种方式牺牲了测试的覆盖面为代价,绕过验证码也可能会导致安全漏洞,因此应该尽可能采用安全的方式来验证用户身份。

第二,无法处理各种WindowsApp/Java应用等UI自动化:类似于Selenium等主流的UI自动化测试工具,主要用于web页面的自动化测试,对于各类Win App的UI自动化则不太适用, 假如开发的功能不仅仅是Web端,UI自动化测试就会停留在从开始到放弃。

第三,维护性差:当UI发生改变时,UI自动化测试用例就会大量失效,需要测试人员花费大量的时间去修改UI自动化测试的代码。

第四,学习成本高:UI自动化测试需要掌握相关的自动化测试框架和编程语言,同时还需要对测试目标进行深入的了解和分析,因此需要花费大量的时间和精力进行学习和实践。

第一部分 降维打击

用实在RPA做做全场景UI自动化测试,实在地说,下面4条属于降维打击。

  1. 兼容各种WindowsApp/Java应用等被测对象的UI自动化: 适用场景广泛。这里的兼容,不仅是原生的元素拾取,还有基于CV的元素拾取,大大增加了拾取的能力。单这一条,就已经碾压了大量的开源UI测试框架。

  2. 充分的验证码组件:对于验证码拦路虎,直接拖拽响应的验证码组件即可实现验证码的验证。

  3. 学习成本低: RPA产品是UI界面操作,目标定位就是小白易上手,元素拾取、元素操作等难的地方由RPA产品进行处理,用户关注元素的拾取、断言。对于测试工程师来说,入门RPA进行自动化测试,更加不是问题。

  4. 维护性好:RPA产品通过创建流程来运行UI自动化的过程,对于被测试对象的变化引起测试脚本运行出错,可以清晰排查出改动的元素,重新拾取即可更新元素。

第二部分 示例

一、各种不同验证码的例子示范

1\滑块拼图验证码 

示例: jQuery触屏滑块图片验证码插件 

使用RPA滑动拼图验证码

 2\滑动条验证码

使用RPA滑动条验证码

3\旋转图片验证码

使用rpa旋转验证码

4\点选验证码

使用RPA点选验证码

5\推理拼图验证码

使用RPA点击推理拼图验证码

二、兼容各种WindowsApp/Java应用等UI自动化示例

2.1 WeChat的消息发送的UI自动化测试演示 

2.1 WeChat的消息发送的UI自动化测试演示

2.2 兼容Excel、Word、WPS 

Excel 相关的组件有59个, Word相关组件有27个,可以覆盖绝大多数Excel和word操作,赋能对Excel和Word的自动化操作。

2.3 兼容各类浏览器

实在RPA设计器兼容 谷歌浏览器、IE浏览器、火狐浏览器、章鱼浏览器(beta)、Edge浏览器、360安全浏览器、360极速浏览器、搜狗浏览器等各种浏览器。 

在自动化测试方面,以电商平台为例,电商平台会开发很多后台的web应用,通过浏览器,由RPA可以实现大量电商的业务需求,如消息发送、私域运营、数据获取、评价回复、评价获取、项目运营、插旗备注、物流信息获取,  实在RPA同样也适用于这些电商系统的自动化测试。

2.4 兼容金蝶、用友等各类财务软件

主流的如用友,金蝶,用友的NC,U8+, 金蝶Kis, 金蝶EAS

2.5 兼容阿里旺旺、飞书、钉钉、微信、企业微信 

对阿里旺旺、飞书、钉钉、微信、企业微信界面的各种按钮、界面元素可是实现精准操作,包括元素点击、鼠标移到元素上、输入文本、输入密码框、获取界面元素文本、等待元素、判断元素存在、元素截图、循环相似元素等等,元素操作的组件有34个,从各种复杂场景的流程包的运行看,可以很好满足各种业务的需求。

2.6 支持信创等国产操作系统 

在国产操作系统上面开发应用的小伙伴们有福了,可以使用实在RPA 信创版进行UI自动化测试.

第三部分 总结

上面的示例中,是常用软件较少的一部分,但也已经涵盖了 Windows App 、Java App、浏览器、信创操作系统。

RPA软件一开始的目的并不是自动化测试,而是要把电脑上面几十个、上百个常用的软件,通过机器人流程自动化来打通。而这个过程,其实覆盖了软件自动化测试。

所谓降维打击,其实是RPA软件,跨界做了软件自动化。

用操作软件的软件——即RPA软件 ——做自动化测试,叠加强大的CV拾取功能,更加充分兼容了各种WindowsApp&Java应用等被测对象,有充分的验证码组件,学习成本低, 维护性好, 完全属于降维打击, 使用后会发现真香。

示例中的AI智能-验证码组件的流程包见↓附件: 

安利一波:

如需上手尝试,可通过下载链接下载实在RPA设计器 : 下载实在RPA设计器

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

webpack初始化

1.下载 webpack webpack-cli 到项目 (版本独立) ** npm i webpack webpack-cli --save-dev ** 2.项目中运行工具命念,采用自定义命令的方式(局部命令)

Python商业数据挖掘实战——爬取网页并将其转为Markdown

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 ChatGPT体验地址 文章目录 前言前言正则表达式进行转换送书活动 前言 在信息爆炸的时代,互联网上的海量文字信息如同无尽的沙滩。然而,其中真正有价值的信息往往埋…

【源码阅读】事件订阅包v2

1、Feed Feed 实现一对多订阅,其中事件的载体是通道。发送到 Feed 的值会同时传送到所有订阅的通道。 与Typemux的对比 链接: link TypeMux是一个同步的事件框架,当有一个被订阅的事件发生的时候,会遍历该事件对应的订阅者通道,…

ZigBee快速入门——外部中断(Key)

外部中断 :::tips 理解三道锁:EA——IENx——PxIEN EA-总开关 IENx-中断使能功能配置,可以配置程总线 IO中断(P0、P1、P2),也可以配置程定时器等中断 PxIEN-总线中具体某一位的中断允许,如刚刚已经配置了 I…

vue3项目部署到服务器,刚打开没事,一刷新页面就404

vue3项目部署到服务器,刚打开没事,一刷新页面就404 vue3项目,在本地调试时各方面都没毛病,刷新也没毛病,但是,扔到服务器上,第一次打开是正常的,再刷新下就404了,不知道什…

软件测评中心▏性能测试之压力测试、负载测试的区别和联系简析

在如今的信息时代,软件已经成为人们日常工作和生活不可或缺的一部分。然而,随着软件的发展和应用范围的不断扩大,软件性能的优劣也成为了影响用户使用体验的重要因素。 软件性能测试即对软件在不同条件下的性能进行评估和验证的过程。通过模…

《MCtalk·CEO对话》正式上线!首期对话高成资本

2015 年 10 月,网易智企发布第一款产品,正式踏上了 ToB 商业化之路。从那以后,我们每年举办不同主题的科技峰会,分享最新的行业体感和洞察;访谈各界企业领导者,记录他们的创新与创业经历;走过大…

黑帽SEO简介

什么是黑帽 SEO? 黑帽SEO是一种违反搜索引擎指南的做法,用于使网站在搜索结果中排名更高。这些不道德的策略并不能解决搜索者的问题,并且通常以搜索引擎的惩罚而告终。黑帽技术包括关键字填充、伪装和使用专用链接网络。 出现在搜索结果中对…

确定性网络技术怎样实现网络的可靠性?

确定性网络技术通过采用特定的协议、机制和策略,有助于提高网络的可靠性。本文通过一些关键的方面,来说明确定性网络技术如何实现这一目标。 时钟同步机制 时钟同步机制是确定性网络中的核心角色。为了实现高度可靠的通信,需要采用先进的时钟…

如何进行有竞争力的SEO审计以超越行业竞争对手

许多营销人员都有兴趣密切关注竞争对手的搜索引擎优化 (SEO)。这是有道理的——无论你是刚开始做SEO,还是已经做了一段时间,你都希望对搜索引擎结果页面(SERP)的竞争格局有一个清晰的认识,这样你…

构建基于RHEL9系列(CentOS9,AlmaLinux9,RockyLinux9等)的MySQL8.0.32的RPM包

本文适用:rhel9系列,或同类系统(CentOS9,AlmaLinux9,RockyLinux9等) 文档形成时期:2023年 因系统版本不同,构建部署应略有差异,但本文未做细分,对稍有经验者应不存在明显障碍。 因软件世界之复杂和个人能力…

2024年软件测试面试八股文【含答案】

Part1 1、你的测试职业发展是什么?【文末有面试文档免费领取】 测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验,按如何做…

SpringBoot3.X源码分析(启动流程)

SpringBootApplication(scanBasePackages {"com.javaedge.base"} ) public class BaseApplication {public BaseApplication() {}public static void main(String[] args) {SpringApplication.run(BaseApplication.class, args);} } 1 启动入口 静态辅助类&#x…

博弈类问题

巴什博弈(Bash Game) String bashGame2(int n, int m) {return n % (m 1) ! 0 ? "先手" : "后手";} #include<iostream> #include<string> using namespace std;string compute(int n) {return n % 6 ! 0 ? "October wins!" : &q…

iOS开发进阶(六):Xcode14 使用信号量造成线程优先级反转问题修复

文章目录 一、前言二、关于线程优先级反转三、优先级反转会造成什么后果四、怎么避免线程优先级反转五、使用信号量可能会造成线程优先级反转&#xff0c;且无法避免六、延伸阅读&#xff1a;iOS | Xcode中快速打开终端6.1 .sh绑定6.2 执行 pod install 脚本 七、延伸阅读&…

adrv9009使用记录

这里写自定义目录标题 1.首先下载cygwin&#xff0c;CSDN可以直接搜索&#xff0c;按照对应的安装就可以&#xff0c;最后记得加一个make安装包&#xff0c;不然在make时候会导致指令不存在 2.下载完成之后&#xff0c;去adi-github官网找到对应版本的adrv9009工程 https://git…

为什么要进行漏洞扫描工作

随着互联网的普及和信息技术的飞速发展&#xff0c;网络安全问题愈发引人关注。其中&#xff0c;漏洞扫描作为保障网络安全的重要手段&#xff0c;受到了广泛的关注和应用。本文将详细介绍漏洞扫描的概念、效果、使用场景等&#xff0c;以期为读者提供有关漏洞扫描的全面了解。…

PPT自动化处理

python-pptx模块 可以创建、修改PPT(.pptx)文件非Python标准模块&#xff0c;需要单独安装 在线安装方式 pip install python-pptx 读取slide幻灯片 .slides 获取shape形状 slide.shapes 判断一个shape中是否存在文字 shape.has_text_frame 获取文字框 shape.text_f…

查看磁盘里的大文件

查看磁盘里的大文件 在PowerShell中 命令1&#xff1a; gci -r| sort -descending -property length | select -first 10 name, length 命令2&#xff1a; Get-ChildItem -Path C:\ -Recurse | Where-Object { $_.Length -gt 1GB } | Sort-Object -Property Length -Descendin…

微服务自动化docker-compose

一、docker-compose介绍 Docker Compose是一个用来定义和运行多个复杂应用的Docker编排工具。例如&#xff0c;一个使用Docker容器的微服务项目&#xff0c;通常由多个容器应用组成。那么部署时如何快速启动各个微服务呢&#xff0c;一个个手动启动&#xff1f;假如有上百个微服…