Robolectric有一个名为ShadowMatrix
的影子类,但我不想使用它。如何从robolectric中删除它?我希望改为使用原始Matrix
类。
答案 0 :(得分:2)
它无效。在android.jar中只有类和方法的存根(没有body的方法)。这就是你使用Robolectric在Android系统之外运行测试的原因。
你可以做的就是从github repository做一个分叉,改变ShadowMatrix实现,构建并与你的项目一起使用。
答案 1 :(得分: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() {
}