自主研发RPA,基于uiautomatorviewer的自动化代码生成器,一键生成Java代码和Cucumber描述文件

news/2024/11/14 22:45:52/文章来源:https://www.cnblogs.com/jovic/p/18547004

介绍

基于UI Automator进行二次开发,让你不懂开发也能编写自动化测试代码, 一边生成代码一边Debug,毫不费力写出完美的自动化测试代码 。该工具集成了Tomcat使得添加新的功能的时候使用HTML+API进行开发,降低了开发难度;集成了Derby数据库,测试用例持久化到数据库。

软件架构

采用HTML+API开发新的功能,集成了Derby数据库。 可以修改代码模板,生成的代码无缝对接你的自动化测试框架,元素采用文本定位, 一套代码同时适应AOS和IOS 。

功能介绍

接下来具体看一下目前实现的功能,从左到右依次是:系统设置,Step新增与修改,等待元素出现,点击元素,保存文本,输入文本,添加断言,删除操作节点,生成代码,刷新测试用例,Debug工具

 1. 系统设置,可以设置生成的类名,设置调试的服务器,代码模板及代码输出路径,最后是测试数据

 2. Step新增,修改,公共Step的维护。点击我的测试场景,可以新增测试步骤,可以直接选择公共的测试步骤,对公共的测试步骤进行维护

 

 3.等待元素出现,屏幕中选择你要操作的元素,会默认显示当前的元素的文本,如果元素没有文本将用xpath定位,默认是等待你选中的元素出现,也可以选择等待该元素的相对元素的出现。

 4.点击元素,默认也是用文本定位,可以点击选中的元素,也可以点击该元素的其他相对节点元素,也可以设置当某个文本出现时才去点击该元素。

 5.保存文本,界面中查找目标元素可以辅助你查找到正确的目标元素,如果有resource-id,默认用resource-id定位,如果没有,可以用其他文本的相对定位或者自定义xpath,点击查找目标元素,下面会展示出对应的xpath和目标元素的文本。然后输入保存文本的key和描述信息

 6.输入文本,界面中查找目标元素可以辅助你查找到正确的要输入文本的目标元素,点击输入文本的输入框会弹出第二和第三个界面,让你选择需要输入的文本

 

 

 7.添加断言,用于界面显示的元素和已知的确定的数据进行比较,界面中查找目标元素可以辅助你查找到需要比对的元素,点击最下面的输入框让你从缓存中选择期望的文本,也可以点击右边的标签页从测试数据中选择期望的文本

 

 

 

 8. 屏幕滑动,可以设置滑动的方向,速度以及滑动超时时间。

 9. 删除操作节点,直接点击删除即可

10. 生成代码,直接点击生成代码的按钮即可,生成的代码有feature文件,两个Step文件(两个Step的操作是一样的,只是Debug结尾的Step把每一个操作都放到了一个单独的方法里面,仅给Debug工具使用),页面对象Screen,多语言文件

 

 

 

 

 11. 刷新测试用例,如果你手动改了数据库的数据或者其他情况导致测试用例没有更新,可以点击刷新测试用例按钮进行更新。

12. Debug工具,可以选中一个Step,然后调试这个Step下所有的操作,也可以选中某一个操作,点击调试按钮出现下面弹框,点击执行即可调试对应的代码。在自定义的标签页,可以不调试当前的操作,让你可以调试任何代码,你只需要指定类名,方法名,方法参数即可,如果有问题,可以勾选“是否打印PageSource”把当前屏幕的源码打印出来检查。

 

 

联系我

 

关注公众号

 

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于NVIDIA Jetson AGX Xavier刷机过程记录

刷机记录,再刷机忘记了回来看看~主机电脑安装ubuntu20.04虚拟机,NVIDIA sdkmanager,主机端连上路由器提供的wifi。再将Jetson接上电源,但不开机。拿出附带的typec——USB数据线,typec端连上图中的typec口,USB连上主机电脑。找出一根网线,一端连接Jetson,另一端连接步骤…

shell编程 - 基础篇

1. Shell简介Shell是一个C语言编写的脚本语言,它是用户与Linux的桥梁,用户输入命令交给Shell处理,Shell将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户。2. Shell编程语言必知必会shell命令解释器:bash编程常用命令解释器.命令解释器bash 目前应用最广泛一…

第四届光学与机器视觉国际学术会议(ICOMV 2025) 2025 4th International Conference on Optics and Machine Vision

第四届光学与机器视觉国际学术会议(ICOMV 2025)2025 4th International Conference on Optics and Machine Vision重要信息官网:https://ais.cn/u/vEbMBz

【os】操作系统是怎样一步步接收键盘按键的?

你有没有想过,按下键盘按键后,相应的字符是怎么一步步显示在屏幕上的? 首先来看硬件部分,你至少应该能想到必须得有键盘和CPU:之后呢,cpu是怎么知道有键盘按下呢? 为了让键盘按下按键后能通知到CPU,需要借助键盘控制器,keyboard controller,这当然也是硬件:当按下按…

Kafka学习day01

Kafka的学习day01-Kafka基础环境的搭建Kafka Centos7环境搭建 1. 安装Zookeeper 1.1 官网下载安装包ZooKeeper官网下载地址1.2 使用Xftp或远程工具将ZooKeeper安装包上传文件到服务器或虚拟机1.3 编写配置文件 进入ZooKeeper安装目录 cd {安装目录}/conf/1.3.1 配置文件模版 # …

从数据到知识,知识中台赋能企业智能化升级

在信息爆炸的时代,企业面临着数据泛滥与知识匮乏的双重挑战。如何将海量的数据转化为有价值的知识,进而驱动企业的智能化升级,已成为企业竞争力的关键。知识中台作为企业数字化转型的核心,正逐渐成为企业智能化升级的新引擎。 一、数据与知识的转化 数据本身并不等同于知识…

基于Java+SpringBoot+Mysql在线课程学习教育系统功能设计与实现十

审核前台用户认证信息、查看所有用户、订单、发布文章、发布常见问题等。 该系统总共24张表,代码整洁,每个功能、接口上都有注释说明。 运行环境:jdk1.8、mysql5.x、eclipse/idea、maven3.5/3.6 包远程运行的哦。 特色功能:发布课程、学习课程、分享资料、资料讨论等。 部分…

基于Java+SpringBoot+Mysql在线课程学习教育系统功能设计与实现九

该系统总共24张表,代码整洁,每个功能、接口上都有注释说明。 运行环境:jdk1.8、mysql5.x、eclipse/idea、maven3.5/3.6 包远程运行的哦。 特色功能:发布课程、学习课程、分享资料、资料讨论等。 部分功能:前台课程评论信息控制器Controller、优惠卷信息控制器Controller、…

SharePoint Online页面的一些奇怪参数

前言最近,在查找资料的时候,偶然间发现了一些非常有意思的参数,如下:?env=Embedded or ?env=WebView&wdStartOn=21.正经的SharePoint Online页面2.加了参数的SharePoint Online 页面3.加了另一个参数的SharePoint Online页面结束语相信大家看效果就已经发现了,参数是…

Alpha冲刺(2/14)——2024.11.13

目录一、团队成员分工与进度二、成员任务问题及处理方式三、冲刺会议内容记录会议内容四、GitHub签入记录及项目运行截图GitHub签入记录项目运行截图五、项目开发进展及燃尽图项目开发进展燃尽图六、团队成员贡献表 一、团队成员分工与进度成员 完成的任务 完成的任务时长 剩余…

PS端Flash固化

PS端Flash固化Vivado版本:Vivado2020.2 芯片型号:RFSoC XCZU47DR 前提条件:Vitis工程编译完成,拨码开关拨到PS JTAG模式创建引导镜像 首先右键应用工程系统,点击Create Boot Image。检查镜像工程的文件是否为固化需要的工程文件,点击创建镜像的选项即可完成创建,创建完成…

Office Word 文档格式与目录样式(毕业设计论文常用)

调整格式技巧: Word 中点击 “文件”--》"选项"--》“显示”,将高亮部分全部打钩,有利于查看格式字符、 “分页符” 和“分节符” 两个很有用, 其中分节符 前后的页码是独立的。 样式间的关系: 类比 C++ 中类的继承编写的伪代码,“正文”为基类,派生出 “论文…