2

Google Cloud Messaging (GCM) を使用する新しいアプリがあるため、新しい Google Play API を使用しています。

Google Play API は実際のデバイスのエミュレーターでのみ実行されるわけではないため、コード カバレッジを生成するために maven、jenkins、sonar、および emma の通常のセットアップを使用することはできません。

具体的には、インストルメント化されたテストを実行して emma.ec ファイルを生成できますが、ファイルは sdcard ではなくデバイスで生成されるため、maven を使用してデバイスからファイルをプルすることはできません。

生成された emma.ec の場所を sdcard に変更できると思いますが、持っていません。または、電話をルート化して、その方法でファイルをプルします。

私の質問は、このファイルを抽出するか、これらの制限を回避する別の方法を知っている人はいますか?

4

1 に答える 1

1

Google Play API 内のカバレッジを実際にテストする必要はありませんが、API を処理するコードのカバレッジをテストする必要があるため、ここでモックを作成することは理にかなっています。

最初に、Google Play API との対話を、呼び出しを Play API に委譲するだけの独自のクラスにラップします。次に、そのサービスをテスト用にモックアウトして、Google Play API とやり取りしないようにしますが、Google Play API からのものであるかのように意味のあるテスト データを返します。このようにして、成功、失敗、およびエッジ ケースを処理するコードをテストできます。

于 2013-02-18T03:53:05.500 に答える