MockWebServer server = new MockWebServer(); MockResponse response = new MockResponse() .setResponseCode(200) .setBody("Hello, world!"); server.enqueue(response); URL url = new URL(server.url("/").toString()); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); int responseCode = connection.getResponseCode(); MockResponse response = new MockResponse() .setResponseCode(200) .addHeader("Content-Type", "application/json") .setBody("{\"message\":\"Hello!\"}"); RecordedRequest request = server.takeRequest(); assertEquals("GET", request.getMethod()); assertEquals("/path", request.getPath()); assertEquals("application/json", request.getHeader("Content-Type")); MockResponse response = new MockResponse() .setBody("Delayed response") .throttleBody(1024, 1, TimeUnit.SECONDS); server.enqueue(response); InetAddress address = InetAddress.getByName("localhost"); int port = 8080; server.setDispatcher(new MockDispatcher()); server.start(address, port); server.useHttps(sslContext.getSocketFactory(), false);