2

Robolectricにはという名前のシャドウ クラスShadowMatrixがありますが、使用したくありません。Robolectric から削除するにはどうすればよいですか? Matrix代わりに元のクラスを使用したいと考えています。

4

2 に答える 2

2

うまくいきません。android.jar には、クラスとメソッド (本体のないメソッド) のスタブのみがあります。これが、Android システム外でテストを実行するために Robolectric を使用している理由です。

できることは、github リポジトリからフォークを作成し、ShadowMatrix の実装を変更し、ビルドしてプロジェクトで使用することです。

于 2012-10-02T13:27:05.220 に答える
0

これは に関する特定の問題には役立たないかもしれませんが、あるテストMatrixで別のクラスが同様に必要でした。ShadowCountDownTimerの動作を変更/追加しない代替シャドウを提供することで、シャドウをバイパスできましたCountDownTimer

// Shadow with no additional behavior
@Implements(CountDownTimer.class)
public static class DefaultCountDownTimer {
}

// Use this shadow just for this test
@Config(shadows = DefaultCountDownTimer.class)
@Test
public void testSomething() {
}
于 2018-02-13T12:12:07.930 に答える