2016-09-23 6 views
0

これは私のコントローラークラスです。今、私は、下のコントローラクラスのユニットテストケースをmockitoを使って書いてみたいと思います。このコントローラークラスのmockitoでユニットテストケースを書く方法

誰も私から助けてくれますか?

@Controller 
public class LoginController { 

    @Autowired 
    @Qualifier("skillService") 
    private SkillService skillService; 

    @Autowired 
    private SkillReferenceData skillReferenceData; 

    @Autowired 
    private EmployeeValidator employeeValidator; 

    @RequestMapping(value = "/loginview.html", method = RequestMethod.GET) 
    @PreAuthorize("hasAuthority('ROLE_ANONYMOUS')") 
    protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse respresultonse) throws Exception { 
     ModelAndView model = new ModelAndView("login"); 
     return model; 
    } 

    @RequestMapping("/login.htm") 
    protected ModelAndView onSubmit(@ModelAttribute("userVB") UserVB userVB, 
     BindingResult result, HttpServletRequest request, 
    HttpServletResponse response) throws Exception { 
     return new ModelAndView("login"); 
    } 

} 
+0

使用mockmvcを:

最後に、あなたが使用してコンストラクタを模擬することができますmockmvc.html – Jens

答えて

0

によってあなたのコントローラクラスのインスタンスを作成します。あなたも使って skillService、skillReferenceData、employeeValidatorのようなあなたのプライベート変数にアクセスして模擬することができ、この注釈を使用することにより

@InjectMocks 
LoginController loginController; 

@Mock(name = "skillService") 
SkillService mockSkillService = createMock(SkillService.class); 

ユニットテストの前にMockitoAnnotations.initMocks(this);を追加して、Mockitoアノテーションを初期化することを忘れないでください。そのhttp://docs.spring.io/spring-security/site/docs/current/reference/html/test-ため

Mockito.when(new ModelAndView(any(String.class).thenReturn(null))); 
関連する問題