一、老規矩,咱們進入下面這個界面java
圖中紅色標記1爲 「top by coordinates」 按鈕, 這是一種經過座標定位元素的方式。
圖中紅色標記2爲 「Start Recording」 按鈕, 選中表示處理錄製狀態。
android
二、點擊「top by coordinates」 按鈕,再點擊 「Start Recording」 按鈕,咱們就能夠在左則的 App 界面上點點點了。 腳本會隨着咱們的點擊生成。
app
三、選擇導出的腳本語言,以下所示,能夠選擇以下5種ui
四、咱們選擇導出java語言spa
圖中紅色標記1爲 咱們選擇java-JUnit格式的代碼.net
圖中紅色標記2爲 生成完整的腳本code
圖中紅色標記3爲 複製orm
五、最終咱們獲得以下代碼blog
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("automationName", "Appium"); desiredCapabilities.setCapability("platformName", "Android"); desiredCapabilities.setCapability("platformVersion", "6.0"); desiredCapabilities.setCapability("appPackage", "com.android.calculator2"); desiredCapabilities.setCapability("appActivity", ".Calculator"); desiredCapabilities.setCapability("deviceName", "msm8953_64"); URL remoteUrl = new URL("http://localhost:4723/wd/hub"); driver = new AndroidDriver(remoteUrl, desiredCapabilities); } @Test public void sampleTest() { (new TouchAction(driver)).tap(429, 574).perform() (new TouchAction(driver)).tap(596, 691).perform() (new TouchAction(driver)).tap(424, 572).perform() (new TouchAction(driver)).tap(418, 1067).perform() } @After public void tearDown() { driver.quit(); } }
六、分析腳本rem
咱們發現它生成的控件定位都是以座標形式的, 可是咱們知道座標定位是不可靠的,由於它會受屏幕大小和分辨率的影響 。不過呢,我的認爲也是有能夠借鑑之處,至少對Appium有了一個簡單的認識