Androidアプリとライブラリ:Robolectricライブラリを使用するか、Androidテストフレームワークを使用することを推奨します。実行したい。コマンドラインでテストスイートを実行し、エミュレータを構成したり、ビルドマシンにデバイスを接続したりする必要がないようにします。これらのどちらか、またはより良いものについて比較分析を実行する人はいますか?あなたの経験は、私が決定するのに非常に役立ちますより良いソリューション。
私は階層化されたシステムを使用していますが、可能な場合は以前の階層を優先します。
層のポイントは、物事をできるだけシンプルに保つことです。これにより、スイート全体をより高速に保ち、よりクリーンなコードを促進することができます。
私は両方に取り組みました、私が見つけたものは:-
1)RobolectricはAPI 19をサポートしていません。ドキュメントに記載されています http://robolectric.org/Eclipse-quick-start/ 。それはそれの大きな欠点です。
2)Robolectricは、DVMではなくJVMで実行されます。そのため、特定の時間にデバイスでGPSが有効になっているかどうかなどを検出できません。事前に決定した値のみを渡すことができます。
3)Robolectricでのコードの記述はjunitよりも複雑で、特にフラグメントについては、多くの複雑さと問題があります。
4)Robolectricには外部jarと構成が必要であり、junitテストでは外部ライブラリは必要ありません。
5)RobolectricはJVMで実行されるため高速ですが、これには不利な点もあります。デバイスでUIが表示されず、実行されている画面コードがわかりません。
Androidの場合、jUnitテストが好きです。