自动生成 java 测试 mock 对象框架 DataFactory-01-入门使用教程
项目简介
Data-Factory 用于根据对象,随机自动生成初始化信息,避免了手动创建对象的繁琐,便于测试。
特性
8 大基本类型的支持
String、Date、金额,日期等常见类型的支持
java8 常见时间类的支持
支持 String 和 Number 类型的注解定义
添加
@DataFactory注解支持支持 Regex 正则表达式
变更日志
核心类讲解
DataUtil 工具类
提供线程安全的方法:
/**
* 构建结果
* @param clazz 类型
* @return 构建结果
*/
public static <T> T build(final Class<T> clazz) {
IData data = getInstance();
return (T) data.build(null, clazz);
}
/**
* 构建结果
* @param context 执行上下文
* @param clazz 类型
* @return 构建结果
*/
public static <T> T build(final IContext context, final Class<T> clazz) {
IData data = getInstance();
return (T) data.build(context, clazz);
}
快速开始
准备工作
JDK 1.8+
Maven 3.0+
如果是 idea,测试的时候 Enable Annotation Processing。
maven 引入
<dependency>
<groupId>com.github.houbb</groupId>
<artifactId>data-factory-core</artifactId>
<version>0.0.3</version>
</dependency>
演示对象
一个用于演示的普通 java 对象。
public class User {
private String name;
private int age;
private Date birthday;
private List<String> stringList;
//S/F 的枚举
private StatusEnum statusEnum;
private Map<String, String> map;
//Getter & Setter
}
使用工具类
@Test
public 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}}
内容每次都随机。便于基本的测试数据填充。
拓展阅读
自动生成 java 测试 mock 对象框架 DataFactory-01-入门使用教程的更多相关文章
- Android AIDL自动生成Java文件测试
/******************************************************************************** * Android AIDL自动生成 ...
- 8个超实用的Java测试工具和框架
Java入门 如果你才刚开始接触Java世界,那么要做的第一件事情是,安装JDK——Java Development Kit(Java开发工具包),它自带有Java Runtime Environme ...
- 使用maven根据JSON文件自动生成Java POJO类(Java Bean)源文件
根据JSON文件自动生成Java POJO类(Java Bean)源文件 本文介绍使用程序jsonschema2pojo来自动生成Java的POJO类源文件,本文主要使用maven,其他构建工具请参考 ...
- mybatis自动生成java代码
SSM框架没有DB+Record模式,写起来特别费劲,只能用下面的方法勉强凑合. 上图中,*.jar为下载的,src为新建的空白目录,.xml配置如下. <?xml version=" ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-6.Mysql逆向工程效率神器之使用IDE自动生成Java实体类
笔记 6.Mysql逆向工程效率神器之使用IDE自动生成Java实体类 简介:实战使用IDE根据Mysql自动生成java pojo实体类 1.IDEA连接数 ...
- 分享:根据webservice WSDL地址自动生成java调用代码及JAR包
分享:根据webservice WSDL地址自动生成java调用代码及JAR包使用步骤:一.安装java 并配置JAVA_HOME 及 path二.安装ANT 并配置ANT_HOME三.解压WsdlT ...
- wsdl自动生成Java代码,根据wsdl生成Java代码
wsdl自动生成Java代码,根据wsdl生成Java代码 >>>>>>>>>>>>>>>>>&g ...
- Mysql逆向工程效率神器之使用IDE自动生成Java实体类
Mysql逆向工程效率神器之使用IDE自动生成Java实体类 简介:实战使用IDE根据Mysql自动生成java pojo实体类 1.IDEA连接数据库 菜单View→Tool Windows→Dat ...
- Java测试工具和框架
个人目前只接触过JUnit以及Powermock,后续会关注更多有关测试这方面的东西 8个超实用的Java测试工具和框架_开发/数据库_IT专家网 http://database.ctocio.com ...
随机推荐
- linux btrfs文件系统管理与应用
btrfs文件系统管理与应用 1.btrfs文件系统 基本介绍 btrfs文件系统在CentOS7.x上属于技术预览版 btrfs文件系统英文名:B-tree FileSystem或者Butter ...
- SpringBoot打成jar包后,获取不到读取resources目录下文件路径的问题
问题描述: Springboot没有打成jar之前,可以成功获取读取resources目录下xxx.json文件的 路径.但是打成jar包后,接口调不通,原因是获取不到文件的路径. 原因: 在本地进行 ...
- DEBUG经历
在两年有余的学习生活中,我不仅在课堂上学到了很多东西,我也在一次次的错误中得到了宝贵的经验和教训.Bug和debug,构成了我生活中不可或缺的一部分. 我在编程中犯过的错误很多,无法一一阐述,再次说一 ...
- 20164301 Exp5 MSF基础应用
Exp5 MSF基础应用 1. 实践内容 1.1一个主动攻击实践,如ms08_067,smb_delivery(唯一) 1.2 一个针对浏览器的攻击,如ms10_046: 1.3 一个针对客户端的攻击 ...
- Comedi的学习过程
1.介绍Comedi 1.1Comedi是一个设备驱动开发的软件工具,它采用了一种3层组织模型:上层是用户层,Comedi提供了在用户控件编写程序的接口Comedilib,通过系统调用来控制硬件设备: ...
- Linux----------mysql基础
目录 一.数据库介绍 1.1 数据库的优点 1.2 数据库的基本功能 1.3数据库的类型 1.4 关系型数据的组成 1.5 关系型数据库的常用组件 1.6 SQL语句 1.7 mysql命令使用 1. ...
- 当yum安装出现Error: Package: glibc-headers .....时
环境 CentOS Linux release 7.4.1708 (Core) 当使用yum源安装时,出现以下报错 Error: Package: glibc-headers-.el7_4..x8 ...
- Css之 间距初始化
粗暴初始化: * {margin:0;padding:0;border:0px none;} 优化初始化: /*css reset code */ /**** 文字大小初始化,使1em=10px ** ...
- centos7系统优化-转载
禁用SELINUX # grep -i ^selinux /etc/selinux/config SELINUX=enforcing SELINUXTYPE=targeted 注释掉上面2行,并增加 ...
- 申请Let's Encrypt永久免费SSL证书
Let's Encrypt简介 Let's Encrypt作为一个公共且免费SSL的项目逐渐被广大用户传播和使用,是由Mozilla.Cisco.Akamai.IdenTrust.EFF等组织人员发起 ...