Android JUnit Test——批量運行測試代碼

來源:互聯網
上載者:User

標籤:

寫Android測試案例有三要素,一是我們用的“安卓模擬器device”(用來顯示UI),二是“uiautomatorviewer.bat”(用來定位UI上的元素),三是“Robotium”中提供的類(用來與UI元素進行互動)。在寫好Android的測試案例後,可通過Android JUnit Test批量運行測試代碼。一共分四步——

第一步:寫一個suite類(suite中包含指定的測試案例,如下把SendInfoTest類作為一個測試案例添加進了suite中,LoginTest這個類由於被注釋沒有被加進suite中):

package com.renren.test.suites;import com.renren.test.SendInfoTest;import junit.framework.TestSuite;public class SuiteForTest {
public static TestSuite getTestSuite() { TestSuite suite = new TestSuite(); //suite.addTestSuite(LoginTest.class); suite.addTestSuite(SendInfoTest.class); return suite; }
}

第二步:寫一個runner類,用來運行指定的suite,runner類繼承了InstrumentationTestRunner類,並且重寫了getAllTests方法:

package com.renren.test.runners;import com.renren.test.suites.SuiteForTest;import android.test.InstrumentationTestRunner;import junit.framework.TestSuite;public class Runner1 extends InstrumentationTestRunner {    @Override    public TestSuite getAllTests() {        TestSuite suite = new TestSuite();        suite.addTest(SuiteForTest.getTestSuite());        return suite;    }}

第三步:修改AndroidManifest.xml檔案,添加一個instrumentation標籤,如:

其中“android:name”的值填寫“項目中的包名+runner類名”,“android:targetPackage”的值填寫被測應用app的包名,這個包名不是runner類所在項目中的包名,而是被測app——即被測apk重簽名後產生的Package name(隨之一起產生的還有Main activity名):

第四步:在項目上點擊右鍵->Run As->Run Configurations->選中Android JUnit Test並點擊上方的“建立按鈕”建立一個叫“ForMyRenren”的Android JUnit Test,Instrumentation runner選擇我們自己建立的runner類,點擊Run->批量運行測試。

附——擷取被測app的Package name和Main activity名的方法:

1、下載“apktool.jar”和“apktool.bat”檔案->。

2、 在Android的build-tools路徑(我的是C:\Users\Administration\AppData\Local\Android \android-sdk\build-tools\)下選擇一個高版本的檔案夾(我選擇了23.0.2)開啟,找到“aapt.exe”檔案;

3、將“apktool.jar”、“apktool.bat”和“aapt.exe”這三個檔案一起複製粘貼到“C:\Windows”目錄下:

4、啟動cmd命令列,輸入“aapt dump badging apk在本地的路徑名”(我用的是人人網re-sign後的apk),如下:

以上我們分別找到了apk的package name和activity name,即對應了apk重簽名後產生的Package name和Main activity名。

Android JUnit Test——批量運行測試代碼

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.