标签:apache throws xmlns repos tpc nbsp epo git charset
package mocker;
import java.io.IOException;
import java.nio.charset.Charset;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.fluent.Content;
import org.apache.http.client.fluent.Request;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
import com.github.dreamhead.moco.HttpServer;
import com.github.dreamhead.moco.Moco;
import com.github.dreamhead.moco.MocoJsonRunner;
import com.github.dreamhead.moco.Runner;
import com.github.dreamhead.moco.resource.ContentResource;
public class MocoJsonHttpRunnerTest {
//用runner来管理服务器的开关,这个runner 对象是用Runner.runner(Server server) 来实例化的
private Runner runner;
@BeforeTest
public void setUp() throws Exception{
//定义一个Server 指定端口
ContentResource resource = Moco.file("src/test/resources/foo.json");
HttpServer server = MocoJsonRunner.jsonHttpServer(12306, resource);
//初始化runner对象
runner = Runner.runner(server);
//开启服务器
runner.start();
}
@Test
public void testRequset() throws ClientProtocolException, IOException{
Content content = Request.Get("http://localhost:12306").execute().returnContent();
System.out.println(content.asString(Charset.forName("UTF-8")));
}
@Test
public void testRequset1() throws ClientProtocolException, IOException{
Content content = Request.Get("http://localhost:12306").execute().returnContent();
System.out.println(content.asString(Charset.forName("UTF-8")));
}
@AfterTest
public void tearDown(){
//关闭服务器
runner.stop();
}
}
依赖
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.java.mock</groupId>
<artifactId>mocker</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.9.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.github.dreamhead</groupId>
<artifactId>moco-core</artifactId>
<!-- <version>1.0.0</version> -->
<version>1.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>fluent-hc</artifactId>
<version>4.5</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.github.dreamhead/moco-runner -->
<dependency>
<groupId>com.github.dreamhead</groupId>
<artifactId>moco-runner</artifactId>
<version>1.1.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 确定jdk版本的编译插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
json文件
[ { "response" : { "text" : "foo" } } ]
总结:从外部读取json文件作为响应,核心是用moco-runner依赖中的这个api MocoJsonRunner.jsonHttpServer(12306, resource),其余怎么发请求,怎么用runner来管理server,跟之前一样,么有什么特别的
标签:apache throws xmlns repos tpc nbsp epo git charset
原文地址:https://www.cnblogs.com/wangzhiqiang004/p/12652450.html