在移動互聯網的今天,安卓應用之間的火拼如火如荼,如何應對安卓應用開發快速的版本迭代,如果僅靠手動不停的回歸測試,那就有點悲催了。Robotim是一套針對安卓應用的自動化測試框架,其特性和selenium非常相似,Robotium官網對其的功能描述如下:Robotium是基于Android 原生的Instruments,創建一個測試框架,編寫強大和穩健的Android應用程序自動黑箱測試用例。通過Robotium支持,可以寫功能,系統和驗收測試方案,跨越多個Android Activities。
最近剛好在學習Robotium,下面是學習的心得以及使用過程中遇到的問題點記錄下作為備忘,順便大家一起探討下。
環境搭建:搭建環境需要以下工具
1、 下載Android SDK 請點擊這里
2、 下載Eclipse 請點擊這里
3、 下載JDK 請點擊這里
4、 Eclipse中安卓開發插件ADT 即Android Development Toolkit。
安裝ADT插件步驟:
1、 啟動eclipse
2、 點擊菜單Help->Install New SoftWare
3、 在workWith中輸入https://dl-ssl.google.com/android/eclipse/后,回車
4、 其他步驟同安裝其他插件一樣
新建工程:新建一個Android Test Project
1、 導入被測的安卓APP應用工程
2、 菜單File->New->Project->Android Test Project
3、 輸入測試工程名稱->下一步
4、 選擇要測試的工程,就是第一步導入的工程
5、 在新建的測試工程中新建libs包,將robotium的jar包放進去(注:文件夾名稱必須為libs,否則運行時會報找不到class的錯)
編寫腳本:在工程搭建完畢后,我們可以開始編寫腳本
1、 新建一個java類文件
2、 腳本開始部分的寫法是固定的:
public class Login extends ActivityInstrumentationTestCase2{
//測試類必須繼承自ActivityInstrumentationTestCase2,<>中的內容為應用打開時加載的頁面名稱
private Solo solo;
public Login (){
super(“com.android.app”,WelcomeActivity.class);
//構造函數第一個參數是被測程序的包名,第二個參數是應用程序加載類型
}
@Override
public void setUp(){
solo = new Solo(getInstrumentation(),getActivity());
//Solo對象初始化,固定寫法
}
@Override
public void tearDown(){
solo.finishOpenedActivities();
//測試結束后,關閉所有頁面
}
3、編寫測試方法(編寫需要實現功能的腳本,調用solo的方法)
4、運行腳本,可以啟動模擬器或者連接真機運行
以上主要是描述了robotium的一些功能,以及正式開始腳本前的一些準備工作和用例腳本的一些固定部分的寫法,可以參考robotium的doc文檔。