我知道其他人问过这个(或类似的)问题,但没有一个解决方案对我有帮助。我有3节课:
public class A {
public int superMethod(int val) {
B b = new B();
return b.subMethod(val);
}
}
public class B{
public int subMethod(int num) {
return num;
}
}
我的测试类:
public class MockitoTest {
@Mock
B b;
@InjectMocks
A a;
@Test
public void testMethodA(){
a = mock(A.class);
doCallRealMethod().when(a).superMethod(anyInt());
b = mock(B.class);
try {
whenNew(B.class).withAnyArguments().thenReturn(b);
} catch (Exception e) {}
a.superMethod(5);
verify(b).subMethod(anyInt());
}
}
我想验证B. subMethod()是否在A. superMethod()中被调用。我如何才能完成此任务。我知道我需要使用PowerMock来完成此任务,但我不确定如何。此外,我不允许更改有关A类或B类的任何内容。
任何帮助都将不胜感激!
我的问题是我的注释(或缺少注释)。我在MockitoTest类上缺少@PrepareForTest({A.class})注释。
我试图学习和,以实现我正在为一个已经工作的Android项目创建测试。但是我有一些麻烦。这会让你知道我想测试的活动: 这段代码所做的是获取Active会话,根据它的状态,它显示了不同的。现在我将向您展示测试类: 正如你所见,我在一个单独的java项目中使用了Robolectric和Mockito。当我运行测试类时,我得到以下信息: 你能帮我一下吗? 编辑 我去掉了ActivityControlle
我实际上是在努力做下面的事情:我的服务类 这让我想要的没有被调用,实际上与这个模拟没有任何交互。你知道我做错了什么吗??
我正在做一个单元测试,在我的应用程序中的类,它只是一个简单的类,我认为我做的一切都是正确的,但测试失败了,说: 需要但未调用:MContextWeakReference.Get();->在rahmat.com.app.utility.backwardcompatibility.StringResourceUtilTest.GetString(StringResourceUtilTest.java:
晚安, 我正在对我的服务进行一些测试,在删除方法中执行测试时遇到了问题。 我想知道是否有人犯过这个错误,可以帮助我。 我扫描时出错。据报道,该方法没有使用。 例外情况: 代码:
我在试着重构一些声纳上的假设。在重构之前,代码如下所示: 所以我把这些方法添加到一个映射中,并像这样调用它 我没有修改测试类中的任何内容,但我得到了以下错误: 被通缉但未被援引: - 但是揭穿它,它实际上是有效的,断言是正确的。原因可能是什么?
我有如下测试方法: 是我要模拟并返回空映射的方法。但我收到的失败信息说 需要但未调用MyClass.MethodUsedInMethodBeingTest() .