moco 响应信息从 外部文件读取demo


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,跟之前一样,么有什么特别的

原文地址:https://www.cnblogs.com/wangzhiqiang004/p/12652450.html

时间: 2024-10-23 04:33:43

moco 响应信息从 外部文件读取demo的相关文章

html外部文件读取/写入

1.文件的读取 外部文件读取控件: <input type="file" id="file_jquery" onchange="file_jquery(this.id)"/> 调用函数: function file_jquery(id){ var a = $("#"+id); var selectedFile = $("#"+id)[0].files[0]; console.log(a); co

[SoapUI] 比较两个不同环境下的XML Response, 从外部文件读取允许的偏差值,输出结果到Excel

import static java.lang.Math.* import java.text.NumberFormat import com.eviware.soapui.support.GroovyUtils import com.eviware.soapui.support.XmlHolder import org.apache.poi.ss.usermodel.Cell import org.apache.poi.ss.usermodel.Row import org.apache.po

细说Unity3D(一)——移动平台动态读取外部文件全解析

前言: 一直有个想法,就是把工作中遇到的坑通过自己的深挖,总结成一套相同问题的解决方案供各位同行拍砖探讨.眼瞅着2015年第一个工作日就要来到了,小匹夫也休息的差不多了,寻思着也该写点东西活动活动大脑和手指了.那么今天开始,小匹夫会记录一些平时工作中遇到的坑,以及小匹夫的应对方法,欢迎各位拍砖讨论.那么今天主要讨论一下Unity3D在移动端如何动态的读取外部文件,比如csv(txt),xml一类的文件.主要涉及的问题,就是PC端上本来测试的好好的东西,到了移动端就不能用了,所以要讨论一下PC端和

linux共享文件samba安装与java读取外部文件夹方法

测试环境RedHat 6.4 一.安装 samba组件安装: (1)首先用“rpm –qa |grep samba”命令检验系统samba服务是否安装. #rpm –qa |grep samba samba-common-3.6.9-151.el6.x86_64.rpm samba-winbind-3.6.9-151.el6.x86_64.rpm samba-winbind-clients-3.6.9-151.el6.x86_64.rpm samba-3.6.9-151.el6.x86_64.r

慕容小匹夫 Unity3D移动平台动态读取外部文件全解析

Unity3D移动平台动态读取外部文件全解析 c#语言规范 阅读目录 前言: 假如我想在editor里动态读取文件 移动平台的资源路径问题 移动平台读取外部文件的方法 补充: 回到目录 前言: 一直有个想法,就是把工作中遇到的坑通过自己的深挖,总结成一套相同问题的解决方案供各位同行拍砖探讨.眼瞅着2015年第一个工作日就要来到了,小匹夫也休息的差不多了,寻思着也该写点东西活动活动大脑和手指了.那么今天开始,小匹夫会记录一些平时工作中遇到的坑,以及小匹夫的应对方法,欢迎各位拍砖讨论.那么今天主要讨

读取外部文件

一 获取sd 卡文件 1 manifest文件中权限设置 <!-- 读写外部存储 -->    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 2 判断sd卡是否存在 b

Unity3D移动平台动态读取外部文件全解析

假如我想在editor里动态读取文件 实际的游戏开发中,其实有相当一部分静态数据是可以放在客户端的,所以势必会产生要动态读取这些文件的需求,比如csv(其实就是文本文件),xml等等.我相信大家不管是用win还是用mac来做unity3d的开发,都一定要先在editor中去实现基本的功能,在具体到各个移动平台上去调试.所以作为要读取外部文件的第一步,显然我们要先在editor也就是pc上实现这个功能. 下面给各位举一个读取xml的例子,也是我在以前的一篇文章<自己动手之使用反射和泛型,动态读取X

android中activity可以响应外部的action的例子(可以用这个来导入外部文件)

如果我们在文件浏览器中点击一个文件,然后点击它,会弹出一个列表给你选择 如果使自己的应用也出现在这个列表上,必须在menifest的这个activity下加入: <activity android:name="com.example.clickabletextview.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name

使用property读取外部文件内容

package com.jdbc;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.util.Properties;/** * 使用property读取外部文件内容 * @author Administrator * */public cla