spring-mock,springboot mockmvc

  spring-mock,springboot mockmvc

  00-1010一、实现场景:1.1请求同一个接口,不同的参数/ip返回的结果不一样。1.2返回的结果是动态数据,需要进行处理。1.3回调能力1.4响应时间1.5钩子参数1.6透明传输请求2。依赖3。开始编写3.1创建一个新的控制器,简单地构建一个服务,并尝试ping 3.2来创建一个新的MockController1。/* *这是指任何URI

  

目录

 

  00-1010数据匹配

  以create_account接口为例,参数为accountIdaccountId=123,成功返回accountId=456,失败返回accountid=456,accountname=张三,ip=123.123.123.1,成功返回ip=123.123.123.2,失败返回。

  解决方案:

  将数据存储在yml文件中。例如,create_account接口只返回一个固定的结果,所以我们将返回值放在一个yml文件中。

  比如create_name接口根据不同的参数返回不同的id。一个界面对应一个文件夹。将create_name接口的返回值写入多个yml文件,放在同一个文件夹中。然后去配。

  

一、实现场景:

响应: {

 

  gt;        <version>2.4.4</version>        <relativePath/> <!-- lookup parent from repository -->    </parent>    <groupId>com.example</groupId>    <artifactId>AutoApi</artifactId>    <version>0.0.1-SNAPSHOT</version>    <name>AutoApi</name>    <description>Demo project for Spring Boot</description>    <properties>        <java.version>1.8</java.version>    </properties>    <dependencies>        <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>         <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-test</artifactId>            <scope>test</scope>        </dependency>        <dependency>            <groupId>org.yaml</groupId>            <artifactId>snakeyaml</artifactId>            <version>1.26</version>        </dependency>        <dependency>            <groupId>org.projectlombok</groupId>            <artifactId>lombok</artifactId>            <version>1.18.16</version>            <scope>provided</scope>        </dependency>        <dependency>            <groupId>com.google.guava</groupId>            <artifactId>guava</artifactId>            <version>30.1.1-jre</version>        </dependency>        <dependency>            <groupId>org.apache.commons</groupId>            <artifactId>commons-lang3</artifactId>            <version>3.11</version>        </dependency>        <dependency>            <groupId>com.squareup.okhttp3</groupId>            <artifactId>okhttp</artifactId>            <version>4.9.0</version>        </dependency>        <dependency>            <groupId>commons-io</groupId>            <artifactId>commons-io</artifactId>            <version>2.6</version>        </dependency>        <dependency>            <groupId>com.google.code.gson</groupId>            <artifactId>gson</artifactId>            <version>2.8.6</version>        </dependency>        <dependency>            <groupId>com.fasterxml.jackson.dataformat</groupId>            <artifactId>jackson-dataformat-yaml</artifactId>            <version>2.12.3</version>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-jdbc</artifactId>            <version>5.3.8</version>        </dependency>        <dependency>            <groupId>mysql</groupId>            <artifactId>mysql-connector-java</artifactId>            <version>8.0.20</version>        </dependency>        <dependency>            <groupId>com.alibaba</groupId>            <artifactId>druid</artifactId>            <version>1.2.6</version>        </dependency>        <dependency>            <groupId>cn.hutool</groupId>            <artifactId>hutool-core</artifactId>            <version>5.7.5</version>        </dependency>     </dependencies>     <build>        <plugins>            <plugin>                <groupId>org.springframework.boot</groupId>                <artifactId>spring-boot-maven-plugin</artifactId>            </plugin>        </plugins>    </build> </project>

 

  

三、开始写

 

  

3.1 新建一个controller,简单的建一个服务,试试是否能ping通

 

  

 

  PingController

  

package com.example.mockserver.controller; import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController; @RestControllerpublic class PingController {     @RequestMapping("/ping")    public String ping(){        return "ok";     }}

要有@RestController 注解

 

  修改application.properties 格式,换成yml application.yml 。并指定端口号。

  application.yml

  

server: port: 8081

启动spring boot ,运行 MockServerApplication 。访问一下127.0.0.1:8081/ping。

 

  返回ok就是正常的。

  

 

  

3.2 新建MockController1,/** 这里指的是任意的URI

MockController1

 

  

package com.example.mockserver.controller; import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController; @RestControllerpublic class MockController1 { @RequestMapping("/**") public String doMock(){ return "do mock server"; }}

"/**" 这里指的是任意的URI 。启动服务,当请求ping时返回ok,请求其他任何URL时,返回 do mock server

 

  到此这篇关于springboot实现mock平台的示例代码的文章就介绍到这了,更多相关springboot实现mock 内容请搜索盛行IT以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: