Android 单元测试基于JUnit开发.但是用起来并不容易
AndroidManifest.xml
确保你的应用加载了JUnint库,并配置AndroidMainifest.xml按照下面的方式.
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.app.tests" android:versionCode="1" android:versionName="1.0"> <application> <uses-library android:name="android.test.runner" /> </application> <uses-sdk android:minSdkVersion="3" /> <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.example.app" android:label="Tests for My App" /> </manifest>
AllTests.java
编写测试代码入口.你可以把下面代码拷贝到任意工程去即可.
package com.example.app; import junit.framework.Test; import junit.framework.TestSuite; import android.test.suitebuilder.TestSuiteBuilder; /** * A test suite containing all tests for my application. */ public class AllTests extends TestSuite { public static Test suite() { return new TestSuiteBuilder(AllTests.class).includeAllPackagesUnderHere().build(); } }
SomeTests.java
编写单元测试,该测试集成AndroidTestCase父类. 记住所有的测试方法开头必须使用"test". 使用不同的assert方法来判断不同测试结果
package com.example.app; import junit.framework.Assert; import android.test.AndroidTestCase; public class SomeTest extends AndroidTestCase { public void testSomething() throws Throwable { Assert.assertTrue(1 + 1 == 2); } public void testSomethingElse() throws Throwable { Assert.assertTrue(1 + 1 == 3); } }
运行单元测试
使用Eclipse的Run Junit Tests方法.选中测试工程,按右键,选择Run As…Android Junit Test.
或者输入下面命令:
adb shell am instrument -w com.example.app.tests/android.test.InstrumentationTestRunner
结果
你可以从Eclipse的console或命令行工具中看到结果. 完毕!
原文连接:http://marakana.com/tutorials/android/junit-test-example.html
评论关闭。