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 Boot+Vue实现Socket通知推送的完整步骤

    Spring Boot+Vue实现Socket通知推送的完整步骤

    最近工作中涉及消息通知功能的开发,所以下面这篇文章主要给大家介绍了关于Spring Boot+Vue实现Socket通知推送的完整步骤,文中通过实例代码以及图文介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • Java线程池高频面试题总结

    Java线程池高频面试题总结

    在进程和线程的相关面试题中还有一部分是关于多线程和线程池的,也是在这一部分中比较常考察的内容。本篇文章就带你了解一下,希望能给你带来帮助
    2021-08-08
  • Java常用编译器优劣详细分析及推荐

    Java常用编译器优劣详细分析及推荐

    Java编译器(javac)是Java开发工具包(JDK)中的一个重要组件,它负责将Java源代码文件(以.java为扩展名)编译成字节码文件(以.class为扩展名),这篇文章主要介绍了Java常用编译器优劣详细分析及推荐的相关资料,需要的朋友可以参考下
    2026-03-03
  • spring cloud实现前端跨域问题的解决方案

    spring cloud实现前端跨域问题的解决方案

    这篇文章主要介绍了 spring cloud实现前端跨域问题的解决方案,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • java删除数组中的某一个元素的方法

    java删除数组中的某一个元素的方法

    下面小编就为大家带来一篇java删除数组中的某一个元素的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • ElasticSearch学习之Es索引Api操作

    ElasticSearch学习之Es索引Api操作

    这篇文章主要为大家介绍了ElasticSearch学习之Es索引Api操作详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • 如何实现自定义SpringBoot的Starter组件

    如何实现自定义SpringBoot的Starter组件

    这篇文章主要介绍了实现自定义SpringBoot的Starter组件的示例代码,想要自定义starter组件,首先要了解springboot是如何加载starter的,也就是springboot的自动装配机制原理,本文结合示例代码详细讲解,需要的朋友可以参考下
    2023-02-02
  • Springboot jpa @Column命名大小写问题及解决

    Springboot jpa @Column命名大小写问题及解决

    这篇文章主要介绍了Springboot jpa @Column命名大小写问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • springboot 接收LocalDateTime方式

    springboot 接收LocalDateTime方式

    这篇文章主要介绍了springboot 接收LocalDateTime方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • Struts2学习笔记(4)-通配符的使用

    Struts2学习笔记(4)-通配符的使用

    本文主要介绍Struts2中通配符的使用,简单实用,希望能给大家做一个参考。
    2016-06-06

最新评论