Android测试TestSuite的执行方法

public class StartTest extends InstrumentationTestRunner {
 
      public  TestSuite getAllTests() {
         TestSuite suite = new InstrumentationTestSuite(this);

suite.addTestSuite(TestRunner.class);
         return suite;
     }

}
1、类需继承于InstrumentationTestRunner

2、函数名必须为getAllTests(),此为基类的虚函数。一开始一直没注意到,走了弯路,再此特别记录

3、并将testsuite返回至类

修改AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.mobile.test"
    android:versionCode="1"
    android:versionName="1.0" >

<uses-sdk android:minSdkVersion="5" />

<instrumentation
        android:name="android.test.InstrumentationTestRunner"
        android:targetPackage="com.mobile" />
    <instrumentation android:targetPackage="com.mobile"
        android:name="com.mobile.test.StartTest"/>

<!--新添加的instrumentation,targetPackage为被测包名,name为testsuite的包名.类名-->

<application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <uses-library android:name="android.test.runner" />
    </application>

</manifest>

可以在eclipse里面右键执行Run configurations...

勾选Run all tests in the selected project,or package。选择测试工程名

Instrumentation runner,选择xml里面配置的com.mobile.test.StartTest

之后run吧~~

还可以用命令行执行

am instrument -w com.mobile.test/.StartTest

注:adb shell pm list instrumentation可以列出手机中的instrumentation

上一篇:Myeclipse10下载,安装,破解,插件,优化介绍


下一篇:Ubuntu下 Astah professional 6.9 安装