0

Junitでmockmvcを使用してアクション応答でリダイレクトをテストする必要があります

コントローラー.java

@ActionMapping(param="submit")
public void handleSubmit(ActionRequest req, ActionResponse res) {
  ...
  res.sendRedirect("https://google.co.in"):
}

ControllerTest.java

  import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
  import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrl;
  import static org.springframework.test.web.servlet.setup.MockMvcBuilders.standaloneSetup;

public ControllerTest {
    private MockMvc mockmvc;

    @Before
    public void setup() {
      controller = new Controller();
      mockmvc = standaloneSetup(controller).build();
    }

    @Test
    public void redirectTest() throws Exception {
       mockMvc.perform(post("/action").param("submit", "value")).
                    andExpect(redirectedUrl("https://google.co.in"));
    }
}

問題は、コントローラ メソッドが Junit からの post perform で呼び出されないことです。

送信のクリック時のブラウザの URL は次のようになりますaction/rparam=action=submit.wsp

4

0 に答える 0