1 Star 0 Fork 0

houbb / eunit

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

EUnit

Easy Unit

依赖

<dependency>
    <groupId>com.github.ofofs</groupId>
    <artifactId>eunit</artifactId>
    <version>${eunit.version}</version>
</dependency>

使用

实体类:

package com.github.ofofs.eunit.test.model;

import com.github.ofofs.eunit.annotation.Rule;


/**
 * @author kangyonggan
 * @since 2018/7/21 0021
 */
public class User {

    private Long id;

    @Rule(minLength = 5, maxLength = 20)
    private String username;

    private String password;

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                '}';
    }

}

测试类:

package com.github.ofofs.eunit.test;

import com.github.ofofs.eunit.DataFactory;
import com.github.ofofs.eunit.test.model.User;

/**
 * @author kangyonggan
 * @since 2018/7/21 0021
 */
public class UserSimpleTest {

    public static void main(String[] args) {
        User user = DataFactory.instance(User.class);
        System.out.println(user);
    }

}

输出:

User{id=8462870299209684556, username='kolH4D8roMdK2Kpnq', password='Xace7HK'}

规则

在字段上加上@Rule注解,可以指定字段生成规则,目前有下列规则可用:

  • 字符串型:可以指定最小长度minLength、最大长度maxLength和正则表达式regex
  • 数字类型:可以指定最小值min、最大值max和精度precision

说明: 目前只能生成八大基本数据类型和String、Date、BigDecimal。其他引用类型暂时不会生成,后续会考虑。

想法

  1. 提供更多细腻的规则。
  2. 怎么解实体类和规则注解的耦合?
  3. 如何实现多规则?
  4. 规则之间如何依赖?
  5. 如何优雅的自定义规则?

在实现想法的基础上要考虑到用户体验,如果设计的不优雅不好用宁愿不要。

空文件

简介

Easy Unit 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/houbinbin/eunit.git
git@gitee.com:houbinbin/eunit.git
houbinbin
eunit
eunit
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891