如何進行Android單元測試

來源:互聯網
上載者:User

如何進行Android單元測試

 
 

  1. Menifest.xml中加入:

    <application>中加入:

    <uses-library android:name="android.test.runner" />

    <application>外面加入:

    <uses-permission android:name="android.permission.RUN_INSTRUMENTATION" />

    <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="name.feisky.android.test"

    android:label="Test for my app"/>

  2. 編寫單元測試代碼:必須繼承自AndroidTestCase類

    package name.feisky.android.test;

     
     

    import android.test.AndroidTestCase;

    import junit.framework.Assert;

     
     

    public class MyTest extends AndroidTestCase {

    private static final String Tag="MyTest";

     
     

    public void testSave() throws Throwable

    {

    int i=4+8;

    Assert.assertEquals(5,i);

    }

     
     

    public void testSomethingElse() throws Throwable {

    Assert.assertTrue(1 + 1 == 12);

    }

     
     

    }

  3. 執行測試

    IntelliJ中:


     
     


    eclipse中:右鍵 run as Android JUnit Test


    命令列工具:

    adb shell am instrument -w name.feisky.android.test/android.test.InstrumentationTestRunner

     
     

也可以建立一個測試專案進行測試

 
 

  1. New > Project > Android > Android Test Project.


  1. 添加測試案例類

    添加新類,基類設定為android.test.ActivityInstrumentationTestCase2<HelloAndroid>

  2. 添加建構函式

    添加setUp()方法,這個方法在所有的測試之前進行變數和測試環境的初始化。


    @Override

        protected
    void setUp()
    throws
    Exception
    {

            super.setUp();

            mActivity =
    this.getActivity();

            mView =
    (TextView) mActivity.findViewById(com.example.helloandroid.R.id.textview);

            resourceString = mActivity.getString(com.example.helloandroid.R.string.hello);

        }

  3. 添加testPreconditions()方法,檢查初始化環境,只執行一次

    public
    void testPreconditions()
    {

          assertNotNull(mView);

        }

  4. 添加單元測試


    public
    void testText()
    {

          assertEquals(resourceString,(String)mView.getText());

        }

  5. 測試 Run As... > 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.