[轉]Android Studio 裡搭建自動化測試架構Robotium

來源:互聯網
上載者:User

標籤:

Android的自動化測試架構可選擇的不多,後來選了Robotium(https://code.google.com/p/robotium/),它的文法及易用性挺像我們用在iOS裡的KIF。

 

官方文檔裡面沒有提到怎麼在Android Studio裡搭建它,後來在Stack Overflow找到個答案:http://stackoverflow.com/questions/23275602/robotium-with-android-studio/23295849#23295849

 

自己分析了下,要在Android Studio裡搭建Robotium也蠻簡單的:

1、build.gradle裡,dependencies下增加 androidTestCompile ‘com.jayway.android.robotium:robotium-solo:5.1’。如果缺少這個配置,則在測試代碼裡將無法用到robotium的包。

2、我們項目的代碼結構是老式的,所以需要重新設定test的地址,即在android.sourceSets下新增 androidTest.setRoot(‘tests’)。可以取tests外的其他名字,然後在跟build.gradle同級的地方建立這個檔案夾,沒有更多額外設定的話,測試代碼的放置需要按照新式結構,即tests\java下。如果沒有正確配置,則這個測試代碼將不可見。

 

 

除了代碼改動外,如果要在Android Studio裡面跑,則還需要額外配置:菜單Run -> Edit Configuration,在Android Tests下新增條目,然後正確配置,就可以了:選擇哪個Module,選擇測試的範圍(Module或Package等),選擇Target Device。這個是配置的東西,沒有辦法提交到Git。

 

下面是個簡單的例子,我們的app在測試的環境下會先彈出一個選環境的AlertDialog,所以需要clickOnText:

  1. /** 
  2.  * Created by Samuel Cai on 5/20/14. 
  3.  */  
  4. public class MainActivityTest extends ActivityInstrumentationTestCase2 {  
  5.   
  6.     private Solo solo;  
  7.   
  8.     public MainActivityTest() {  
  9.         super(LogoActivity.class);  
  10.     }  
  11.   
  12.     @Override  
  13.     public void setUp() throws Exception {  
  14.         super.setUp();  
  15.         solo = new Solo(getInstrumentation(), getActivity());  
  16.     }  
  17.   
  18.     public void testNavigateToHomeScreen() throws Exception {  
  19.         //choose environment  
  20.         solo.waitForDialogToOpen();  
  21.         solo.clickOnText("qa");  
  22.         solo.clickOnButton("OK");  
  23.   
  24.         //assert home screen finished loading.  
  25.         assertTrue(solo.waitForText("Diapering"));  
  26.     }  
  27. }  

轉自:http://m.blog.csdn.net/blog/hongaiyan/39676657#

[轉]Android Studio 裡搭建自動化測試架構Robotium

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.