java+appium 自動化環境搭建

lightwing發表於2021-09-09

1、安裝JDK1.7及以上

2、下載解壓sdk並且配置環境變數:

  圖片描述

  ANDROID_HOME:...adt-bundle-windows-x86_64-20140702sdk

  PATH:%ANDROID_HOME%platform-tools;%ANDROID_HOME%tools;

  dos檢測adb版本:如下則sdk環境配置成功!

  圖片描述

3、安裝夜神模擬器(自行百度),然後開啟夜神模擬器!

4、安裝appium  URL:

  下載:圖片描述

  預設安裝:C:UsersAdministratorAppDataLocalappium-desktop

  注意:不要下載安裝舊版本appium-server

  啟動:Appium.exe 填入本地地址:127.0.0.1及預設埠Port:4723

  圖片描述

  啟動appium伺服器:Start Server v1.7.2

  圖片描述

  開啟一個會話進行選項配置:Desired Capabilities

  圖片描述

 

  (1) deviceName 獲取:首先透過 adb connect 127.0.0.1:62001連線夜神模擬器,然後透過adb devices檢測deviceName:127.0.0.1:62001

  圖片描述

  注意:genymotion自動連線,不需要 adb connect提前連線,與選取模擬器有關係!

  ·(2) appPackage 獲取包名透過 adb shell dumpsys activity | find "mFocusedActivity"檢測app當前執行的包名如下:appPackage: com.baidu.BaiduMap

  圖片描述

  (3) appActivity入口獲取類名(表示當前介面):先進入 ...sdkbuild-toolsandroid-4.4W目錄找到aapt.exe在此目錄下開啟dos輸入:aapt dump badging 拖入apk

  可以看到包名:圖片描述

  尋找到類名: 圖片描述

  (4) platformName : android

   (5) 開始會話:

  圖片描述

5、開啟java自動化指令碼編寫之旅:

  (1) New Maven Progect;

  (2) 引入java-client:擴充webDriver的協議,新增自動化相關的API;maven中央倉庫:

  圖片描述

   (3) 上程式碼:


package com.appium_Demo1;
import java.net.MalformedURLException;import java.net.URL;import org.apache.tools.ant.taskdefs.Sleep;import org.openqa.selenium.remote.DesiredCapabilities;import org.openqa.selenium.support.ui.Sleeper;import io.appium.java_client.android.AndroidDriver;public class LoginTest {    public static void main(String[] args) throws MalformedURLException, InterruptedException {        // TODO Auto-generated method stub        //1.新增配置,建立DesiredCapabilities物件
        DesiredCapabilities desiredCapabilities = new DesiredCapabilities();        //指定測試裝置的名稱
        desiredCapabilities.setCapability("deviceName", "127.0.0.1:62001");        //新增作業系統配置
        desiredCapabilities.setCapability("platformName", "Android");        //新增作業系統版本設定
        desiredCapabilities.setCapability("platformVersion", "4.4.2");        //指定想要測試應用的包名
        desiredCapabilities.setCapability("appPackage", "com.baidu.BaiduMap");        //指定想要測試應用的入口activity
        desiredCapabilities.setCapability("appActivity", "com.baidu.baidumaps.WelcomeScreen");        //2.建立驅動...URL是appium的固定地址;指定appium通訊的地址,將相對應的配置傳入到驅動裡邊
        AndroidDriver androidDriver = new AndroidDriver(new URL(""),desiredCapabilities);        //加執行緒等待        //Thread.sleep(5000);        //開啟地圖後點選同意繼續
        androidDriver.findElementById("com.baidu.BaiduMap:id/ok_btn").click();        //點選進入地圖
        androidDriver.findElementById("com.baidu.BaiduMap:id/btn_enter_map").click();
        //退出        androidDriver.quit();
    }
}


  (4) 報錯:

  圖片描述

  找不到元素,加執行緒等待:Thread.sleep(5000);

  (5) 再次執行成功!

  圖片描述

6、小結:經過學習後自己總結,親身體驗,APP百度地圖自動化導航執行成功,分享給正在學習的小白,如有不足之處,還請大家指出,勿噴!

作者:o小兵o

原文連結:https://www.cnblogs.com/xiaozhaoboke/p/9954780.html


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3407/viewspace-2819810/,如需轉載,請註明出處,否則將追究法律責任。

相關文章