通过Appium Desktop实现录制功能并导出自动化脚本

1、我们进入下面这个界面

 图中红色标记1为 “top by coordinates” 按钮, 这是一种通过坐标定位元素的方式。
 图中红色标记2为 “Start Recording” 按钮, 选中表示处理录制状态。

 

2、点击“top by coordinates” 按钮,再点击 “Start Recording” 按钮,我们就可以在左则的 App 界面上点点点了。 脚本会随着我们的点击生成。 

 
3、选择导出的脚本语言,如下所示,可以选择如下5种

 

 

 
4、我们选择导出java语言

 图中红色标记1为 我们选择java-JUnit格式的代码
 图中红色标记2为 生成完整的脚本
 图中红色标记3为 复制
 
5、最终我们得到如下代码

 

import io.appium.java_client.MobileElement;
import io.appium.java_client.android.AndroidDriver;
import junit.framework.TestCase;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.remote.DesiredCapabilities;public class SampleTest {private AndroidDriver driver;@Beforepublic void setUp() throws MalformedURLException {DesiredCapabilities desiredCapabilities = new DesiredCapabilities();desiredCapabilities.setCapability("platformVersion", "10");desiredCapabilities.setCapability("deviceName", "9b2157cfaedb");desiredCapabilities.setCapability("platformName", "android");desiredCapabilities.setCapability("automationName", "UiAutomator2");desiredCapabilities.setCapability("appActivity", "com.android.settings.Settings");desiredCapabilities.setCapability("appPackage", "com.android.settings");desiredCapabilities.setCapability("noReset", "true");desiredCapabilities.setCapability("ensureWebviewsHavePages", true);URL remoteUrl = new URL("http://127.0.0.1:4723/wd/hub");driver = new AndroidDriver(remoteUrl, desiredCapabilities);}@Testpublic void sampleTest() {(new TouchAction(driver)).tap(74, 1117).perform()(new TouchAction(driver)).tap(170, 629).perform()}@Afterpublic void tearDown() {driver.quit();}
}


6、分析脚本

我们发现它生成的控件定位都是以坐标形式的, 但是我们知道坐标定位是不可靠的,因为它会受屏幕大小和分辨率的影响 。不过呢,个人认为也是有可以借鉴之处,至少对Appium有了一个简单的认识
 

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

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

相关文章

论文阅读 (94):Substructure Aware Graph Neural Networks (SAGNN, AAAI2023)

文章目录 1 要点1.1 概述1.2 一些概念1.3 代码1.4 引用 2 基础知识2.1 符号2.2 信息传递神经网络 (MPNN) 3 方法3.1 子图提取3.1.1 基于节点的策略3.1.2 基于图的策略 3.2 随机游走返回概率编码3.3 子图信息注入的信息传递 1 要点 1.1 概述 题目:子结构感知图神经…

【随笔】jupyter notebook启动打开文件出现:500 : Internal Server Error

错误: 看log有 module ‘mistune’ has no attribute BlockGrammar’错误 打开文件有500 : Internal Server Error 解决方法: pip install --upgrade jupyterhub pip install --upgrade --user nbconvertconda环境可以: conda install nbc…

linux基础命令总结

目录标题 目录操作1.绝对路径和相对路径2.目录的基本操作3.chomd、chown、chgrp4.cd命令 文件操作1.touch2.more4.cat5.grep6.rm7.cp8.mv9.find 磁盘操作1.df2.du date、passwd1.date2.passwd su、clear、man、who1.su2.man3.clear4.who unameuptimefreepsps与grep、kill1.与gr…

【LeetCode】HOT 100(20)

题单介绍: 精选 100 道力扣(LeetCode)上最热门的题目,适合初识算法与数据结构的新手和想要在短时间内高效提升的人,熟练掌握这 100 道题,你就已经具备了在代码世界通行的基本能力。 目录 题单介绍&#…

银河麒麟服务器 v10 sp1 安装 .Net6.0

系统版本、架构: 如果系统自带.netcore3,先卸载系统自带的.netcore3: 卸载.netcore3: 我的系统没有自带.netcore3,也没有yum命令。 下载二进制文件安装SDK: 下载 .NET 6.0 (Linux、macOS 和 Windows) 下载…

deeplabv3+源码之慢慢解析main.py(1)--get_argparser函数

deeplab v3源码 慢慢解析系列 本带着一些孩子们做,但本硕能独立看下来的学生不多。和孩子们一起再学一遍吧。希望孩子们和我自己都能坚持写下去吧。网上资料太多了,但不够慢,都是速成,没有足够的解释和补充,希望这次够…

DDR4技术原理详解

DDR4是DDR4-SDRAM的简写,即第4代DDR-SDRAM,DDR-SDRAM全称Double Date Rate Synchronous Dynamic Random Access Memory。本文重点解析DDR4技术规范及其背后的电子电路原理,以及编程使用DDR4过程中需要注意的性能事项。 DDR4数据存储原理 DD…

仙剑风景图片生成【InsCode Stable Diffusion美图活动一期】

一、 Stable Diffusion 模型在线使用地址:https://inscode.csdn.net/inscode/Stable-Diffusion 二、模型版本及相关配置: Steps: 20, Sampler: Euler a, CFG scale: 7, Seed: 423016627, Size: 512x512, Model hash: 74c61c3a52, Model: GuoFeng3,…

keil_arm满减栈应用场景

.text .global _start _start:满减压栈使用场景ldr sp,0x40000800mov r0,#0x1mov r1,#0x2bl add1_funcadd r0,r0,r1 r0 r0 r1 0x3b stopadd1_func: 压栈保存现场 r0 0x1 r1 0x2stmfd sp!,{r0,r1,lr}mov r0,#0x3mov r1,#0x4bl add2_funcadd r0,r0,r1 r0 r…

【实战】 六、用户体验优化 - 加载中和错误状态处理(上) —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(八)

文章目录 一、项目起航:项目初始化与配置二、React 与 Hook 应用:实现项目列表三、TS 应用:JS神助攻 - 强类型四、JWT、用户认证与异步请求五、CSS 其实很简单 - 用 CSS-in-JS 添加样式六、用户体验优化 - 加载中和错误状态处理1.给页面添加 …

Observability:Synthetic monitoring - 合成监测入门

从我们的全球测试基础设施监控关键用户旅程,并了解网络和前端性能对用户体验的影响。 全面了解你的网站性能、功能和可用性(从开发到生产),并在客户之前发现问题。合成监测(synthetic monitoring)使你能够模…

SAP 销售订单状态修改

FM: I_CHANGE_STATUS 代码样例: FUNCTION zjkdms003. *"---------------------------------------------------------------------- *"*"本地接口: *" IMPORTING *" VALUE(I_VBELN) TYPE VBELN_VA OPTIONAL *" EX…