Wiremock returning 404 for a stubbed url

tuk picture tuk · Mar 5, 2016 · Viewed 14.9k times · Source

I have defined wireMock server as follows:-

    private WireMockServer wireMockServer;
        @Before
        public void preSetup() throws Exception {
          wireMockServer = new WireMockServer(56789);
          wireMockServer.start();
        };

        @Override
        @After
        public void tearDown() {
          wireMockServer.stop();
        }

        @Test
        public void testSendMatchingMessage() throws Exception {

          wireMockServer.stubFor(get(urlEqualTo("/orders/v1/ordersearch/"))
            .willReturn(aResponse().withStatus(200).withBody("<response>Some content</response>")));

       }

But whenever I am hitting the url something like below

http://0.0.0.0:56789/orders/v1/ordersearch/?field=address%2Cfinance%2Cshipping&limit=10&page=2&q=createdFrom.gt%7E2016-01-11T10%3A12%3A13

I am getting the below error:-

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
    <title>Error 404 NOT_FOUND</title>
    </head>
    <body><h2>HTTP ERROR 404</h2>
    <p>Problem accessing /__files/orders/v1/ordersearch/. Reason:
    <pre>    NOT_FOUND</pre></p><hr /><i><small>Powered by Jetty://</small></i><br/>                                                
    <br/>                                                
    <br/>                                                
    <br/>                                                
    <br/>                                                
    <br/>                                                
    <br/>                                                
    <br/>                                                
    <br/>     
    </body>
    </html>

Can some one let me know what I am doing wrong?

Answer

ivan_pozdeev picture ivan_pozdeev · Mar 5, 2016

As per Stubbing - Wiremock (the 1st in Google on "wiremockserver urlequalto"):

Note: you must use urlPathEqualTo or urlPathMatching to specify the path, as urlEqualTo or urlMatching will attempt to match the whole request URL, including the query parameters.