Robotium環境搭建與新手入門教程
準備工具:Robotium資料下載
知識準備:
- java基礎知識,如基本的數據結構、語法結構、類、繼承等
- 對Android系統較為熟悉,了解四大組件,會編寫簡單的Android應用程序
- 熟悉Eclipse IDE使用方法
- 有足夠的耐心與探索精神,遇到問題可以熟練的Google
環境搭建
- 安裝jdk,配置環境變量,如果不會請自行Google
- 下載安裝Android SDK,并更新
- 下載Eclipse,并安裝ADT插件,集成Android SDK
Robotium新手入門
- 新建junit test case,選擇junit4,并輸入類名,點擊完成
- 打開新建的測試類,修改繼承ActivityInstrumentationTestCase2<NotesList>,創建構造方法,并編寫測試代碼,具體如圖
package com.example.android.notepad.test; import android.test.ActivityInstrumentationTestCase2; import com.example.android.notepad.NotesList; import com.jayway.android.robotium.solo.Solo; public class NotePadTest extends ActivityInstrumentationTestCase2 { private Solo solo;//聲明Solo public NotePadTest()//構造方法 { super(NotesList.class); } @Override public void setUp() throws Exception { solo = new Solo(getInstrumentation(), getActivity()); } @Override public void tearDown() throws Exception { solo.finishOpenedActivities(); } public void testAddNote() throws Exception { //點擊add note按鈕 solo.clickOnMenuItem("Add note"); //比對結果 solo.assertCurrentActivity("Expected NoteEditor activity", "NoteEditor"); //在第一個TextEdit控件上輸入內容 solo.enterText(0, "Note 1"); //返回上個界面 solo.goBack(); //點擊菜單中的Add note solo.clickOnMenuItem("Add note"); //在第一個EditText中輸入內容 solo.enterText(0, "Note 2"); //返回NotesList activity solo.goBackToActivity("NotesList"); //截屏 solo.takeScreenshot(); boolean expected = true; boolean actual = solo.searchText("Note 1") ; solo.searchText("Note 2"); assertEquals("Note 1 and/or Note 2 are not found", expected, actual); } }
- 編寫完成后,打開模擬器或者連接上真機,右擊測試類,選擇Android junit Test
- Eclipse會切換到junit界面,此時模擬器(真機)會自動執行測試,通過左邊界面可以看到運行結果
- 一個簡單的測試就結束了。如果你沒有遇到問題,那么恭喜你繼續更深一步學習,如果你遇到問題了,不要急~請先確保你的操作過程沒有出任何錯誤,其次我列出你可能遇到的錯誤,如果還是沒有解決請Google或者聯系我們
1、最常見的:java.lang.NoClassDefFoundError: com.jayway.android.robotium.solo.Solo
解決方法:如圖操作后再clean工程
posted on 2014-05-15 21:15 順其自然EVO 閱讀(504) 評論(0) 編輯 收藏 所屬分類: 自動化測試 、android