<dependency> <groupId>org.mock-server</groupId> <artifactId>mockserver-netty</artifactId> <version>${mockserver.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mock-server</groupId> <artifactId>mockserver-client-java</artifactId> <version>${mockserver.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-all</artifactId> <version>${netty.version}</version> </dependency> public class MockServerWrapper { private static MockServerClient mockServerClient; public static void startMockServer() { mockServerClient = new ClientAndServer(); } public static void stopMockServer() { mockServerClient.stop(); } public static void resetMocks() { mockServerClient.reset(); } public static void createExpectation(HttpRequest request, HttpResponse response) { mockServerClient.when(request).respond(response); } } public class ProxyServerWrapper { private static ProxyServer proxyServer; public static void startProxyServer() { proxyServer = new DefaultProxyServer(); proxyServer.start(); } public static void stopProxyServer() { proxyServer.stop(); } public static void resetRules() { proxyServer.reset(); } public static void addRule(RequestRule rule) { proxyServer.addRule(rule); } } public class TestLibrary { public static void main(String[] args) { MockServerWrapper.startMockServer(); ProxyServerWrapper.startProxyServer(); HttpRequest mockRequest = new HttpRequest().withPath("/api/test"); HttpResponse mockResponse = new HttpResponse().withStatusCode(200).withBody("Mock response"); MockServerWrapper.createExpectation(mockRequest, mockResponse); HttpRequest proxyRequest = new HttpRequest().withMethod(Method.GET).withPath("/api/test"); HttpResponse proxyResponse = new HttpResponse().withStatusCode(200).withBody("Proxy response"); RequestRule rule = new RequestRule(mockRequest, new ForwardAction(proxyRequest)).withResponse(proxyResponse); ProxyServerWrapper.addRule(rule); } }


上一篇:
下一篇:
切换中文