之前在做业务层和控制层测试的时候,觉得控制层会调用到业务层的代码,这样等于对业务层进行了两次测试。而且修改了底层或业务层代码会影响到控制层的正常测试。于是想能不能用Mockito将业务层进行mock,从而不会影响到控制层的测试。
public class CompanyController {
@Autowired
private CompanyService companyServiceImpl;
public CompanyDO find(){
}
}
测试类
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext;
import org.mockito.Mock;
import static org.mockito.Mockito.when;
public class test{
@Autowired
private WebApplicationContext webApplicationContext;
private MockMvc mockMvc;
mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build();
@Mock
private CompanyService mockService;
private CompanyController mockController;
MockitoAnnotations.initMocks(mockCompanyLanguageService);
@Test
public void find() {
when(mockService.find()).the