Java+Appium實現(xiàn)屏幕錄制功能
1、我們進入下面這個界面
圖中紅色標記1為 “top by coordinates” 按鈕, 這是一種通過坐標定位元素的方式。
圖中紅色標記2為 “Start Recording” 按鈕, 選中表示處理錄制狀態(tài)。
2、點擊“top by coordinates” 按鈕,再點擊 “Start Recording” 按鈕,我們就可以在左則的 App 界面上點點點了。 腳本會隨著我們的點擊生成。
3、選擇導(dǎo)出的腳本語言,如下所示,可以選擇如下5種
4、我們選擇導(dǎo)出java語言
圖中紅色標記1為 我們選擇java-JUnit格式的代碼
圖中紅色標記2為 生成完整的腳本
圖中紅色標記3為 復(fù)制
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、分析腳本
我們發(fā)現(xiàn)它生成的控件定位都是以坐標形式的, 但是我們知道坐標定位是不可靠的,因為它會受屏幕大小和分辨率的影響 。不過呢,個人認為也是有可以借鑒之處,至少對Appium有了一個簡單的認識
到此這篇關(guān)于Java+Appium實現(xiàn)屏幕錄制功能的文章就介紹到這了,更多相關(guān)Appium屏幕錄制內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何利用Spring把元素解析成BeanDefinition對象
這篇文章主要介紹了如何利用Spring把元素解析成BeanDefinition對象,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-08-08Java ArrayList.toArray(T[]) 方法的參數(shù)類型是 T 而不是 E的原因分析
這篇文章主要介紹了Java ArrayList.toArray(T[]) 方法的參數(shù)類型是 T 而不是 E的原因分析的相關(guān)資料,需要的朋友可以參考下2016-04-04Java創(chuàng)建,編輯與刪除Excel迷你圖表的實現(xiàn)方法
迷你圖是Excel工作表單元格中表示數(shù)據(jù)的微型圖表。本文將通過Java代碼示例介紹如何在Excel中創(chuàng)建迷你圖表,以及編輯和刪除表格中的迷你圖表,需要的可以參考一下2022-05-05SpringBoot實現(xiàn)接口參數(shù)加密解密的示例代碼
加密解密本身并不是難事,問題是在何時去處理?SpringMVC?中給我們提供了?ResponseBodyAdvice?和?RequestBodyAdvice,利用這兩個工具可以對請求和響應(yīng)進行預(yù)處理,非常方便。廢話不多說,我們一起來學(xué)習一下2022-09-09詳解spring-cloud與netflixEureka整合(注冊中心)
這篇文章主要介紹了詳解spring-cloud與netflixEureka整合(注冊中心),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧2019-02-02maven-assembly-plugin報紅無法加載報錯:Plugin?‘maven-assembly-plugin
maven-assembly-plugin是一個常用的打包插件,但是在使用過程中經(jīng)常會遇到各種報錯,本文就來介紹一下maven-assembly-plugin報紅無法加載報錯,具有一定的參考價值2023-08-08