Mic*_*ree 5 eclipse debugging mockito spy
我希望能够在 Mockito Spy 对象上单步调试调试器,尤其是 Eclipse。例如,假设我有以下课程要测试:
public class someClass(){
public someMethod(){
System.out.println("Begin someMethod call");
//some code in the method
System.out.println("End someMethod call");
}
}
Run Code Online (Sandbox Code Playgroud)
假设我有一个 Mockito 类,如下所示:
@RunWith(MockitoJUnitRunnerclass)
public class SomeMethodTest {
@Spy SomeClass someSpiedObject;
@Test
public final void testSomeMethod(){
//some code in the test method
someSpiedObject.someMethod();
/some tests
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是,如果我在测试方法中的某些代码和方法中的某些代码处设置调试断点,将到达第一个断点,但不会到达第二个断点。我知道代码会运行,因为系统输出会打印到控制台。我知道,作为一个被监视的对象,它不是相同的代码,调试器不应该工作。我也知道,如果 VerboseLogging() 是 Mock 对象而不是 Spy,则可以使用它。我真正的问题是,如何像执行普通对象一样逐步执行代码?是否有可以帮助的调试框架?是否有我不知道的 Mockito 功能?我最终将不再需要它是一个 Spy 对象并且可以简单地测试它,但直到静态调用被重构。
我在 IntelliJ 上遇到了同样的问题。我只嘲笑我的测试服务中的一种方法。
我找到的唯一解决方案是在我的测试代码中放置一个断点,然后单步执行(F7)调试实际代码的真正方法。这很糟糕,但这是我迄今为止找到的唯一方法。
归档时间: |
|
查看次数: |
1691 次 |
最近记录: |