博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自动生成 java 测试 mock 对象框架 DataFactory-01-入门使用教程
阅读量:5987 次
发布时间:2019-06-20

本文共 1439 字,大约阅读时间需要 4 分钟。

项目简介

用于根据对象,随机自动生成初始化信息,避免了手动创建对象的繁琐,便于测试。

特性

  • 8 大基本类型的支持

  • String、Date、金额,日期等常见类型的支持

  • java8 常见时间类的支持

  • 支持 String 和 Number 类型的注解定义

  • 添加 @DataFactory 注解支持

  • 支持 Regex 正则表达式

变更日志

核心类讲解

DataUtil 工具类

提供线程安全的方法:

/** * 构建结果 * @param clazz 类型 * @return 构建结果 */public static 
T build(final Class
clazz) { IData data = getInstance(); return (T) data.build(null, clazz);}/** * 构建结果 * @param context 执行上下文 * @param clazz 类型 * @return 构建结果 */public static
T build(final IContext context, final Class
clazz) { IData data = getInstance(); return (T) data.build(context, clazz);}

快速开始

准备工作

JDK 1.8+

Maven 3.0+

如果是 idea,测试的时候 Enable Annotation Processing

maven 引入

com.github.houbb
data-factory-core
0.0.3

演示对象

一个用于演示的普通 java 对象。

public class User {    private String name;    private int age;    private Date birthday;    private List
stringList; //S/F 的枚举 private StatusEnum statusEnum; private Map
map; //Getter & Setter}

使用工具类

@Testpublic void buildBeanBaseTest() throws Exception {    User user = DataUtil.build(User.class);    System.out.println(user);}

输出信息如下:

User{name='wZ8CJZtK', age=-564106861, birthday=Wed Feb 27 22:14:34 CST 2019, stringList=[Du4iJkQj], statusEnum=S, map={yA5yDqM=Kdzi}}

内容每次都随机。便于基本的测试数据填充。

拓展阅读

转载于:https://blog.51cto.com/9250070/2362053

你可能感兴趣的文章
Laravel思维导图之Laravel HTTP路由、中间件、控制器
查看>>
巧用 db.system.js 提升20% 开发效率
查看>>
JavaScript 对象所有API解析
查看>>
javascript实现简单的trello实例
查看>>
http那些事:http\http2\https
查看>>
浏览器发送http请求过程分析
查看>>
Node学习记录: koa
查看>>
新人上路-搭建项目-maven和gradle
查看>>
Struts2初始化过程
查看>>
函数式编程(二)
查看>>
330. Patching Array
查看>>
[TODO] CORFU: A Shared Log Design for Flash Clusters
查看>>
2018年开源状况:代码贡献超310亿行,而漏洞超16000个
查看>>
微软亚洲研究院等提出CNN训练新方法RePr,准确率显著提升
查看>>
利用深度学习从大脑活动合成语言,应对人类语音挑战
查看>>
要突破技术瓶颈?80%的人忽略了这个因素
查看>>
PayPal API风格指南和设计模式
查看>>
SSPL的MongoDB再被抛弃,GUN Health也合流PostgreSQL
查看>>
AI一周热闻:地平线获6亿美元融资;小米最大规模组织架构调整
查看>>
重构和代码异味——通往更整洁的代码
查看>>