import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import com.wolaidai.finance.loan.biz.CheckProcess; import com.wolaidai.finance.loan.service.NotifyService; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = { "classpath*:applicationContext.xml" }) public class NotifyServiceMockTestCase extends AbstractTransactionalJUnit4SpringContextTests { @InjectMocks @Autowired private NotifyService notifyService; @Mock private CheckProcess checkProcess; @Mock private ApiService mockApiService; @Before public void myBefore() { MockitoAnnotations.initMocks(this); Mockito.when(mockApiService.test()).thenReturn("ok"); Mockito.when(mockApiService.test("test")).thenReturn("abc"); } @Test public void testGetAirlineCode() { String result = mockApiService.test(); Assert.assertEquals("ok", result); result = mockApiService.test("test"); System.err.println(result); result = mockApiService.test("abd"); System.err.println(result); } } @Component class ApiService { @Autowired private TestApiService testApiService; public String test() { String connect = testApiService.connect(); connect += "test";// test自己的业务 return connect; } public String test(String str) { return "test." + str; } } @Component class TestApiService { public String connect() { return "error"; } public String findFromDb() { return "db_data"; } }
<!-- https://mvnrepository.com/artifact/org.mockito/mockito-all --> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-all</artifactId> <version>1.10.19</version> <scope>test</scope> </dependency>