天天看點

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

第一步、安裝JDK;

第二步、安裝Eclipse;

第三步、下載下傳并安裝AndroidSDK;

第四步、為Eclipse安裝ADT插件

 下面詳細介紹。

第一步、安裝JDK

Android自動化開發測試 必須安裝JDK(JavaDevelopment Kit),不能隻安裝JRE(Java Runtime Edition),在安裝Android開發工具之前需要先安裝JavaJDK。尤其是Eclipse的開發過程必須要JDK或者JRE的支援,否則在啟動Eclipse的時候就會報錯:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

首先,去JAVA官網上(http://www.oracle.com/technetwork/java/javase/downloads/index.html)下載下傳JDK(注意是下載下傳JDK,不是JRE),

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

點選JDK下載下傳按鈕後,進入JDK版本選擇界面,找到适合自己電腦系統的JDK版本,并下載下傳,如下圖所示,win32位的系統選擇Windows x86,64位的系統則選擇Windows x64安裝:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

下載下傳好後,輕按兩下安裝:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後選擇好自己要安裝的路徑:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

安裝JDK的時候,會自動給你安裝JRE,選擇好自己要安裝的路徑就行了:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後就不斷下一步,到最後安裝完成:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

安裝好後,要配置環境變量。(1)建立一個系統環境變量,變量名為JAVA_HOME,變量值為JDK的安裝路徑,如下圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後在系統變量清單中,(2)輕按兩下Path變量,并将: %JAVA_HOME%\bin; %JAVA_HOME%\jre\bin 追加到變量值後面(注意,在變量的最末尾添加時,要記得加上分号):

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

現在Oracle JDK成為系統可執行檔案搜尋路徑的一部分了,且該位址很容易找到。為了驗證安裝是否成功,打開指令行視窗,在指令提示符下執行javac -version。如果安裝成功,就會看到Oracle JDK版本号,如下圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本
Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

第二步、安裝Eclipse

去Eclipse官網(http://www.eclipse.org/downloads/)上下載下傳Eclipse,選擇EclipseIDE for JAVA EE Developers,根據自己的系統選擇32位或者64位的安裝包

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

Eclipse下載下傳好後是一個zip壓縮包,直接解壓到你想要放置的檔案夾中即可使用,無需自己安裝,其檔案目錄如下:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

Eclipse安裝好後,輕按兩下“eclipse.exe”打開,如下圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

要注意,此時打開Eclipse。有可能會報如下的錯誤:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

出現這種問題,可能的原因是JDK的環境變量沒有配置好,請按照第一步中講到的JDK環境變量設定方式進行配置。如果還是報錯的話,那麼可能是環境變量還是沒有設定好,出現這種情況我們隻需要重新開機一下電腦就行了。如果還是不行,那麼可以通過修改Eclipse.ini檔案,在最前面加上兩行内容:

-vm

D:\android\Java\jdk1.8.0_51\bin\javaw.exe   (注意,要把D:\android\Java\jdk1.8.0_51\換成你自己的jdk安裝目錄)

通過上面一番折騰之後,那麼現在Eclipse就可以順利啟動啦!

啟動Eclipse後,首先會讓你選擇一個工作空間,自己指定一個就是了(預設的是C槽的workspace檔案夾):

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後進入Eclipse歡迎界面,如下圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

到這裡,Eclipse安裝就完畢了。

第三步、下載下傳并安裝AndroidSDK

前面兩步,我們已經配置了JDK變量環境,并安裝好了Eclipse,通過這兩步之後Java的開發環境就準備好了,如果我們隻是開發普通的JAVA應用程式的話,那麼到這裡就可以了。但如果我們要通過Eclipse來開發Android應用程式的話,那麼我們還需要下載下傳Android SDK(Software Development Kit)和在Eclipse上安裝ADT插件。

首先,下載下傳Android SDK Tools,翻過牆的朋友可以去Google Android的官網上下載下傳(http://developer.android.com/sdk/index.html)。不願意翻牆的朋友,可以去我的bd網盤上下載下傳(http://pan.baidu.com/s/1nt8BcBB),或者去這個網站下載下傳(http://www.androiddevtools.cn/)。下面介紹一下在這個網站上下載下傳的情況,首先打開http://www.androiddevtools.cn/,我們可以看到這裡面有Android開發所需的各種工具,首先找到SDK Tools:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

選擇一個最新的版本就行了。注意,這裡有exe和zip兩種檔案可供下載下傳,exe的就是個安裝程式,下載下傳下來需要自己輕按兩下安裝。這裡建議下載下傳zip壓縮包,下載下傳後,直接解壓縮到你想要安裝Android的路徑就行了。解壓後的檔案目錄如下:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後就輕按兩下“SDK Manager.exe”,啟動SDK Manager,如圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

看到有這麼多需要選擇安裝的時候,是不是一時有點頭腦發昏眼冒金星不知道咋辦了啊。。。尤其是對于像Neo這種重度選擇恐懼症患者來說,真是感覺腦袋都要爆漿了。。。這個時候啦,一定要keep calm。

在這裡我隻說幾個必須要安裝的,如上圖所示的,Tools檔案夾裡面的Android SDK Tools(這個我們在之前的一步已經下載下傳好了的,一般不會讓你再安裝了,不過有可能會讓你更新),然後就是Android SDK Platform-tools和Android SDKBuild-tools,注意隻需要下載下傳最新的版本就行了。

然後就是API的選擇了。我們可以看到這裡提供了很多很多從Android 2.2到Android 5.x的很多版本的API,那麼怎麼選擇呢。這裡我建議,新手的話,選擇一個最新的版本就好了,因為Android是向下相容的。其他的以後你要用到了在下載下傳就行了(因為下載下傳安裝的速度實在太慢啦。。。)。是以如上圖所示,這裡我隻選擇了下載下傳目前最新的Android 5.1.1(API 22)。這裡需要說明的是,如果你以後不打算用模拟器調試,而是一直用真機來調試的話,那麼就可以不用裝“system images“了。不過新手的話,不知道怎麼選擇,還是建議直接全部勾上吧,

最後就是extras檔案夾中的東西了,如下圖所示,

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

理論上來說,extras中的東西如果網速允許,時間充沛的話,就都下載下傳了吧,應為都是好東西。不過一開始安裝的話,可以隻用安裝上圖中的三個,即Android Support Repository、Android SupportLibrary和Google USB Driver。其他的以後有時間再慢慢下載下傳吧。

接下來就可以進行安裝了。要注意,由于這些東西都是在google 的伺服器上下載下傳的。由于俺們天朝有牆,是以可能會出現連接配接不上的情況,如下圖:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

這種時候,我們可以通過有Android SDK的國内鏡像伺服器來下載下傳安裝,這裡推薦幾個:

1、中科院開源協會鏡像站位址:

IPV4/IPV6 : http://mirrors.opencas.ac.cn     端口:80

2、北京化工大學鏡像伺服器位址:

IPv4: http://ubuntu.buct.edu.cn/      端口:80

IPv4: http://ubuntu.buct.cn/  端口:80

IPv6: http://ubuntu.buct6.edu.cn/  端口:80

3、大連東軟資訊學院鏡像伺服器位址:

http://mirrors.neusoft.edu.cn  端口:80

随便選擇一個就行啦。這裡我選擇的是第三個站點,即大連東軟的鏡像,使用方法如下:

首先,點選菜單中的“Tools”,然後選擇下拉中的“Options…”,

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後在彈出的對話框中,填寫HTTP Proxy Server為mirrors.neusoft.edu.cn(鏡像伺服器的位址,注意前面不要加http),然後填寫HTTP Proxy Port為80 (端口号)。最後在勾選下面的『Forcehttps://... sources to be fetched using http://...』複選框,如下圖所示

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

接着點選close,關閉對話框,再重新啟動SDK Manager就行啦。

經過漫長的下載下傳安裝過程後(建議在晚上睡覺的時候下載下傳。。。),我們可以看到,之前選中安裝的項目後面的狀态都由之前的“Not installed”變為了如今的“Installed”,這就表示我們已經安裝成功了!有沒有很興奮啊。。ps。。趕緊刷牙洗臉上班去吧。。要遲到啦。。。

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

由于直接使用SDK Manager線上下載下傳安裝的方式,非常漫長,如果不想等待那麼長的朋友,可以自己到國内的站點(http://www.androiddevtools.cn/)上去下載下傳需要安裝的package,這種方式要快得多,不過就是要注意選擇好自己需要下載下傳的package以及相應的版本,在此就不加詳述了,有選擇恐懼症的硼油可以給我留言。

Ok,接着就是最後一步,我們熟悉的設定環境變量。這裡需要把”\platform-tools“和”\tools”路徑追加到系統環境變量Path中,具體如下:

首先,建立一個系統環境變量,變量名為(3)ANDROID_SDK_HOME,變量值為你的SDK安裝路徑,這裡我的安裝路徑為:D:\android\android-sdk,如圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後就是在系統的Path變量後,追加;  % ANDROID_SDK_HOME%\platform-tools;% ANDROID_SDK_HOME%\tools,如圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後我們可以檢驗一下Android SDK是否安裝成功:在指令行視窗中輸入”adb version“,出現如下顯示,則安裝成功了:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

 第四步、為Eclipse安裝ADT插件

感謝偉大的摳鼻·布萊恩特!終于來到最後一步啦!為了能在Eclipse上進行Android開發,我們必須為他安裝一個ADT(Android Development Tools)插件。

首先打開Eclipse軟體。進入歡迎界面。單擊菜單中的“Help”,選擇“Install New Software…”,如下圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

單擊“Install New Software…”後,彈出“Install”視窗,然後單擊“Add”按鈕,

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

然後會彈出“Add Repository”視窗,鍵入資訊如下:Name(ADT),Location(http://dl-ssl.google.com/android/eclipse/),如下圖所示,然後單擊“OK”按鈕:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

在彈出的對話框選擇要安裝的工具,然後下一步就可以了:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

不過如果我們沒有修改hosts或者使用代理翻牆的話,由于(http://dl-ssl.google.com/android/eclipse/)這個網站在天朝上不去,是以就會報如下錯誤:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

出現這種情況,我們要麼就選擇通過修改hosts或者使用代理翻牆,以繼續進行線上安裝,或者就采用離線安裝的方式(推薦),具體見我的另一篇blog(http://blog.csdn.net/dr_neo/article/details/46941859)

待一切安裝好後,重新開機Eclipse,然後,Eclipse會根據目錄的位置智能地和它相同目錄下Android sdk進行關聯,可以通過選擇菜單項“Window”然後單擊Preference來檢視,如圖所示:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

選擇側欄的“Android”,然後如果可以看到已經安裝的SDK平台,表示已經自動關聯好了,如下圖所示;如果發現沒有自動關聯好,則需自己添加了,單擊“Browse…”按鈕,選擇你的SDK安裝路徑,添加好就行啦~

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

到這裡,我們的整個在windows上進行Android開發環境的搭建就全部完成了,這時候,在Eclipse裡,選擇菜單項File—>New—>Project建立一個項目,我們就能看到建立Android項目的選項了:

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本
Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

安裝NodeJs

1.下載下傳Node.js

https://nodejs.org/en/,左側為穩定版,右側為最新版,推薦穩定版。

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

2.安裝Node.js

一路下一步,記住安裝路徑(此處安裝在 D:\Program Files\nodejs 下)。

安裝完成後(需要配置環境變量:建立NODE_PATH,取值為node的安裝路徑,如:E:\Program Files\nodejs\node_modules)運作cmd,執行node -v和npm -v指令檢視安裝情況。如執行結果如下圖,說明安裝成功。

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

(執行完該指令後,nodejs安裝目錄下會自動生成檔案夾node_global,若未生成則手動建立)

****************************************************************************************************************

編寫自動化腳本

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

代碼(全)如下:

package com.tinglv.imguider;

import java.net.MalformedURLException;

import java.net.URL;

import org.openqa.selenium.By;
import org.openqa.selenium.remote.DesiredCapabilities;

import io.appium.java_client.android.AndroidDriver;

public class AppiumTest {

	public static void main(String[] args) throws MalformedURLException, InterruptedException {

        DesiredCapabilities capabilities = new DesiredCapabilities();
        //手機類型或模拟器類型
        capabilities.setCapability("deviceName", "oppo-oppo_r9sk-2c9c6a56");
        //自動化測試引擎
        capabilities.setCapability("automationName", "Appium");
        //手機作業系統iOS, Android, or FirefoxOS
        capabilities.setCapability("platformName", "Android");
        //手機作業系統版本号
        capabilities.setCapability("platformVersion", "Android 6.0.1");
        //app包名
        capabilities.setCapability("appPackage", "com.android.calculator2");
        //app中啟動的 Activity名稱
        capabilities.setCapability("appActivity", ".Calculator");

        AndroidDriver driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);

        driver.findElement(By.name("6")).click();    //通過By.name 方式擷取 電腦數字 6,并且點選
        driver.findElement(By.name("6")).click();
        driver.findElement(By.name("6")).click();
        driver.findElement(By.name("delete")).click();
        driver.findElement(By.name("*")).click();
        driver.findElement(By.name("1")).click();
        driver.findElement(By.name("1")).click();
        driver.findElement(By.name("=")).click();
        Thread.sleep(1000);

        String result = driver.findElement(By.id("com.android.calculator2:id/formula")).getText();
        System.out.println(result);

        driver.quit();
    }
}

                //通過By.name 方式擷取 電腦數字 6,并且點選
        driver.findElement(By.name("6")).click();
        driver.findElement(By.name("6")).click();
        driver.findElement(By.name("delete")).click();
        driver.findElement(By.name("*")).click();
        driver.findElement(By.name("1")).click();
        driver.findElement(By.name("1")).click();
        driver.findElement(By.name("=")).click();
        Thread.sleep(1000);

        String result = driver.findElement(By.id("com.android.calculator2:id/formula")).getText();
        System.out.println(result);

        driver.quit();
    }
}

      
  • 代碼中的 capabilities 參數請參考
http://appium.io/slate/en/master/?ruby#appium-server-capabilities
           
  • 執行自動化測試

1、啟動Android virtual devices

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本
  • Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本
  • 切記Android Emulator保持開屏狀态
Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

2、啟動appium

  • 切記:點選右上角的啟動按鈕
Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

3、在Eclipse執行腳本 

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

此時,可以看到Android Emulator按腳本一步一步自動執行

最後歡迎測試開發人員添加QQ好友互相交流或者有機會合作建團    QQ:1284817639

Appium-ADT-Eclipse 實作Android 機 自動化測試編寫自動化腳本

繼續閱讀