2016-04-26 5 views
1

私はAndroidプロジェクトのユニットテストを作成し始めました。 I 単体テストと計装テストの違い。ユニットテストでAndroid SDKクラスを使用

私のコードでは、私はアンドロイドSDKのandroid.location.Locationクラスを使用しています。 このクラスは、Geoの場所を表すために使用され、アプリケーションの非常に基本的なクラスでも広く使用されます。

これは、JVMで単体テストを実行しようとすると問題が発生します。インスタンスgetBearing()メソッドを使用する方法 は、JVMで実行できないと、この例外をスロー:

java.lang.RuntimeException:方法setLatitude嘲笑ない android.location.Locationに。

このクラスをユニットテストに追加する方法はありますか?これはJVM上で動作するようにしますか? 別のスマートな解決策がありますか?

+0

Locationから派生したmockLocationクラスを作成して、テストで呼び出すメソッドをオーバーライドすることはできませんか? –

+0

私がRobotiveのシャドークラスの答えと信じていることが見つかりました。 – CaptainNemo

答えて

0

私はRoboelectricのシャドークラスで答えがあると信じています!

関連する問題