Java+Appium实现屏幕录制功能

 更新时间:2023年06月13日 15:31:04   作者:qq_492448446  
这篇文章主要介绍了Java如何利用Appium实现屏幕录制功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

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;
 
  @Before
  public 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);
  }
 
  @Test
  public void sampleTest() {
    (new TouchAction(driver)).tap(74, 1117).perform()
    (new TouchAction(driver)).tap(170, 629).perform()
  }
 
  @After
  public void tearDown() {
    driver.quit();
  }
}

6、分析脚本

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

到此这篇关于Java+Appium实现屏幕录制功能的文章就介绍到这了,更多相关Appium屏幕录制内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何利用Spring把元素解析成BeanDefinition对象

    如何利用Spring把元素解析成BeanDefinition对象

    这篇文章主要介绍了如何利用Spring把元素解析成BeanDefinition对象,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • Java ArrayList.toArray(T[]) 方法的参数类型是 T 而不是 E的原因分析

    Java ArrayList.toArray(T[]) 方法的参数类型是 T 而不是 E的原因分析

    这篇文章主要介绍了Java ArrayList.toArray(T[]) 方法的参数类型是 T 而不是 E的原因分析的相关资料,需要的朋友可以参考下
    2016-04-04
  • Java创建,编辑与删除Excel迷你图表的实现方法

    Java创建,编辑与删除Excel迷你图表的实现方法

    迷你图是Excel工作表单元格中表示数据的微型图表。本文将通过Java代码示例介绍如何在Excel中创建迷你图表,以及编辑和删除表格中的迷你图表,需要的可以参考一下
    2022-05-05
  • 解决Spring Mvc中对象绑定参数重名的问题

    解决Spring Mvc中对象绑定参数重名的问题

    最近在工作中遇到了参数绑定的一个问题,发现网上这方面的资料较少,索性自己来总结下,下面这篇文章主要给大家介绍了关于如何解决Spring Mvc中对象绑定参数重名问题的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-08-08
  • SpringBoot实现接口参数加密解密的示例代码

    SpringBoot实现接口参数加密解密的示例代码

    加密解密本身并不是难事,问题是在何时去处理?SpringMVC 中给我们提供了 ResponseBodyAdvice 和 RequestBodyAdvice,利用这两个工具可以对请求和响应进行预处理,非常方便。废话不多说,我们一起来学习一下
    2022-09-09
  • JAVA操作elastic search的详细过程

    JAVA操作elastic search的详细过程

    Elasticsearch Rest High Level Client 是 Elasticsearch 官方提供的一个 Java 客户端库,用于与 Elasticsearch 进行交互,本文介绍JAVA操作elastic search的详细过程,感兴趣的朋友一起看看吧
    2024-08-08
  • 详解spring-cloud与netflixEureka整合(注册中心)

    详解spring-cloud与netflixEureka整合(注册中心)

    这篇文章主要介绍了详解spring-cloud与netflixEureka整合(注册中心),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-02-02
  • java计算方差、标准差(均方差)实例代码

    java计算方差、标准差(均方差)实例代码

    在本篇文章里小编给大家分享了关于java计算方差、标准差(均方差)实例代码以及相关知识点,需要的朋友们可以参考下。
    2019-08-08
  • maven-assembly-plugin报红无法加载报错:Plugin ‘maven-assembly-plugin:‘ not found

    maven-assembly-plugin报红无法加载报错:Plugin ‘maven-assembly-plugin

    maven-assembly-plugin是一个常用的打包插件,但是在使用过程中经常会遇到各种报错,本文就来介绍一下maven-assembly-plugin报红无法加载报错,具有一定的参考价值
    2023-08-08
  • java+opencv实现人脸识别功能

    java+opencv实现人脸识别功能

    这篇文章主要介绍了java+opencv实现人脸识别功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-05-05

最新评论