2016-08-01 116 views
1

我是jMockit的新手,在尝试测试注入了java.util.logger实例的类时遇到了麻烦。 我已经尝试了一些想法如何做到这一点,,如何模拟java.util.logging

谁能告诉如何我该怎么办呢

public class underTest { 

@Inject 
Logger logger; 

@Inject Service service; 

public void doSomeThing() 
{ 
    logger.info("Invoking Service... "); 
    service.serve(); 
}; 

} 



public class TestClass 
{ 
@Tested underTest tested; 

@Test 
public void howToTest() 
{ 
    . 
    , 
    . 
    . 
    tested.doSomeThing(); 
} 
} 

回答

1

会有几种方法进行测试。我强烈建议你阅读JMockit的Tutorial

你的情况,这应该工作:

@RunWith(JMockit.class) 
public class TestFoo { 

    @Injectable 
    Logger logger; 

    @Injectable 
    Service service; 

    @Tested 
    private UnderTest underTest; 

    @Test 
    public void howToTest(){ 
     underTest.doSomeThing(); 
     new Verifications(){{ 
      service.serve(); 
      logger.info(anyString); 
     }}; 
    } 

}