SimpleTestWebServer
テスト用のHttpサーバを立ち上げます。
URIとレスポンスを文字列として与えると、指定したURIにアクセスした際に指定したレスポンスを返すHttpサーバーを立ち上げます。
Httpsサーバーは未実装です。
以下のようなテストが可能です。
public class SampleTest {
@Test
public void test() throws Exception {
SimpleTestWebServer server = new SimpleTestWebServer();
server.setHandler("http://localhost:8080/test","Hello Test Server!");
String respose = getResponse("http://localhost:8080/test");
assertEquals("Hello Test Server!",respose);
server.stop();
}
private String getResponse(String path) throws Exception {
URI uri = URI.create(path);
HttpURLConnection con = (HttpURLConnection)uri.toURL().openConnection();
BufferedReader reader = new BufferedReader(new InputStreamReader(con.getInputStream()));
String respose = reader.readLine();
reader.close();
return respose;
}
}
複数のテストのためにサーバーを立ち上げる場合は、
のコードを参考にしてください。