自動化測試系統計算器---Android studio + java + appium


前言:已配置好appium+java環境,如有問題,可參考前篇blog。

 

實例:

1.創建java項目,導入相關依賴,java-client和selenium版本號最好對應,不然可能出現很奇葩的問題。相關網站:https://mvnrepository.com/artifact/io.appium/java-client。點擊相應版本,下面會有對應的selenium版本號對應的網址。

 

 java文件對應的配置如下

配置好java項目后,可以通過sdk包下面的tools文件夾下面找到uiautomatorviewer.bat文件,雙擊打開,可以獲取app頁面相關元素的id,記錄,后面編碼有用到。如下圖:

編碼,測試1+6,打開appium並運行,並運行下面代碼,觀察結果

public class MyClass {

    private AppiumDriver driver;

    @BeforeClass
    public void setup() throws Exception{
        DesiredCapabilities cap = new DesiredCapabilities();
        cap.setCapability(CapabilityType.BROWSER_NAME,"");
        cap.setCapability("platformName","Android");
        cap.setCapability("deviceName","9HNBB18330161672");
        cap.setCapability("platformVersion","6.0");

        cap.setCapability("appPackage","com.android.calculator2");
        cap.setCapability("appActivity","com.android.calculator2.Calculator");
        cap.setCapability("appWaitActivity","com.android.calculator2.Calculator");
        cap.setCapability("sessionOverride",true);
        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), cap);
    }

    @Test
    public void plus(){
        //獲取1
        driver.findElementById("com.android.calculator2:id/digit1").click();
        //獲取+
        driver.findElementById("com.android.calculator2:id/plus").click();
        //獲取6
        driver.findElementById("com.android.calculator2:id/digit6").click();
        //獲取=
        driver.findElementById("com.android.calculator2:id/equal").click();
    }

    @AfterClass
    public void tearDown() throws Exception{
        driver.quit();
    }
}

 

難點解析:

1.環境配置。一點要創建java項目,避免依賴文件沖突。

采坑點,在Android studio中導入相關jar文件,必須創建java項目,而不是android項目。因為AS會默認創建Android項目,剛開始沒注意這一點,在通過glide導入相關依賴文件的時候,沖突了,一直報錯。

如下:Caused by: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives

因為io.appium:java-client:4.1.2和com.android.support:appcompat-v7:27.1.1有重復引用

2.獲取app頁面元素id,如果可以自己看代碼,皆大歡喜,如果沒法看到源碼,可以通過sdk下自帶工具獲取。

3.編碼,后續詳解

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM