2016-08-01 117 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); 
     }}; 
    } 

}