1
私はAndroidプロジェクトのユニットテストを作成し始めました。 I 単体テストと計装テストの違い。ユニットテストでAndroid SDKクラスを使用
私のコードでは、私はアンドロイドSDKのandroid.location.Locationクラスを使用しています。 このクラスは、Geoの場所を表すために使用され、アプリケーションの非常に基本的なクラスでも広く使用されます。
これは、JVMで単体テストを実行しようとすると問題が発生します。インスタンスgetBearing()メソッドを使用する方法 は、JVMで実行できないと、この例外をスロー:
java.lang.RuntimeException:方法setLatitude嘲笑ない android.location.Locationに。
このクラスをユニットテストに追加する方法はありますか?これはJVM上で動作するようにしますか? 別のスマートな解決策がありますか?
Locationから派生したmockLocationクラスを作成して、テストで呼び出すメソッドをオーバーライドすることはできませんか? –
私がRobotiveのシャドークラスの答えと信じていることが見つかりました。 – CaptainNemo