java - Spring testing controller does not work -
i have following class :
import org.junit.before; import org.junit.test; import org.springframework.beans.factory.annotation.autowired; import org.springframework.test.web.servlet.mockmvc; import org.springframework.test.web.servlet.setup.mockmvcbuilders; import static org.springframework.test.web.servlet.request.mockmvcrequestbuilders.get; import static org.springframework.test.web.servlet.result.mockmvcresultmatchers.*; import server.testing.webtest; public class campaigncontrollertest extends webtest { @autowired campaigncontroller campaigncontroller; private mockmvc mockmvc; @before public void mysetup() throws exception { this.mockmvc = mockmvcbuilders.standalonesetup(campaigncontroller).build(); } @test public void teststatus() throws exception{ mockmvc.perform(get("/01/status")).andexpect((status().isok())); } }
and following error : failed tests: teststatus(cz.coffeeexperts.feedback.server.web.controller.campaigncontrollertest): status expected:<200> was:<404>
404 (usually) thrown, if type wrong address.
this campaingcontroller :
@controller @requestmapping(value = "/api") public class campaigncontroller { @requestmapping(value = "/01/status", method = requestmethod.get) @responsebody public serverstatusjson getstatus() { return new serverstatusjson(activecampaignservice.getactivecampaign().getidcampaign()); } }
this address try test works fine when deploy application on tomcat. there should not problem inside method, because in case returns 500 internal error, not 404.
am doing wrong?
try mockmvc.perform(get("/api/01/status")).andexpect((status().isok()));
Comments
Post a Comment