JMock自动生成虚拟实体数据,很好的帮助我们实现孤立测试

JMock是帮助创建mock对象的工具,可以用简单易行的方法定义模拟对象,简化了测试代码,方便实用。

依赖引入

<dependency>
    <groupId>com.github.jsonzou</groupId>
    <artifactId>jmockdata</artifactId>
    <version>4.3.0</version>
    <scope>compile</scope>
 </dependency>

示例

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.github.jsonzou.jmockdata.JMockData;
import com.mrt.bizdata.dto.mq.CreditLimitResultDto;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @description 测试JMock
 * @AUTHER: sk
 * @DATE: 2021/5/17
 **/
@Data
public class JMockTest implements Serializable {
    
    

    private static final long serialVersionUID = -1103675024728519251L;

    /** 平台编码 */
    private String channelNo;

    /** 业务类型 */
    @NotEmpty(message="业务类型不能为空")
    @JsonProperty("busstype")
    private String bussType;

    /** 核心企业统一社会信用代码 */
    @JsonProperty("corecercode")
    private String corecercode;

    /** 企业统一社会信用代码 */
    @JsonProperty("entcercode")
    private String entcercode;

    /** 基本信息推送流水号 */
    @JsonProperty("clientcode")
    private String clientcode;

    /**
     * 最大融资比例
     */
    @JSONField(name = "financingMaxRate")
    private BigDecimal financingmaxrate;

    /**
     * 起始日
     */
    @JSONField(name ="begin")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyyMMdd")
    private Date beginDate;

    /**
     * 到期日
     */
    @JSONField(name ="end")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyyMMdd")
    private Date endDate;

    /**
     * 测试JMock自动生成实体类数据,自动生成不同数据类型的模拟数据,方便测试
     */
    public static void main(String[] args) {
    
    
        JMockTest test = JMockData.mock(JMockTest.class);
        System.out.println("test:"+test);
    }
}

结果:

猜你喜欢

转载自blog.csdn.net/SHUKAI618/article/details/116948739