2016-04-25 3 views
0

Я разрабатываю тест JUnit в контроллере Spring, контроллер называет кучу сервисов. Мой JUnit код теста выше:Null Service во время работы JUnit test с весной

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration(classes = {WebApplicationConfiguration.class, DatabaseConfiguration.class, ServiceConfiguration.class}) 
@WebAppConfiguration 
    public class ProcessFileControllerTest { 

     private MockMvc mockMvc; 


     @Test 
     public void getPageTest() throws Exception{ 
      final ProcessFileController controller = new ProcessFileController(); 
      SecurityHelperUtility.setupSecurityContext("user", "pass", "ROLE_ADMIN"); 
      mockMvc = standaloneSetup(controller).build(); 

      mockMvc.perform(get(URI.create("/processFile.html")).sessionAttr("freeTrialEmailAddress", "")).andExpect(view().name("processFile")); 
     } 

Когда я запускаю тест JUnit, я получаю NullPointerExcelption когда я называю эту конкретную строку кода моего ProcessFileController.java

final Company company = companyService.getCompanyByUser(userName);

Я могу видеть, что Service является Null.

В моей ProcessFileController.javaService в настоящее время объявлен как:

@Autowired private CompanyService companyService;

Любой ключ? Заранее спасибо.

ответ

3

Вы создаете свой контроллер, используя новое ключевое слово. Это должен быть весна, управляемая фасоль для весны, чтобы ввести свои зависимости. Использовать @Autowired

@Autowired 
ProcessFileController controller; 
+0

Работает как очарование. Благодарю. –

Смежные вопросы