0

ActivityInstrumentationTestCase2 を拡張する約 20 のメソッド (テスト ケース) を含む 1 つのテスト ケース ファイルがあります。選択したテスト ケース メソッドのみを呼び出すスイートを作成する必要があります。junit には、実行するメソッドを受け入れるメソッドが 1 つあります。

    suite.addTest( new AllTestCases("testcase1"));

アンドロイドロボティウムで何かを行う同様の方法はありますか? はいの場合、これを修正する方法を教えてください。ありがとう。

4

3 に答える 3

1

new AllTestCases("testcase1");Android関連のすべてのテストクラスはいずれAndroidTestCaseInstrumentationTestCaseを継承しているため、またはこれらのクラスのどちらも引数として文字列を受け取るコンストラクターを公開していないため、のような呼び出しを行うことはできません。

ご覧になることもできますが、android.test.suitebuilder.TestSuiteBuilderこのクラスでも個々のテストメソッドを実行することはできず、パッケージレベルでテストを受け入れます。

@SmallTest、などのAndroidテストアノテーションを使用することで、目標を達成できる可能性があります。これらにより@MediumTest@LargeTest次のコマンドを使用して、指定されたアノテーション付きメソッドのみをターゲットにできます。

adb shell am instrument -w -e size <small|medium|large> com.youproject.test/android.test.InstrumentationTestRunner

最後に、Eclipse内から直接個々のテストメソッドまたはクラスをターゲットにすることが可能です。

于 2012-05-08T00:03:01.593 に答える
0

「adb shell am instrument」コマンドに「-e」引数を指定して、個々のテスト ケースをプログラムで実行できます。たとえば、'com.foo.bar.FooTest' 内のメソッド 'testFoo()' の場合、次のように実行できます。

adb shell am instrument -w \ -e "class com.foo.bar.FooTest#testFoo" \ com.foo.bar.test/android.test.InstrumentationTestRunner

http://developer.android.com/guide/developing/testing/testing_otheride.html

于 2012-06-01T00:43:12.100 に答える