Robotium自動化測試基礎

說到Robotium自動化測試,可能小夥伴們都是耳熟能詳的,作爲老測試老說,怎麼能不瞭解瞭解呢,所以最近兩天學習了一下,具體內容主要包括基礎的環境搭建,使用的工具是eclipse,adt文件包(adt-bundle-windows-x86_64_20140101\sdk\platform-tools),開發階段的自動化我還不清楚,只是找到一個使用現成的apk進行自動化測試的方法,下面就詳細介紹一下,以備使用時查詢:

首先說說優點:從測試的角度上看,僅需要apk安裝包的方式,主要有以下幾個優點:

a.測試人員無需在Eclipse中搭建複雜的Android開發環境(基本的Android SDK和Java環境還是必需的。)

b.在app還沒開發完全的情況下,測試人員可以根據大致的app功能,把自動化開發框架建好,以利於後期對具體功能展開自動化腳本的開發。

c.在進行自動化測試時,即使不用到持續集成,也可以較爲方便地測試迭代中的app——只需要在測試設備上(模擬機或者手機)安裝最新的app即可。


1.首先能就是搭建環境,要搭建環境那麼環境變量就不可少,可以參考Android和JAVA的環境變量的添加方法,這裏不詳細說了

2.我使用的是之前朋友給的一個ADT包裏面的eclipse和sdk來做搭建的環境,如果有可以直接使用,很方便

3.從開發同事那裏得到最近的apk的包,使用resigner工具對此測試包進行重簽名(很簡單,直接把apk拉到resigner工具中就可以)

重簽名方法:

a使用工具re-sign.jar重簽名工具

b把需要安裝的apk包放到一個創建的目錄(隨便創建一個就可以file)中,把re-sign.jar也放在該目錄下

c雙擊打開re-sign.jar,把需要重簽名的apk拉到re-sign.jar上,系統會自動實現重簽名的操作,並自動生成一個結果,這個結果中有package name和MainActivity要記錄備用,如下圖


d給重簽名的文件命名成target apk 名字

4.把重簽名的apk放置到adt-sdk-platform_tools的文件夾下,路徑爲:xxx/adt-bundle-windows-x86_64_20140101\adt-bundle-windows-x86_64_20140101\sdk\platform-tools

5.使用數據線把手機和電腦連接起來,接下來就實現把重簽名的apk安裝到實機中去,方法:

a.打開命令提示符:cmd

b.使用cd .../sdk/platform-tools

c.進入目標的文件夾下後使用adb命令來安裝apk,命令行如下:

adb install testapp.apk(重簽名的目標apk安裝包名字)

看到Success,說明apk已經安裝成功了

ps:在安裝apk之前,要確認老包已經卸載了,此命令不支持覆蓋安裝,所以不卸載就安裝系統執行命令後會提示說安裝失敗,failuer

6.接下來就要使用eclipse來實現腳本的執行了

在eclipse中新建一個Android Test Project進行配置,使得自動化腳本與要測試的apk進行關聯

1)首先要修改Android Test Project下的AndroidMainTest.xml文件,使得粗體標註的package名與resign生成的名字一致》

中間的<instrumentation>腳本是需要手動添加的,之前會自動生成一段代碼,但是instrumentation是不會自動生成出來的

<instrumentation

android:name = "android.test.InstrumentationTestRunner"

android:targetPackage = "com.example.mobile.testedapp"/>

2)在自動化腳本測試類中,聲明初始類,也要與resign生成的main activity類名一致

private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME="com.example.mobile.testedapp.MainActivity"

7.這樣就可以在eclipse中的Android Test Project 中開發自動化腳本並在安裝好的apk基礎上運行了




--我在實際執行時遇到一個問題,總是提示java語法錯誤,讓我打開那個sdk manager工具,我嘗試了下載新的sdk也不行,所以我重新下載了一個更新的adt包才解決這個問題。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章