2016-04-30 2 views
0

インストルメンテーションテストのシナリオを学習しようとしています。 ActivityInstrumentationTestCase2の関連ドキュメントを調べているうちに、ActivityInstrumentationTestCase2Espressoを併用することで、いわゆる「機能的」テストを書くことができることを知りました。少なくとも、それは私が関連文書から理解したものです。Androidテストフレームワークの明確化

しかし、私はActivityUnitTestCaseServiceTestCaseと呼ばれるものに遭遇しました。以前は聞いたことがありませんでした。そのことを理解しようとすると、私は野生のガチョウの追跡に導かれました。そして今、私は非常に多くの言葉でAndroidテストのパラダイム全体に紛れ込んでいます。 Unit testingfunctional testing:Androidのテストは、広く2つのバケットに該当するハイレベルから考えると

  1. 。次のうちどれが該当するか。使用すべきである何

    JUnitJUnit4TestCaseAndroidTestCaseActivityInstrumentationTestCase2ServiceTestCaseApplicationTestCaseAndroidTestRunnerAndroidJUnitRunnerAndroidJUnit4

  2. これらは、実際のユニットテスト(私はPOJOテストを意味する)に関係していますか?これは、サンプルのテストケースがJUnit4/TestCaseに拡張されたチュートリアルリンクに気づいたので、私はこれを尋ねます。下のリンクのどれもが何も拡張せず、単純なPOJOのテストケースとして動作します。これは、JUnit4と単純なPOJOテストクラスの違いは何ですか?私はこれまで確認されている

参考文献:

http://www.vogella.com/tutorials/AndroidTesting/article.html#androidtesting_creatingtestfolders

https://shaun.church/unit-testing-java-classes-in-android-studio/

Android Test Frameworks

Robolectric vs Android Test Framework

http://developer.android.com/tools/testing/testing_android.html

アイデア、ヒントを高く評価します。ありがとう!

答えて

1

いつ使用する必要がありますか?

あなたがリストしたものの大部分は非難されています。 AndroidJUnitRunnerを使用するJUnit4は、新規開発に積極的に使用される唯一のアイテムです。

それらの任意の頃は(私はPOJOのテストを意味していることで)実際のユニットテスト

に関連し、Androidの用語では、「ユニットテスト」は、おそらくモックフレームワークで、JUnit4テストを実行する」を意味しますあなたの開発マシンまたはCIサーバーのJVM上で実行されます。おそらくMockito、RobolectricなどとともにJUnit4がこれに使用されています。

「インストルメントテスト」とは対照的に、「Androidデバイスやエミュレータで、おそらくEspressoやUiAutomatorを使ってJUnit4テストを実行する」という意味です。 JUnit4はまだここで使用されており、ここでは通常のAndroid SDKにアクセスできます。 UiAutomatorは統合テストに使用されます(App AはApp Bのアクティビティを正常に開始しましたか?)。

「ユニットテスト」と「計測テスト」の間のこの特定の部分はかなり新しいことに注意してください。 2015年中頃よりも古くなっている資料は、単体テストと呼ばれるものの正式なサポートがなかったため、これらの用語を同じ意味で使用している可能性があります(これまでに多くの開発者がRobolectricを使用していました)。

+0

私は、要点:Androidのユニットテスト= Junit4 + Mockなど、Android = JUnit4 + Robotium/Espressoなどの機能/計装テストは正しいですか? – user2511882

+0

@ user2511882:私はあなたの "機能的な"(それはやや無定形のIMHOです)の使用については懐疑的ですが、そうでなければ正解です。 – CommonsWare

+0

それは確かにすべてのマラキで助けになります。ありがとう! – user2511882